objc2_security/generated/
cssmcspi.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4#[cfg(feature = "objc2")]
5use objc2::__framework_prelude::*;
6
7use crate::*;
8
9/// [Apple's documentation](https://developer.apple.com/documentation/security/cssm_spi_csp_funcs?language=objc)
10#[cfg(all(
11    feature = "SecAsn1Types",
12    feature = "cssmconfig",
13    feature = "cssmkrapi",
14    feature = "cssmspi",
15    feature = "cssmtype"
16))]
17#[deprecated]
18#[repr(C)]
19#[allow(unpredictable_function_pointer_comparisons)]
20#[derive(Clone, Copy, Debug, PartialEq)]
21pub struct cssm_spi_csp_funcs {
22    pub EventNotify: Option<
23        unsafe extern "C-unwind" fn(
24            CSSM_CSP_HANDLE,
25            CSSM_CONTEXT_EVENT,
26            CSSM_CC_HANDLE,
27            *const CSSM_CONTEXT,
28        ) -> CSSM_RETURN,
29    >,
30    pub QuerySize: Option<
31        unsafe extern "C-unwind" fn(
32            CSSM_CSP_HANDLE,
33            CSSM_CC_HANDLE,
34            *const CSSM_CONTEXT,
35            CSSM_BOOL,
36            uint32,
37            CSSM_QUERY_SIZE_DATA_PTR,
38        ) -> CSSM_RETURN,
39    >,
40    pub SignData: Option<
41        unsafe extern "C-unwind" fn(
42            CSSM_CSP_HANDLE,
43            CSSM_CC_HANDLE,
44            *const CSSM_CONTEXT,
45            *const SecAsn1Item,
46            uint32,
47            CSSM_ALGORITHMS,
48            CSSM_DATA_PTR,
49        ) -> CSSM_RETURN,
50    >,
51    pub SignDataInit: Option<
52        unsafe extern "C-unwind" fn(
53            CSSM_CSP_HANDLE,
54            CSSM_CC_HANDLE,
55            *const CSSM_CONTEXT,
56        ) -> CSSM_RETURN,
57    >,
58    pub SignDataUpdate: Option<
59        unsafe extern "C-unwind" fn(
60            CSSM_CSP_HANDLE,
61            CSSM_CC_HANDLE,
62            *const SecAsn1Item,
63            uint32,
64        ) -> CSSM_RETURN,
65    >,
66    pub SignDataFinal: Option<
67        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_CC_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN,
68    >,
69    pub VerifyData: Option<
70        unsafe extern "C-unwind" fn(
71            CSSM_CSP_HANDLE,
72            CSSM_CC_HANDLE,
73            *const CSSM_CONTEXT,
74            *const SecAsn1Item,
75            uint32,
76            CSSM_ALGORITHMS,
77            *const SecAsn1Item,
78        ) -> CSSM_RETURN,
79    >,
80    pub VerifyDataInit: Option<
81        unsafe extern "C-unwind" fn(
82            CSSM_CSP_HANDLE,
83            CSSM_CC_HANDLE,
84            *const CSSM_CONTEXT,
85        ) -> CSSM_RETURN,
86    >,
87    pub VerifyDataUpdate: Option<
88        unsafe extern "C-unwind" fn(
89            CSSM_CSP_HANDLE,
90            CSSM_CC_HANDLE,
91            *const SecAsn1Item,
92            uint32,
93        ) -> CSSM_RETURN,
94    >,
95    pub VerifyDataFinal: Option<
96        unsafe extern "C-unwind" fn(
97            CSSM_CSP_HANDLE,
98            CSSM_CC_HANDLE,
99            *const SecAsn1Item,
100        ) -> CSSM_RETURN,
101    >,
102    pub DigestData: Option<
103        unsafe extern "C-unwind" fn(
104            CSSM_CSP_HANDLE,
105            CSSM_CC_HANDLE,
106            *const CSSM_CONTEXT,
107            *const SecAsn1Item,
108            uint32,
109            CSSM_DATA_PTR,
110        ) -> CSSM_RETURN,
111    >,
112    pub DigestDataInit: Option<
113        unsafe extern "C-unwind" fn(
114            CSSM_CSP_HANDLE,
115            CSSM_CC_HANDLE,
116            *const CSSM_CONTEXT,
117        ) -> CSSM_RETURN,
118    >,
119    pub DigestDataUpdate: Option<
120        unsafe extern "C-unwind" fn(
121            CSSM_CSP_HANDLE,
122            CSSM_CC_HANDLE,
123            *const SecAsn1Item,
124            uint32,
125        ) -> CSSM_RETURN,
126    >,
127    pub DigestDataClone: Option<
128        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_CC_HANDLE, CSSM_CC_HANDLE) -> CSSM_RETURN,
129    >,
130    pub DigestDataFinal: Option<
131        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_CC_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN,
132    >,
133    pub GenerateMac: Option<
134        unsafe extern "C-unwind" fn(
135            CSSM_CSP_HANDLE,
136            CSSM_CC_HANDLE,
137            *const CSSM_CONTEXT,
138            *const SecAsn1Item,
139            uint32,
140            CSSM_DATA_PTR,
141        ) -> CSSM_RETURN,
142    >,
143    pub GenerateMacInit: Option<
144        unsafe extern "C-unwind" fn(
145            CSSM_CSP_HANDLE,
146            CSSM_CC_HANDLE,
147            *const CSSM_CONTEXT,
148        ) -> CSSM_RETURN,
149    >,
150    pub GenerateMacUpdate: Option<
151        unsafe extern "C-unwind" fn(
152            CSSM_CSP_HANDLE,
153            CSSM_CC_HANDLE,
154            *const SecAsn1Item,
155            uint32,
156        ) -> CSSM_RETURN,
157    >,
158    pub GenerateMacFinal: Option<
159        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_CC_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN,
160    >,
161    pub VerifyMac: Option<
162        unsafe extern "C-unwind" fn(
163            CSSM_CSP_HANDLE,
164            CSSM_CC_HANDLE,
165            *const CSSM_CONTEXT,
166            *const SecAsn1Item,
167            uint32,
168            *const SecAsn1Item,
169        ) -> CSSM_RETURN,
170    >,
171    pub VerifyMacInit: Option<
172        unsafe extern "C-unwind" fn(
173            CSSM_CSP_HANDLE,
174            CSSM_CC_HANDLE,
175            *const CSSM_CONTEXT,
176        ) -> CSSM_RETURN,
177    >,
178    pub VerifyMacUpdate: Option<
179        unsafe extern "C-unwind" fn(
180            CSSM_CSP_HANDLE,
181            CSSM_CC_HANDLE,
182            *const SecAsn1Item,
183            uint32,
184        ) -> CSSM_RETURN,
185    >,
186    pub VerifyMacFinal: Option<
187        unsafe extern "C-unwind" fn(
188            CSSM_CSP_HANDLE,
189            CSSM_CC_HANDLE,
190            *const SecAsn1Item,
191        ) -> CSSM_RETURN,
192    >,
193    pub EncryptData: Option<
194        unsafe extern "C-unwind" fn(
195            CSSM_CSP_HANDLE,
196            CSSM_CC_HANDLE,
197            *const CSSM_CONTEXT,
198            *const SecAsn1Item,
199            uint32,
200            CSSM_DATA_PTR,
201            uint32,
202            *mut CSSM_SIZE,
203            CSSM_DATA_PTR,
204            CSSM_PRIVILEGE,
205        ) -> CSSM_RETURN,
206    >,
207    pub EncryptDataInit: Option<
208        unsafe extern "C-unwind" fn(
209            CSSM_CSP_HANDLE,
210            CSSM_CC_HANDLE,
211            *const CSSM_CONTEXT,
212            CSSM_PRIVILEGE,
213        ) -> CSSM_RETURN,
214    >,
215    pub EncryptDataUpdate: Option<
216        unsafe extern "C-unwind" fn(
217            CSSM_CSP_HANDLE,
218            CSSM_CC_HANDLE,
219            *const SecAsn1Item,
220            uint32,
221            CSSM_DATA_PTR,
222            uint32,
223            *mut CSSM_SIZE,
224        ) -> CSSM_RETURN,
225    >,
226    pub EncryptDataFinal: Option<
227        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_CC_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN,
228    >,
229    pub DecryptData: Option<
230        unsafe extern "C-unwind" fn(
231            CSSM_CSP_HANDLE,
232            CSSM_CC_HANDLE,
233            *const CSSM_CONTEXT,
234            *const SecAsn1Item,
235            uint32,
236            CSSM_DATA_PTR,
237            uint32,
238            *mut CSSM_SIZE,
239            CSSM_DATA_PTR,
240            CSSM_PRIVILEGE,
241        ) -> CSSM_RETURN,
242    >,
243    pub DecryptDataInit: Option<
244        unsafe extern "C-unwind" fn(
245            CSSM_CSP_HANDLE,
246            CSSM_CC_HANDLE,
247            *const CSSM_CONTEXT,
248            CSSM_PRIVILEGE,
249        ) -> CSSM_RETURN,
250    >,
251    pub DecryptDataUpdate: Option<
252        unsafe extern "C-unwind" fn(
253            CSSM_CSP_HANDLE,
254            CSSM_CC_HANDLE,
255            *const SecAsn1Item,
256            uint32,
257            CSSM_DATA_PTR,
258            uint32,
259            *mut CSSM_SIZE,
260        ) -> CSSM_RETURN,
261    >,
262    pub DecryptDataFinal: Option<
263        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_CC_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN,
264    >,
265    pub QueryKeySizeInBits: Option<
266        unsafe extern "C-unwind" fn(
267            CSSM_CSP_HANDLE,
268            CSSM_CC_HANDLE,
269            *const CSSM_CONTEXT,
270            *const CSSM_KEY,
271            CSSM_KEY_SIZE_PTR,
272        ) -> CSSM_RETURN,
273    >,
274    pub GenerateKey: Option<
275        unsafe extern "C-unwind" fn(
276            CSSM_CSP_HANDLE,
277            CSSM_CC_HANDLE,
278            *const CSSM_CONTEXT,
279            uint32,
280            uint32,
281            *const SecAsn1Item,
282            *const CSSM_RESOURCE_CONTROL_CONTEXT,
283            CSSM_KEY_PTR,
284            CSSM_PRIVILEGE,
285        ) -> CSSM_RETURN,
286    >,
287    pub GenerateKeyPair: Option<
288        unsafe extern "C-unwind" fn(
289            CSSM_CSP_HANDLE,
290            CSSM_CC_HANDLE,
291            *const CSSM_CONTEXT,
292            uint32,
293            uint32,
294            *const SecAsn1Item,
295            CSSM_KEY_PTR,
296            uint32,
297            uint32,
298            *const SecAsn1Item,
299            *const CSSM_RESOURCE_CONTROL_CONTEXT,
300            CSSM_KEY_PTR,
301            CSSM_PRIVILEGE,
302        ) -> CSSM_RETURN,
303    >,
304    pub GenerateRandom: Option<
305        unsafe extern "C-unwind" fn(
306            CSSM_CSP_HANDLE,
307            CSSM_CC_HANDLE,
308            *const CSSM_CONTEXT,
309            CSSM_DATA_PTR,
310        ) -> CSSM_RETURN,
311    >,
312    pub GenerateAlgorithmParams: Option<
313        unsafe extern "C-unwind" fn(
314            CSSM_CSP_HANDLE,
315            CSSM_CC_HANDLE,
316            *const CSSM_CONTEXT,
317            uint32,
318            CSSM_DATA_PTR,
319            *mut uint32,
320            *mut CSSM_CONTEXT_ATTRIBUTE_PTR,
321        ) -> CSSM_RETURN,
322    >,
323    pub WrapKey: Option<
324        unsafe extern "C-unwind" fn(
325            CSSM_CSP_HANDLE,
326            CSSM_CC_HANDLE,
327            *const CSSM_CONTEXT,
328            *const CSSM_ACCESS_CREDENTIALS,
329            *const CSSM_KEY,
330            *const SecAsn1Item,
331            CSSM_WRAP_KEY_PTR,
332            CSSM_PRIVILEGE,
333        ) -> CSSM_RETURN,
334    >,
335    pub UnwrapKey: Option<
336        unsafe extern "C-unwind" fn(
337            CSSM_CSP_HANDLE,
338            CSSM_CC_HANDLE,
339            *const CSSM_CONTEXT,
340            *const CSSM_KEY,
341            *const CSSM_WRAP_KEY,
342            uint32,
343            uint32,
344            *const SecAsn1Item,
345            *const CSSM_RESOURCE_CONTROL_CONTEXT,
346            CSSM_KEY_PTR,
347            CSSM_DATA_PTR,
348            CSSM_PRIVILEGE,
349        ) -> CSSM_RETURN,
350    >,
351    pub DeriveKey: Option<
352        unsafe extern "C-unwind" fn(
353            CSSM_CSP_HANDLE,
354            CSSM_CC_HANDLE,
355            *const CSSM_CONTEXT,
356            CSSM_DATA_PTR,
357            uint32,
358            uint32,
359            *const SecAsn1Item,
360            *const CSSM_RESOURCE_CONTROL_CONTEXT,
361            CSSM_KEY_PTR,
362        ) -> CSSM_RETURN,
363    >,
364    pub FreeKey: Option<
365        unsafe extern "C-unwind" fn(
366            CSSM_CSP_HANDLE,
367            *const CSSM_ACCESS_CREDENTIALS,
368            CSSM_KEY_PTR,
369            CSSM_BOOL,
370        ) -> CSSM_RETURN,
371    >,
372    pub PassThrough: Option<
373        unsafe extern "C-unwind" fn(
374            CSSM_CSP_HANDLE,
375            CSSM_CC_HANDLE,
376            *const CSSM_CONTEXT,
377            uint32,
378            *const c_void,
379            *mut *mut c_void,
380        ) -> CSSM_RETURN,
381    >,
382    pub Login: Option<
383        unsafe extern "C-unwind" fn(
384            CSSM_CSP_HANDLE,
385            *const CSSM_ACCESS_CREDENTIALS,
386            *const SecAsn1Item,
387            *const c_void,
388        ) -> CSSM_RETURN,
389    >,
390    pub Logout: Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE) -> CSSM_RETURN>,
391    pub ChangeLoginAcl: Option<
392        unsafe extern "C-unwind" fn(
393            CSSM_CSP_HANDLE,
394            *const CSSM_ACCESS_CREDENTIALS,
395            *const CSSM_ACL_EDIT,
396        ) -> CSSM_RETURN,
397    >,
398    pub ObtainPrivateKeyFromPublicKey: Option<
399        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, *const CSSM_KEY, CSSM_KEY_PTR) -> CSSM_RETURN,
400    >,
401    pub RetrieveUniqueId:
402        Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN>,
403    pub RetrieveCounter:
404        Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_DATA_PTR) -> CSSM_RETURN>,
405    pub VerifyDevice:
406        Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, *const SecAsn1Item) -> CSSM_RETURN>,
407    pub GetTimeValue: Option<
408        unsafe extern "C-unwind" fn(
409            CSSM_CSP_HANDLE,
410            CSSM_ALGORITHMS,
411            *mut SecAsn1Item,
412        ) -> CSSM_RETURN,
413    >,
414    pub GetOperationalStatistics: Option<
415        unsafe extern "C-unwind" fn(
416            CSSM_CSP_HANDLE,
417            *mut CSSM_CSP_OPERATIONAL_STATISTICS,
418        ) -> CSSM_RETURN,
419    >,
420    pub GetLoginAcl: Option<
421        unsafe extern "C-unwind" fn(
422            CSSM_CSP_HANDLE,
423            *const CSSM_STRING,
424            *mut uint32,
425            *mut CSSM_ACL_ENTRY_INFO_PTR,
426        ) -> CSSM_RETURN,
427    >,
428    pub GetKeyAcl: Option<
429        unsafe extern "C-unwind" fn(
430            CSSM_CSP_HANDLE,
431            *const CSSM_KEY,
432            *const CSSM_STRING,
433            *mut uint32,
434            *mut CSSM_ACL_ENTRY_INFO_PTR,
435        ) -> CSSM_RETURN,
436    >,
437    pub ChangeKeyAcl: Option<
438        unsafe extern "C-unwind" fn(
439            CSSM_CSP_HANDLE,
440            *const CSSM_ACCESS_CREDENTIALS,
441            *const CSSM_ACL_EDIT,
442            *const CSSM_KEY,
443        ) -> CSSM_RETURN,
444    >,
445    pub GetKeyOwner: Option<
446        unsafe extern "C-unwind" fn(
447            CSSM_CSP_HANDLE,
448            *const CSSM_KEY,
449            CSSM_ACL_OWNER_PROTOTYPE_PTR,
450        ) -> CSSM_RETURN,
451    >,
452    pub ChangeKeyOwner: Option<
453        unsafe extern "C-unwind" fn(
454            CSSM_CSP_HANDLE,
455            *const CSSM_ACCESS_CREDENTIALS,
456            *const CSSM_KEY,
457            *const CSSM_ACL_OWNER_PROTOTYPE,
458        ) -> CSSM_RETURN,
459    >,
460    pub GetLoginOwner: Option<
461        unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE, CSSM_ACL_OWNER_PROTOTYPE_PTR) -> CSSM_RETURN,
462    >,
463    pub ChangeLoginOwner: Option<
464        unsafe extern "C-unwind" fn(
465            CSSM_CSP_HANDLE,
466            *const CSSM_ACCESS_CREDENTIALS,
467            *const CSSM_ACL_OWNER_PROTOTYPE,
468        ) -> CSSM_RETURN,
469    >,
470}
471
472#[cfg(all(
473    feature = "SecAsn1Types",
474    feature = "cssmconfig",
475    feature = "cssmkrapi",
476    feature = "cssmspi",
477    feature = "cssmtype",
478    feature = "objc2"
479))]
480unsafe impl Encode for cssm_spi_csp_funcs {
481    const ENCODING: Encoding = Encoding::Struct("cssm_spi_csp_funcs", &[
482        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CONTEXT_EVENT,CSSM_CC_HANDLE,*const CSSM_CONTEXT,) -> CSSM_RETURN>>::ENCODING,
483        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_BOOL,uint32,CSSM_QUERY_SIZE_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
484        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,CSSM_ALGORITHMS,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
485        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,) -> CSSM_RETURN>>::ENCODING,
486        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,) -> CSSM_RETURN>>::ENCODING,
487        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
488        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,CSSM_ALGORITHMS,*const SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
489        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,) -> CSSM_RETURN>>::ENCODING,
490        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,) -> CSSM_RETURN>>::ENCODING,
491        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
492        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
493        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,) -> CSSM_RETURN>>::ENCODING,
494        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,) -> CSSM_RETURN>>::ENCODING,
495        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,CSSM_CC_HANDLE,) -> CSSM_RETURN>>::ENCODING,
496        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
497        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
498        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,) -> CSSM_RETURN>>::ENCODING,
499        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,) -> CSSM_RETURN>>::ENCODING,
500        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
501        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,*const SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
502        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,) -> CSSM_RETURN>>::ENCODING,
503        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,) -> CSSM_RETURN>>::ENCODING,
504        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
505        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,CSSM_DATA_PTR,uint32,*mut CSSM_SIZE,CSSM_DATA_PTR,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
506        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
507        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,CSSM_DATA_PTR,uint32,*mut CSSM_SIZE,) -> CSSM_RETURN>>::ENCODING,
508        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
509        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,uint32,CSSM_DATA_PTR,uint32,*mut CSSM_SIZE,CSSM_DATA_PTR,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
510        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
511        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const SecAsn1Item,uint32,CSSM_DATA_PTR,uint32,*mut CSSM_SIZE,) -> CSSM_RETURN>>::ENCODING,
512        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
513        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const CSSM_KEY,CSSM_KEY_SIZE_PTR,) -> CSSM_RETURN>>::ENCODING,
514        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,uint32,uint32,*const SecAsn1Item,*const CSSM_RESOURCE_CONTROL_CONTEXT,CSSM_KEY_PTR,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
515        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,uint32,uint32,*const SecAsn1Item,CSSM_KEY_PTR,uint32,uint32,*const SecAsn1Item,*const CSSM_RESOURCE_CONTROL_CONTEXT,CSSM_KEY_PTR,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
516        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
517        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,uint32,CSSM_DATA_PTR,*mut uint32,*mut CSSM_CONTEXT_ATTRIBUTE_PTR,) -> CSSM_RETURN>>::ENCODING,
518        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const CSSM_ACCESS_CREDENTIALS,*const CSSM_KEY,*const SecAsn1Item,CSSM_WRAP_KEY_PTR,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
519        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const CSSM_KEY,*const CSSM_WRAP_KEY,uint32,uint32,*const SecAsn1Item,*const CSSM_RESOURCE_CONTROL_CONTEXT,CSSM_KEY_PTR,CSSM_DATA_PTR,CSSM_PRIVILEGE,) -> CSSM_RETURN>>::ENCODING,
520        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_DATA_PTR,uint32,uint32,*const SecAsn1Item,*const CSSM_RESOURCE_CONTROL_CONTEXT,CSSM_KEY_PTR,) -> CSSM_RETURN>>::ENCODING,
521        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_ACCESS_CREDENTIALS,CSSM_KEY_PTR,CSSM_BOOL,) -> CSSM_RETURN>>::ENCODING,
522        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,uint32,*const c_void,*mut *mut c_void,) -> CSSM_RETURN>>::ENCODING,
523        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_ACCESS_CREDENTIALS,*const SecAsn1Item,*const c_void,) -> CSSM_RETURN>>::ENCODING,
524        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,) -> CSSM_RETURN>>::ENCODING,
525        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_ACCESS_CREDENTIALS,*const CSSM_ACL_EDIT,) -> CSSM_RETURN>>::ENCODING,
526        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_KEY,CSSM_KEY_PTR,) -> CSSM_RETURN>>::ENCODING,
527        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
528        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
529        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
530        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_ALGORITHMS,*mut SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
531        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*mut CSSM_CSP_OPERATIONAL_STATISTICS,) -> CSSM_RETURN>>::ENCODING,
532        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_STRING,*mut uint32,*mut CSSM_ACL_ENTRY_INFO_PTR,) -> CSSM_RETURN>>::ENCODING,
533        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_KEY,*const CSSM_STRING,*mut uint32,*mut CSSM_ACL_ENTRY_INFO_PTR,) -> CSSM_RETURN>>::ENCODING,
534        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_ACCESS_CREDENTIALS,*const CSSM_ACL_EDIT,*const CSSM_KEY,) -> CSSM_RETURN>>::ENCODING,
535        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_KEY,CSSM_ACL_OWNER_PROTOTYPE_PTR,) -> CSSM_RETURN>>::ENCODING,
536        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_ACCESS_CREDENTIALS,*const CSSM_KEY,*const CSSM_ACL_OWNER_PROTOTYPE,) -> CSSM_RETURN>>::ENCODING,
537        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,CSSM_ACL_OWNER_PROTOTYPE_PTR,) -> CSSM_RETURN>>::ENCODING,
538        <Option<unsafe extern "C-unwind" fn(CSSM_CSP_HANDLE,*const CSSM_ACCESS_CREDENTIALS,*const CSSM_ACL_OWNER_PROTOTYPE,) -> CSSM_RETURN>>::ENCODING,
539    ]);
540}
541
542#[cfg(all(
543    feature = "SecAsn1Types",
544    feature = "cssmconfig",
545    feature = "cssmkrapi",
546    feature = "cssmspi",
547    feature = "cssmtype",
548    feature = "objc2"
549))]
550unsafe impl RefEncode for cssm_spi_csp_funcs {
551    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
552}
553
554/// [Apple's documentation](https://developer.apple.com/documentation/security/cssm_spi_csp_funcs?language=objc)
555#[deprecated]
556#[cfg(all(
557    feature = "SecAsn1Types",
558    feature = "cssmconfig",
559    feature = "cssmkrapi",
560    feature = "cssmspi",
561    feature = "cssmtype"
562))]
563pub type CSSM_SPI_CSP_FUNCS = cssm_spi_csp_funcs;
564
565/// [Apple's documentation](https://developer.apple.com/documentation/security/cssm_spi_csp_funcs_ptr?language=objc)
566#[deprecated]
567#[cfg(all(
568    feature = "SecAsn1Types",
569    feature = "cssmconfig",
570    feature = "cssmkrapi",
571    feature = "cssmspi",
572    feature = "cssmtype"
573))]
574pub type CSSM_SPI_CSP_FUNCS_PTR = *mut cssm_spi_csp_funcs;