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