1use core::ffi::*;
4#[cfg(feature = "objc2")]
5use objc2::__framework_prelude::*;
6
7use crate::*;
8
9#[cfg(all(feature = "SecAsn1Types", feature = "cssmconfig", feature = "cssmtype"))]
11#[deprecated]
12#[repr(C)]
13#[allow(unpredictable_function_pointer_comparisons)]
14#[derive(Clone, Copy, Debug, PartialEq)]
15pub struct cssm_spi_tp_funcs {
16 pub SubmitCredRequest: Option<
17 unsafe extern "C-unwind" fn(
18 CSSM_TP_HANDLE,
19 *const CSSM_TP_AUTHORITY_ID,
20 CSSM_TP_AUTHORITY_REQUEST_TYPE,
21 *const CSSM_TP_REQUEST_SET,
22 *const CSSM_TP_CALLERAUTH_CONTEXT,
23 *mut sint32,
24 CSSM_DATA_PTR,
25 ) -> CSSM_RETURN,
26 >,
27 pub RetrieveCredResult: Option<
28 unsafe extern "C-unwind" fn(
29 CSSM_TP_HANDLE,
30 *const SecAsn1Item,
31 *const CSSM_TP_CALLERAUTH_CONTEXT,
32 *mut sint32,
33 *mut CSSM_BOOL,
34 *mut CSSM_TP_RESULT_SET_PTR,
35 ) -> CSSM_RETURN,
36 >,
37 pub ConfirmCredResult: Option<
38 unsafe extern "C-unwind" fn(
39 CSSM_TP_HANDLE,
40 *const SecAsn1Item,
41 *const CSSM_TP_CALLERAUTH_CONTEXT,
42 *const CSSM_TP_CONFIRM_RESPONSE,
43 *const CSSM_TP_AUTHORITY_ID,
44 ) -> CSSM_RETURN,
45 >,
46 pub ReceiveConfirmation: Option<
47 unsafe extern "C-unwind" fn(
48 CSSM_TP_HANDLE,
49 *const SecAsn1Item,
50 *mut CSSM_TP_CONFIRM_RESPONSE_PTR,
51 *mut sint32,
52 ) -> CSSM_RETURN,
53 >,
54 pub CertReclaimKey: Option<
55 unsafe extern "C-unwind" fn(
56 CSSM_TP_HANDLE,
57 *const CSSM_CERTGROUP,
58 uint32,
59 CSSM_LONG_HANDLE,
60 CSSM_CSP_HANDLE,
61 *const CSSM_RESOURCE_CONTROL_CONTEXT,
62 ) -> CSSM_RETURN,
63 >,
64 pub CertReclaimAbort:
65 Option<unsafe extern "C-unwind" fn(CSSM_TP_HANDLE, CSSM_LONG_HANDLE) -> CSSM_RETURN>,
66 pub FormRequest: Option<
67 unsafe extern "C-unwind" fn(
68 CSSM_TP_HANDLE,
69 *const CSSM_TP_AUTHORITY_ID,
70 CSSM_TP_FORM_TYPE,
71 CSSM_DATA_PTR,
72 ) -> CSSM_RETURN,
73 >,
74 pub FormSubmit: Option<
75 unsafe extern "C-unwind" fn(
76 CSSM_TP_HANDLE,
77 CSSM_TP_FORM_TYPE,
78 *const SecAsn1Item,
79 *const CSSM_TP_AUTHORITY_ID,
80 *const CSSM_TP_AUTHORITY_ID,
81 CSSM_ACCESS_CREDENTIALS_PTR,
82 ) -> CSSM_RETURN,
83 >,
84 pub CertGroupVerify: Option<
85 unsafe extern "C-unwind" fn(
86 CSSM_TP_HANDLE,
87 CSSM_CL_HANDLE,
88 CSSM_CSP_HANDLE,
89 *const CSSM_CERTGROUP,
90 *const CSSM_TP_VERIFY_CONTEXT,
91 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
92 ) -> CSSM_RETURN,
93 >,
94 pub CertCreateTemplate: Option<
95 unsafe extern "C-unwind" fn(
96 CSSM_TP_HANDLE,
97 CSSM_CL_HANDLE,
98 uint32,
99 *const CSSM_FIELD,
100 CSSM_DATA_PTR,
101 ) -> CSSM_RETURN,
102 >,
103 pub CertGetAllTemplateFields: Option<
104 unsafe extern "C-unwind" fn(
105 CSSM_TP_HANDLE,
106 CSSM_CL_HANDLE,
107 *const SecAsn1Item,
108 *mut uint32,
109 *mut CSSM_FIELD_PTR,
110 ) -> CSSM_RETURN,
111 >,
112 pub CertSign: Option<
113 unsafe extern "C-unwind" fn(
114 CSSM_TP_HANDLE,
115 CSSM_CL_HANDLE,
116 CSSM_CC_HANDLE,
117 *const SecAsn1Item,
118 *const CSSM_CERTGROUP,
119 *const CSSM_TP_VERIFY_CONTEXT,
120 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
121 CSSM_DATA_PTR,
122 ) -> CSSM_RETURN,
123 >,
124 pub CrlVerify: Option<
125 unsafe extern "C-unwind" fn(
126 CSSM_TP_HANDLE,
127 CSSM_CL_HANDLE,
128 CSSM_CSP_HANDLE,
129 *const CSSM_ENCODED_CRL,
130 *const CSSM_CERTGROUP,
131 *const CSSM_TP_VERIFY_CONTEXT,
132 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
133 ) -> CSSM_RETURN,
134 >,
135 pub CrlCreateTemplate: Option<
136 unsafe extern "C-unwind" fn(
137 CSSM_TP_HANDLE,
138 CSSM_CL_HANDLE,
139 uint32,
140 *const CSSM_FIELD,
141 CSSM_DATA_PTR,
142 ) -> CSSM_RETURN,
143 >,
144 pub CertRevoke: Option<
145 unsafe extern "C-unwind" fn(
146 CSSM_TP_HANDLE,
147 CSSM_CL_HANDLE,
148 CSSM_CSP_HANDLE,
149 *const SecAsn1Item,
150 *const CSSM_CERTGROUP,
151 *const CSSM_CERTGROUP,
152 *const CSSM_TP_VERIFY_CONTEXT,
153 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
154 CSSM_TP_CERTCHANGE_REASON,
155 CSSM_DATA_PTR,
156 ) -> CSSM_RETURN,
157 >,
158 pub CertRemoveFromCrlTemplate: Option<
159 unsafe extern "C-unwind" fn(
160 CSSM_TP_HANDLE,
161 CSSM_CL_HANDLE,
162 CSSM_CSP_HANDLE,
163 *const SecAsn1Item,
164 *const CSSM_CERTGROUP,
165 *const CSSM_CERTGROUP,
166 *const CSSM_TP_VERIFY_CONTEXT,
167 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
168 CSSM_DATA_PTR,
169 ) -> CSSM_RETURN,
170 >,
171 pub CrlSign: Option<
172 unsafe extern "C-unwind" fn(
173 CSSM_TP_HANDLE,
174 CSSM_CL_HANDLE,
175 CSSM_CC_HANDLE,
176 *const CSSM_ENCODED_CRL,
177 *const CSSM_CERTGROUP,
178 *const CSSM_TP_VERIFY_CONTEXT,
179 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
180 CSSM_DATA_PTR,
181 ) -> CSSM_RETURN,
182 >,
183 pub ApplyCrlToDb: Option<
184 unsafe extern "C-unwind" fn(
185 CSSM_TP_HANDLE,
186 CSSM_CL_HANDLE,
187 CSSM_CSP_HANDLE,
188 *const CSSM_ENCODED_CRL,
189 *const CSSM_CERTGROUP,
190 *const CSSM_TP_VERIFY_CONTEXT,
191 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
192 ) -> CSSM_RETURN,
193 >,
194 pub CertGroupConstruct: Option<
195 unsafe extern "C-unwind" fn(
196 CSSM_TP_HANDLE,
197 CSSM_CL_HANDLE,
198 CSSM_CSP_HANDLE,
199 *const CSSM_DL_DB_LIST,
200 *const c_void,
201 *const CSSM_CERTGROUP,
202 *mut CSSM_CERTGROUP_PTR,
203 ) -> CSSM_RETURN,
204 >,
205 pub CertGroupPrune: Option<
206 unsafe extern "C-unwind" fn(
207 CSSM_TP_HANDLE,
208 CSSM_CL_HANDLE,
209 *const CSSM_DL_DB_LIST,
210 *const CSSM_CERTGROUP,
211 *mut CSSM_CERTGROUP_PTR,
212 ) -> CSSM_RETURN,
213 >,
214 pub CertGroupToTupleGroup: Option<
215 unsafe extern "C-unwind" fn(
216 CSSM_TP_HANDLE,
217 CSSM_CL_HANDLE,
218 *const CSSM_CERTGROUP,
219 *mut CSSM_TUPLEGROUP_PTR,
220 ) -> CSSM_RETURN,
221 >,
222 pub TupleGroupToCertGroup: Option<
223 unsafe extern "C-unwind" fn(
224 CSSM_TP_HANDLE,
225 CSSM_CL_HANDLE,
226 *const CSSM_TUPLEGROUP,
227 *mut CSSM_CERTGROUP_PTR,
228 ) -> CSSM_RETURN,
229 >,
230 pub PassThrough: Option<
231 unsafe extern "C-unwind" fn(
232 CSSM_TP_HANDLE,
233 CSSM_CL_HANDLE,
234 CSSM_CC_HANDLE,
235 *const CSSM_DL_DB_LIST,
236 uint32,
237 *const c_void,
238 *mut *mut c_void,
239 ) -> CSSM_RETURN,
240 >,
241}
242
243#[cfg(all(
244 feature = "SecAsn1Types",
245 feature = "cssmconfig",
246 feature = "cssmtype",
247 feature = "objc2"
248))]
249unsafe impl Encode for cssm_spi_tp_funcs {
250 const ENCODING: Encoding =
251 Encoding::Struct(
252 "cssm_spi_tp_funcs",
253 &[
254 <Option<
255 unsafe extern "C-unwind" fn(
256 CSSM_TP_HANDLE,
257 *const CSSM_TP_AUTHORITY_ID,
258 CSSM_TP_AUTHORITY_REQUEST_TYPE,
259 *const CSSM_TP_REQUEST_SET,
260 *const CSSM_TP_CALLERAUTH_CONTEXT,
261 *mut sint32,
262 CSSM_DATA_PTR,
263 ) -> CSSM_RETURN,
264 >>::ENCODING,
265 <Option<
266 unsafe extern "C-unwind" fn(
267 CSSM_TP_HANDLE,
268 *const SecAsn1Item,
269 *const CSSM_TP_CALLERAUTH_CONTEXT,
270 *mut sint32,
271 *mut CSSM_BOOL,
272 *mut CSSM_TP_RESULT_SET_PTR,
273 ) -> CSSM_RETURN,
274 >>::ENCODING,
275 <Option<
276 unsafe extern "C-unwind" fn(
277 CSSM_TP_HANDLE,
278 *const SecAsn1Item,
279 *const CSSM_TP_CALLERAUTH_CONTEXT,
280 *const CSSM_TP_CONFIRM_RESPONSE,
281 *const CSSM_TP_AUTHORITY_ID,
282 ) -> CSSM_RETURN,
283 >>::ENCODING,
284 <Option<
285 unsafe extern "C-unwind" fn(
286 CSSM_TP_HANDLE,
287 *const SecAsn1Item,
288 *mut CSSM_TP_CONFIRM_RESPONSE_PTR,
289 *mut sint32,
290 ) -> CSSM_RETURN,
291 >>::ENCODING,
292 <Option<
293 unsafe extern "C-unwind" fn(
294 CSSM_TP_HANDLE,
295 *const CSSM_CERTGROUP,
296 uint32,
297 CSSM_LONG_HANDLE,
298 CSSM_CSP_HANDLE,
299 *const CSSM_RESOURCE_CONTROL_CONTEXT,
300 ) -> CSSM_RETURN,
301 >>::ENCODING,
302 <Option<
303 unsafe extern "C-unwind" fn(CSSM_TP_HANDLE, CSSM_LONG_HANDLE) -> CSSM_RETURN,
304 >>::ENCODING,
305 <Option<
306 unsafe extern "C-unwind" fn(
307 CSSM_TP_HANDLE,
308 *const CSSM_TP_AUTHORITY_ID,
309 CSSM_TP_FORM_TYPE,
310 CSSM_DATA_PTR,
311 ) -> CSSM_RETURN,
312 >>::ENCODING,
313 <Option<
314 unsafe extern "C-unwind" fn(
315 CSSM_TP_HANDLE,
316 CSSM_TP_FORM_TYPE,
317 *const SecAsn1Item,
318 *const CSSM_TP_AUTHORITY_ID,
319 *const CSSM_TP_AUTHORITY_ID,
320 CSSM_ACCESS_CREDENTIALS_PTR,
321 ) -> CSSM_RETURN,
322 >>::ENCODING,
323 <Option<
324 unsafe extern "C-unwind" fn(
325 CSSM_TP_HANDLE,
326 CSSM_CL_HANDLE,
327 CSSM_CSP_HANDLE,
328 *const CSSM_CERTGROUP,
329 *const CSSM_TP_VERIFY_CONTEXT,
330 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
331 ) -> CSSM_RETURN,
332 >>::ENCODING,
333 <Option<
334 unsafe extern "C-unwind" fn(
335 CSSM_TP_HANDLE,
336 CSSM_CL_HANDLE,
337 uint32,
338 *const CSSM_FIELD,
339 CSSM_DATA_PTR,
340 ) -> CSSM_RETURN,
341 >>::ENCODING,
342 <Option<
343 unsafe extern "C-unwind" fn(
344 CSSM_TP_HANDLE,
345 CSSM_CL_HANDLE,
346 *const SecAsn1Item,
347 *mut uint32,
348 *mut CSSM_FIELD_PTR,
349 ) -> CSSM_RETURN,
350 >>::ENCODING,
351 <Option<
352 unsafe extern "C-unwind" fn(
353 CSSM_TP_HANDLE,
354 CSSM_CL_HANDLE,
355 CSSM_CC_HANDLE,
356 *const SecAsn1Item,
357 *const CSSM_CERTGROUP,
358 *const CSSM_TP_VERIFY_CONTEXT,
359 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
360 CSSM_DATA_PTR,
361 ) -> CSSM_RETURN,
362 >>::ENCODING,
363 <Option<
364 unsafe extern "C-unwind" fn(
365 CSSM_TP_HANDLE,
366 CSSM_CL_HANDLE,
367 CSSM_CSP_HANDLE,
368 *const CSSM_ENCODED_CRL,
369 *const CSSM_CERTGROUP,
370 *const CSSM_TP_VERIFY_CONTEXT,
371 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
372 ) -> CSSM_RETURN,
373 >>::ENCODING,
374 <Option<
375 unsafe extern "C-unwind" fn(
376 CSSM_TP_HANDLE,
377 CSSM_CL_HANDLE,
378 uint32,
379 *const CSSM_FIELD,
380 CSSM_DATA_PTR,
381 ) -> CSSM_RETURN,
382 >>::ENCODING,
383 <Option<
384 unsafe extern "C-unwind" fn(
385 CSSM_TP_HANDLE,
386 CSSM_CL_HANDLE,
387 CSSM_CSP_HANDLE,
388 *const SecAsn1Item,
389 *const CSSM_CERTGROUP,
390 *const CSSM_CERTGROUP,
391 *const CSSM_TP_VERIFY_CONTEXT,
392 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
393 CSSM_TP_CERTCHANGE_REASON,
394 CSSM_DATA_PTR,
395 ) -> CSSM_RETURN,
396 >>::ENCODING,
397 <Option<
398 unsafe extern "C-unwind" fn(
399 CSSM_TP_HANDLE,
400 CSSM_CL_HANDLE,
401 CSSM_CSP_HANDLE,
402 *const SecAsn1Item,
403 *const CSSM_CERTGROUP,
404 *const CSSM_CERTGROUP,
405 *const CSSM_TP_VERIFY_CONTEXT,
406 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
407 CSSM_DATA_PTR,
408 ) -> CSSM_RETURN,
409 >>::ENCODING,
410 <Option<
411 unsafe extern "C-unwind" fn(
412 CSSM_TP_HANDLE,
413 CSSM_CL_HANDLE,
414 CSSM_CC_HANDLE,
415 *const CSSM_ENCODED_CRL,
416 *const CSSM_CERTGROUP,
417 *const CSSM_TP_VERIFY_CONTEXT,
418 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
419 CSSM_DATA_PTR,
420 ) -> CSSM_RETURN,
421 >>::ENCODING,
422 <Option<
423 unsafe extern "C-unwind" fn(
424 CSSM_TP_HANDLE,
425 CSSM_CL_HANDLE,
426 CSSM_CSP_HANDLE,
427 *const CSSM_ENCODED_CRL,
428 *const CSSM_CERTGROUP,
429 *const CSSM_TP_VERIFY_CONTEXT,
430 CSSM_TP_VERIFY_CONTEXT_RESULT_PTR,
431 ) -> CSSM_RETURN,
432 >>::ENCODING,
433 <Option<
434 unsafe extern "C-unwind" fn(
435 CSSM_TP_HANDLE,
436 CSSM_CL_HANDLE,
437 CSSM_CSP_HANDLE,
438 *const CSSM_DL_DB_LIST,
439 *const c_void,
440 *const CSSM_CERTGROUP,
441 *mut CSSM_CERTGROUP_PTR,
442 ) -> CSSM_RETURN,
443 >>::ENCODING,
444 <Option<
445 unsafe extern "C-unwind" fn(
446 CSSM_TP_HANDLE,
447 CSSM_CL_HANDLE,
448 *const CSSM_DL_DB_LIST,
449 *const CSSM_CERTGROUP,
450 *mut CSSM_CERTGROUP_PTR,
451 ) -> CSSM_RETURN,
452 >>::ENCODING,
453 <Option<
454 unsafe extern "C-unwind" fn(
455 CSSM_TP_HANDLE,
456 CSSM_CL_HANDLE,
457 *const CSSM_CERTGROUP,
458 *mut CSSM_TUPLEGROUP_PTR,
459 ) -> CSSM_RETURN,
460 >>::ENCODING,
461 <Option<
462 unsafe extern "C-unwind" fn(
463 CSSM_TP_HANDLE,
464 CSSM_CL_HANDLE,
465 *const CSSM_TUPLEGROUP,
466 *mut CSSM_CERTGROUP_PTR,
467 ) -> CSSM_RETURN,
468 >>::ENCODING,
469 <Option<
470 unsafe extern "C-unwind" fn(
471 CSSM_TP_HANDLE,
472 CSSM_CL_HANDLE,
473 CSSM_CC_HANDLE,
474 *const CSSM_DL_DB_LIST,
475 uint32,
476 *const c_void,
477 *mut *mut c_void,
478 ) -> CSSM_RETURN,
479 >>::ENCODING,
480 ],
481 );
482}
483
484#[cfg(all(
485 feature = "SecAsn1Types",
486 feature = "cssmconfig",
487 feature = "cssmtype",
488 feature = "objc2"
489))]
490unsafe impl RefEncode for cssm_spi_tp_funcs {
491 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
492}
493
494#[deprecated]
496#[cfg(all(feature = "SecAsn1Types", feature = "cssmconfig", feature = "cssmtype"))]
497pub type CSSM_SPI_TP_FUNCS = cssm_spi_tp_funcs;
498
499#[deprecated]
501#[cfg(all(feature = "SecAsn1Types", feature = "cssmconfig", feature = "cssmtype"))]
502pub type CSSM_SPI_TP_FUNCS_PTR = *mut cssm_spi_tp_funcs;