Mercurial > projects > dstep
comparison dstep/security/cssmtype.d @ 11:07194b026fa4
Added bindings to a couple of frameworks, new license + some other things
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sat, 01 Aug 2009 15:03:28 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
10:27e00625790b | 11:07194b026fa4 |
---|---|
1 /** | |
2 * Copyright: Copyright (c) 2009 Jacob Carlborg. | |
3 * Authors: Jacob Carlborg | |
4 * Version: Initial created: Jul 22, 2009 | |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | |
6 */ | |
7 module dstep.security.cssmtype; | |
8 | |
9 import dstep.security.cssmconfig; | |
10 | |
11 alias int CSSM_HANDLE; | |
12 alias CSSM_INTPTR* CSSM_HANDLE_PTR; | |
13 alias ulong CSSM_LONG_HANDLE; | |
14 alias uint64* CSSM_LONG_HANDLE_PTR; | |
15 alias int CSSM_MODULE_HANDLE; | |
16 alias CSSM_HANDLE* CSSM_MODULE_HANDLE_PTR; | |
17 alias ulong CSSM_CC_HANDLE; | |
18 alias int CSSM_CSP_HANDLE; | |
19 alias int CSSM_TP_HANDLE; | |
20 alias int CSSM_AC_HANDLE; | |
21 alias int CSSM_CL_HANDLE; | |
22 alias int CSSM_DL_HANDLE; | |
23 alias int CSSM_DB_HANDLE; | |
24 alias int CSSM_BOOL; | |
25 alias int CSSM_RETURN; | |
26 alias uint CSSM_BITMASK; | |
27 alias uint CSSM_KEY_HIERARCHY; | |
28 alias uint CSSM_PVC_MODE; | |
29 alias uint CSSM_PRIVILEGE_SCOPE; | |
30 alias uint CSSM_SERVICE_MASK; | |
31 alias uint CSSM_SERVICE_TYPE; | |
32 alias uint CSSM_MODULE_EVENT; | |
33 alias uint32* CSSM_MODULE_EVENT_PTR; | |
34 alias uint CSSM_ATTACH_FLAGS; | |
35 alias ulong CSSM_PRIVILEGE; | |
36 alias ulong CSSM_USEE_TAG; | |
37 alias uint CSSM_NET_ADDRESS_TYPE; | |
38 alias uint CSSM_NET_PROTOCOL; | |
39 alias int CSSM_WORDID_TYPE; | |
40 alias uint CSSM_LIST_ELEMENT_TYPE; | |
41 alias uint32* CSSM_LIST_ELEMENT_TYPE_PTR; | |
42 alias uint CSSM_LIST_TYPE; | |
43 alias uint32* CSSM_LIST_TYPE_PTR; | |
44 alias CSSM_LIST_ELEMENT* CSSM_LIST_ELEMENT_PTR; | |
45 alias int CSSM_SAMPLE_TYPE; | |
46 alias CSSM_MEMORY_FUNCS CSSM_API_MEMORY_FUNCS; | |
47 alias CSSM_API_MEMORY_FUNCS* CSSM_API_MEMORY_FUNCS_PTR; | |
48 alias uint CSSM_CERT_TYPE; | |
49 alias uint32* CSSM_CERT_TYPE_PTR; | |
50 alias uint CSSM_CERT_ENCODING; | |
51 alias uint32* CSSM_CERT_ENCODING_PTR; | |
52 alias uint CSSM_CERT_PARSE_FORMAT; | |
53 alias uint32* CSSM_CERT_PARSE_FORMAT_PTR; | |
54 alias uint CSSM_CERTGROUP_TYPE; | |
55 alias uint32* CSSM_CERTGROUP_TYPE_PTR; | |
56 alias int CSSM_ACL_SUBJECT_TYPE; | |
57 alias int CSSM_ACL_AUTHORIZATION_TAG; | |
58 alias int CSSM_ACL_HANDLE; | |
59 alias uint CSSM_ACL_EDIT_MODE; | |
60 alias CSSM_PROC_ADDR* CSSM_PROC_ADDR_PTR; | |
61 alias uint CSSM_HEADERVERSION; | |
62 alias uint CSSM_KEYBLOB_TYPE; | |
63 alias uint CSSM_KEYBLOB_FORMAT; | |
64 alias uint CSSM_KEYCLASS; | |
65 alias uint CSSM_KEYATTR_FLAGS; | |
66 alias uint CSSM_KEYUSE; | |
67 alias uint CSSM_ALGORITHMS; | |
68 alias uint CSSM_ENCRYPT_MODE; | |
69 alias CSSM_KEY CSSM_WRAP_KEY; | |
70 alias CSSM_KEY* CSSM_WRAP_KEY_PTR; | |
71 alias uint CSSM_CSPTYPE; | |
72 alias uint CSSM_CONTEXT_TYPE; | |
73 alias uint CSSM_ATTRIBUTE_TYPE; | |
74 alias uint CSSM_PADDING; | |
75 alias uint CSSM_KEY_TYPE; | |
76 alias uint CSSM_SC_FLAGS; | |
77 alias uint CSSM_CSP_READER_FLAGS; | |
78 alias uint CSSM_CSP_FLAGS; | |
79 alias uint CSSM_PKCS_OAEP_MGF; | |
80 alias uint CSSM_PKCS_OAEP_PSOURCE; | |
81 alias uint CSSM_PKCS5_PBKDF2_PRF; | |
82 alias uint CSSM_TP_AUTHORITY_REQUEST_TYPE; | |
83 alias uint32* CSSM_TP_AUTHORITY_REQUEST_TYPE_PTR; | |
84 alias CSSM_DATA CSSM_OID; | |
85 alias CSSM_DATA* CSSM_OID_PTR; | |
86 alias uint CSSM_TP_SERVICES; | |
87 alias uint CSSM_TP_ACTION; | |
88 alias uint CSSM_TP_STOP_ON; | |
89 alias char* CSSM_TIMESTRING; | |
90 alias uint CSSM_CRL_PARSE_FORMAT; | |
91 alias uint32* CSSM_CRL_PARSE_FORMAT_PTR; | |
92 alias uint CSSM_CRL_TYPE; | |
93 alias uint32* CSSM_CRL_TYPE_PTR; | |
94 alias uint CSSM_CRL_ENCODING; | |
95 alias uint32* CSSM_CRL_ENCODING_PTR; | |
96 alias uint CSSM_CRLGROUP_TYPE; | |
97 alias uint32* CSSM_CRLGROUP_TYPE_PTR; | |
98 alias uint CSSM_EVIDENCE_FORM; | |
99 alias uint CSSM_TP_CONFIRM_STATUS; | |
100 alias uint32* CSSM_TP_CONFIRM_STATUS_PTR; | |
101 alias uint CSSM_TP_CERTISSUE_STATUS; | |
102 alias uint CSSM_TP_CERTCHANGE_ACTION; | |
103 alias uint CSSM_TP_CERTCHANGE_REASON; | |
104 alias uint CSSM_TP_CERTCHANGE_STATUS; | |
105 alias uint CSSM_TP_CERTVERIFY_STATUS; | |
106 alias uint CSSM_TP_CERTNOTARIZE_STATUS; | |
107 alias uint CSSM_TP_CERTRECLAIM_STATUS; | |
108 alias uint CSSM_TP_CRLISSUE_STATUS; | |
109 alias uint CSSM_TP_FORM_TYPE; | |
110 alias uint CSSM_CL_TEMPLATE_TYPE; | |
111 alias uint CSSM_CERT_BUNDLE_TYPE; | |
112 alias uint CSSM_CERT_BUNDLE_ENCODING; | |
113 alias uint CSSM_DB_ATTRIBUTE_NAME_FORMAT; | |
114 alias uint32* CSSM_DB_ATTRIBUTE_NAME_FORMAT_PTR; | |
115 alias uint CSSM_DB_ATTRIBUTE_FORMAT; | |
116 alias uint32* CSSM_DB_ATTRIBUTE_FORMAT_PTR; | |
117 alias uint CSSM_DB_RECORDTYPE; | |
118 alias uint CSSM_DB_INDEX_TYPE; | |
119 alias uint CSSM_DB_INDEXED_DATA_LOCATION; | |
120 alias uint CSSM_DB_ACCESS_TYPE; | |
121 alias uint32* CSSM_DB_ACCESS_TYPE_PTR; | |
122 alias uint CSSM_DB_MODIFY_MODE; | |
123 alias uint CSSM_DB_OPERATOR; | |
124 alias uint32* CSSM_DB_OPERATOR_PTR; | |
125 alias uint CSSM_DB_CONJUNCTIVE; | |
126 alias uint32* CSSM_DB_CONJUNCTIVE_PTR; | |
127 alias uint CSSM_QUERY_FLAGS; | |
128 alias uint CSSM_DLTYPE; | |
129 alias uint32* CSSM_DLTYPE_PTR; | |
130 alias void* CSSM_DL_CUSTOM_ATTRIBUTES; | |
131 alias void* CSSM_DL_LDAP_ATTRIBUTES; | |
132 alias void* CSSM_DL_ODBC_ATTRIBUTES; | |
133 alias void* CSSM_DL_FFS_ATTRIBUTES; | |
134 alias uint CSSM_DB_RETRIEVAL_MODES; | |
135 alias CSSM_LIST* CSSM_LIST_PTR; | |
136 alias CSSM_DATA* CSSM_DATA_PTR; | |
137 alias CSSM_SAMPLEGROUP* CSSM_SAMPLEGROUP_PTR; | |
138 alias CSSM_TUPLE* CSSM_TUPLE_PTR; | |
139 alias CSSM_CERTGROUP* CSSM_CERTGROUP_PTR; | |
140 alias CSSM_ENCODED_CERT* CSSM_ENCODED_CERT_PTR; | |
141 alias CSSM_PARSED_CERT* CSSM_PARSED_CERT_PTR; | |
142 alias CSSM_CERT_PAIR* CSSM_CERT_PAIR_PTR; | |
143 alias CSSM_ACCESS_CREDENTIALS* CSSM_ACCESS_CREDENTIALS_PTR; | |
144 alias CSSM_NET_ADDRESS* CSSM_NET_ADDRESS_PTR; | |
145 alias CSSM_CRLGROUP* CSSM_CRLGROUP_PTR; | |
146 alias CSSM_ENCODED_CRL* CSSM_ENCODED_CRL_PTR; | |
147 alias CSSM_PARSED_CRL* CSSM_PARSED_CRL_PTR; | |
148 alias CSSM_CRL_PAIR* CSSM_CRL_PAIR_PTR; | |
149 alias CSSM_FIELD* CSSM_FIELD_PTR; | |
150 alias CSSM_TP_CALLERAUTH_CONTEXT* CSSM_TP_CALLERAUTH_CONTEXT_PTR; | |
151 alias CSSM_EVIDENCE* CSSM_EVIDENCE_PTR; | |
152 alias CSSM_TP_VERIFY_CONTEXT* CSSM_TP_VERIFY_CONTEXT_PTR; | |
153 alias CSSM_DB_ATTRIBUTE_INFO* CSSM_DB_ATTRIBUTE_INFO_PTR; | |
154 alias CSSM_DB_INDEX_INFO* CSSM_DB_INDEX_INFO_PTR; | |
155 alias CSSM_DB_PARSING_MODULE_INFO* CSSM_DB_PARSING_MODULE_INFO_PTR; | |
156 alias CSSM_DB_RECORD_ATTRIBUTE_INFO* CSSM_DB_RECORD_ATTRIBUTE_INFO_PTR; | |
157 alias CSSM_SELECTION_PREDICATE* CSSM_SELECTION_PREDICATE_PTR; | |
158 alias CSSM_GUID* CSSM_GUID_PTR; | |
159 alias CSSM_SUBSERVICE_UID* CSSM_SUBSERVICE_UID_PTR; | |
160 alias CSSM_CONTEXT* CSSM_CONTEXT_PTR; | |
161 alias CSSM_CONTEXT_ATTRIBUTE* CSSM_CONTEXT_ATTRIBUTE_PTR; | |
162 alias CSSM_ACL_ENTRY_INFO* CSSM_ACL_ENTRY_INFO_PTR; | |
163 alias CSSM_ACL_OWNER_PROTOTYPE* CSSM_ACL_OWNER_PROTOTYPE_PTR; | |
164 alias CSSM_QUERY_SIZE_DATA* CSSM_QUERY_SIZE_DATA_PTR; | |
165 alias CSSM_KEY_SIZE* CSSM_KEY_SIZE_PTR; | |
166 alias CSSM_KEY* CSSM_KEY_PTR; | |
167 alias CSSM_TP_CONFIRM_RESPONSE* CSSM_TP_CONFIRM_RESPONSE_PTR; | |
168 alias CSSM_TUPLEGROUP* CSSM_TUPLEGROUP_PTR; | |
169 alias CSSM_TP_RESULT_SET* CSSM_TP_RESULT_SET_PTR; | |
170 alias CSSM_TP_VERIFY_CONTEXT_RESULT* CSSM_TP_VERIFY_CONTEXT_RESULT_PTR; | |
171 alias CSSM_NAME_LIST* CSSM_NAME_LIST_PTR; | |
172 alias CSSM_DB_UNIQUE_RECORD* CSSM_DB_UNIQUE_RECORD_PTR; | |
173 alias CSSM_DB_RECORD_ATTRIBUTE_DATA* CSSM_DB_RECORD_ATTRIBUTE_DATA_PTR; | |
174 alias CSSM_DL_DB_HANDLE* CSSM_DL_DB_HANDLE_PTR; | |
175 alias CSSM_VERSION* CSSM_VERSION_PTR; | |
176 alias CSSM_FUNC_NAME_ADDR* CSSM_FUNC_NAME_ADDR_PTR; | |
177 | |
178 extern (C) | |
179 { | |
180 alias int function (CSSM_GUID*, void*, uint, uint, uint) CSSM_API_ModuleEventHandler; | |
181 alias void function (void*, void*) CSSM_FREE; | |
182 alias int function (CSSM_LIST*, CSSM_LIST_PTR, void*, CSSM_MEMORY_FUNCS*) CSSM_ACL_SUBJECT_CALLBACK; | |
183 alias int function (int, void*, CSSM_DATA_PTR) CSSM_TP_VERIFICATION_RESULTS_CALLBACK; | |
184 alias int function (CSSM_LIST*, CSSM_SAMPLEGROUP_PTR, void*, CSSM_MEMORY_FUNCS*) CSSM_CHALLENGE_CALLBACK; | |
185 alias void function () CSSM_PROC_ADDR; | |
186 alias void* function (uint, CSSM_SIZE, void*) CSSM_REALLOC; | |
187 alias uint function (uint, CSSM_SIZE, void*) CSSM_CALLOC; | |
188 alias uint function (CSSM_SIZE, int) CSSM_MALLOC; | |
189 alias CSSM_RETURN function (CSSM_DATA_PTR, void*) CSSM_CALLBACK; | |
190 } | |
191 | |
192 enum | |
193 { | |
194 CSSM_INVALID_HANDLE = 0 | |
195 } | |
196 | |
197 enum | |
198 { | |
199 CSSM_FALSE = 0, | |
200 CSSM_TRUE = !CSSM_FALSE | |
201 } | |
202 | |
203 enum | |
204 { | |
205 CSSM_OK = 0 | |
206 } | |
207 | |
208 enum | |
209 { | |
210 CSSM_MODULE_STRING_SIZE = 64 | |
211 } | |
212 | |
213 alias char[CSSM_MODULE_STRING_SIZE + 4] CSSM_STRING; | |
214 | |
215 enum | |
216 { | |
217 CSSM_KEY_HIERARCHY_NONE = 0, | |
218 CSSM_KEY_HIERARCHY_INTEG = 1, | |
219 CSSM_KEY_HIERARCHY_EXPORT = 2 | |
220 } | |
221 | |
222 enum | |
223 { | |
224 CSSM_PVC_NONE = 0, | |
225 CSSM_PVC_APP = 1, | |
226 CSSM_PVC_SP = 2 | |
227 } | |
228 | |
229 enum | |
230 { | |
231 CSSM_PRIVILEGE_SCOPE_NONE = 0, | |
232 CSSM_PRIVILEGE_SCOPE_PROCESS = 1, | |
233 CSSM_PRIVILEGE_SCOPE_THREAD = 2 | |
234 } | |
235 | |
236 enum | |
237 { | |
238 CSSM_SERVICE_CSSM = 0x1, | |
239 CSSM_SERVICE_CSP = 0x2, | |
240 CSSM_SERVICE_DL = 0x4, | |
241 CSSM_SERVICE_CL = 0x8, | |
242 CSSM_SERVICE_TP = 0x10, | |
243 CSSM_SERVICE_AC = 0x20, | |
244 CSSM_SERVICE_KR = 0x40 | |
245 } | |
246 | |
247 enum | |
248 { | |
249 CSSM_NOTIFY_INSERT = 1, | |
250 CSSM_NOTIFY_REMOVE = 2, | |
251 CSSM_NOTIFY_FAULT = 3 | |
252 } | |
253 | |
254 enum | |
255 { | |
256 CSSM_ATTACH_READ_ONLY = 0x00000001 | |
257 } | |
258 | |
259 enum | |
260 { | |
261 CSSM_USEE_LAST = 0xFF, | |
262 CSSM_USEE_NONE = 0, | |
263 CSSM_USEE_DOMESTIC = 1, | |
264 CSSM_USEE_FINANCIAL = 2, | |
265 CSSM_USEE_KRLE = 3, | |
266 CSSM_USEE_KRENT = 4, | |
267 CSSM_USEE_SSL = 5, | |
268 CSSM_USEE_AUTHENTICATION = 6, | |
269 CSSM_USEE_KEYEXCH = 7, | |
270 CSSM_USEE_MEDICAL = 8, | |
271 CSSM_USEE_INSURANCE = 9, | |
272 CSSM_USEE_WEAK = 10 | |
273 } | |
274 | |
275 enum | |
276 { | |
277 CSSM_ADDR_NONE = 0, | |
278 CSSM_ADDR_CUSTOM = 1, | |
279 CSSM_ADDR_URL = 2, | |
280 CSSM_ADDR_SOCKADDR = 3, | |
281 CSSM_ADDR_NAME = 4 | |
282 } | |
283 | |
284 enum | |
285 { | |
286 CSSM_NET_PROTO_NONE = 0, | |
287 CSSM_NET_PROTO_CUSTOM = 1, | |
288 CSSM_NET_PROTO_UNSPECIFIED = 2, | |
289 CSSM_NET_PROTO_LDAP = 3, | |
290 CSSM_NET_PROTO_LDAPS = 4, | |
291 CSSM_NET_PROTO_LDAPNS = 5, | |
292 CSSM_NET_PROTO_X500DAP = 6, | |
293 CSSM_NET_PROTO_FTP = 7, | |
294 CSSM_NET_PROTO_FTPS = 8, | |
295 CSSM_NET_PROTO_OCSP = 9, | |
296 CSSM_NET_PROTO_CMP = 10, | |
297 CSSM_NET_PROTO_CMPS = 11 | |
298 } | |
299 | |
300 enum | |
301 { | |
302 CSSM_WORDID__UNK_ = -1, | |
303 CSSM_WORDID__NLU_ = 0, | |
304 CSSM_WORDID__STAR_ = 1, | |
305 CSSM_WORDID_A = 2, | |
306 CSSM_WORDID_ACL = 3, | |
307 CSSM_WORDID_ALPHA = 4, | |
308 CSSM_WORDID_B = 5, | |
309 CSSM_WORDID_BER = 6, | |
310 CSSM_WORDID_BINARY = 7, | |
311 CSSM_WORDID_BIOMETRIC = 8, | |
312 CSSM_WORDID_C = 9, | |
313 CSSM_WORDID_CANCELED = 10, | |
314 CSSM_WORDID_CERT = 11, | |
315 CSSM_WORDID_COMMENT = 12, | |
316 CSSM_WORDID_CRL = 13, | |
317 CSSM_WORDID_CUSTOM = 14, | |
318 CSSM_WORDID_D = 15, | |
319 CSSM_WORDID_DATE = 16, | |
320 CSSM_WORDID_DB_DELETE = 17, | |
321 CSSM_WORDID_DB_EXEC_STORED_QUERY = 18, | |
322 CSSM_WORDID_DB_INSERT = 19, | |
323 CSSM_WORDID_DB_MODIFY = 20, | |
324 CSSM_WORDID_DB_READ = 21, | |
325 CSSM_WORDID_DBS_CREATE = 22, | |
326 CSSM_WORDID_DBS_DELETE = 23, | |
327 CSSM_WORDID_DECRYPT = 24, | |
328 CSSM_WORDID_DELETE = 25, | |
329 CSSM_WORDID_DELTA_CRL = 26, | |
330 CSSM_WORDID_DER = 27, | |
331 CSSM_WORDID_DERIVE = 28, | |
332 CSSM_WORDID_DISPLAY = 29, | |
333 CSSM_WORDID_DO = 30, | |
334 CSSM_WORDID_DSA = 31, | |
335 CSSM_WORDID_DSA_SHA1 = 32, | |
336 CSSM_WORDID_E = 33, | |
337 CSSM_WORDID_ELGAMAL = 34, | |
338 CSSM_WORDID_ENCRYPT = 35, | |
339 CSSM_WORDID_ENTRY = 36, | |
340 CSSM_WORDID_EXPORT_CLEAR = 37, | |
341 CSSM_WORDID_EXPORT_WRAPPED = 38, | |
342 CSSM_WORDID_G = 39, | |
343 CSSM_WORDID_GE = 40, | |
344 CSSM_WORDID_GENKEY = 41, | |
345 CSSM_WORDID_HASH = 42, | |
346 CSSM_WORDID_HASHED_PASSWORD = 43, | |
347 CSSM_WORDID_HASHED_SUBJECT = 44, | |
348 CSSM_WORDID_HAVAL = 45, | |
349 CSSM_WORDID_IBCHASH = 46, | |
350 CSSM_WORDID_IMPORT_CLEAR = 47, | |
351 CSSM_WORDID_IMPORT_WRAPPED = 48, | |
352 CSSM_WORDID_INTEL = 49, | |
353 CSSM_WORDID_ISSUER = 50, | |
354 CSSM_WORDID_ISSUER_INFO = 51, | |
355 CSSM_WORDID_K_OF_N = 52, | |
356 CSSM_WORDID_KEA = 53, | |
357 CSSM_WORDID_KEYHOLDER = 54, | |
358 CSSM_WORDID_L = 55, | |
359 CSSM_WORDID_LE = 56, | |
360 CSSM_WORDID_LOGIN = 57, | |
361 CSSM_WORDID_LOGIN_NAME = 58, | |
362 CSSM_WORDID_MAC = 59, | |
363 CSSM_WORDID_MD2 = 60, | |
364 CSSM_WORDID_MD2WITHRSA = 61, | |
365 CSSM_WORDID_MD4 = 62, | |
366 CSSM_WORDID_MD5 = 63, | |
367 CSSM_WORDID_MD5WITHRSA = 64, | |
368 CSSM_WORDID_N = 65, | |
369 CSSM_WORDID_NAME = 66, | |
370 CSSM_WORDID_NDR = 67, | |
371 CSSM_WORDID_NHASH = 68, | |
372 CSSM_WORDID_NOT_AFTER = 69, | |
373 CSSM_WORDID_NOT_BEFORE = 70, | |
374 CSSM_WORDID_NULL = 71, | |
375 CSSM_WORDID_NUMERIC = 72, | |
376 CSSM_WORDID_OBJECT_HASH = 73, | |
377 CSSM_WORDID_ONE_TIME = 74, | |
378 CSSM_WORDID_ONLINE = 75, | |
379 CSSM_WORDID_OWNER = 76, | |
380 CSSM_WORDID_P = 77, | |
381 CSSM_WORDID_PAM_NAME = 78, | |
382 CSSM_WORDID_PASSWORD = 79, | |
383 CSSM_WORDID_PGP = 80, | |
384 CSSM_WORDID_PREFIX = 81, | |
385 CSSM_WORDID_PRIVATE_KEY = 82, | |
386 CSSM_WORDID_PROMPTED_BIOMETRIC = 83, | |
387 CSSM_WORDID_PROMPTED_PASSWORD = 84, | |
388 CSSM_WORDID_PROPAGATE = 85, | |
389 CSSM_WORDID_PROTECTED_BIOMETRIC = 86, | |
390 CSSM_WORDID_PROTECTED_PASSWORD = 87, | |
391 CSSM_WORDID_PROTECTED_PIN = 88, | |
392 CSSM_WORDID_PUBLIC_KEY = 89, | |
393 CSSM_WORDID_PUBLIC_KEY_FROM_CERT = 90, | |
394 CSSM_WORDID_Q = 91, | |
395 CSSM_WORDID_RANGE = 92, | |
396 CSSM_WORDID_REVAL = 93, | |
397 CSSM_WORDID_RIPEMAC = 94, | |
398 CSSM_WORDID_RIPEMD = 95, | |
399 CSSM_WORDID_RIPEMD160 = 96, | |
400 CSSM_WORDID_RSA = 97, | |
401 CSSM_WORDID_RSA_ISO9796 = 98, | |
402 CSSM_WORDID_RSA_PKCS = 99, | |
403 CSSM_WORDID_RSA_PKCS_MD5 = 100, | |
404 CSSM_WORDID_RSA_PKCS_SHA1 = 101, | |
405 CSSM_WORDID_RSA_PKCS1 = 102, | |
406 CSSM_WORDID_RSA_PKCS1_MD5 = 103, | |
407 CSSM_WORDID_RSA_PKCS1_SHA1 = 104, | |
408 CSSM_WORDID_RSA_PKCS1_SIG = 105, | |
409 CSSM_WORDID_RSA_RAW = 106, | |
410 CSSM_WORDID_SDSIV1 = 107, | |
411 CSSM_WORDID_SEQUENCE = 108, | |
412 CSSM_WORDID_SET = 109, | |
413 CSSM_WORDID_SEXPR = 110, | |
414 CSSM_WORDID_SHA1 = 111, | |
415 CSSM_WORDID_SHA1WITHDSA = 112, | |
416 CSSM_WORDID_SHA1WITHECDSA = 113, | |
417 CSSM_WORDID_SHA1WITHRSA = 114, | |
418 CSSM_WORDID_SIGN = 115, | |
419 CSSM_WORDID_SIGNATURE = 116, | |
420 CSSM_WORDID_SIGNED_NONCE = 117, | |
421 CSSM_WORDID_SIGNED_SECRET = 118, | |
422 CSSM_WORDID_SPKI = 119, | |
423 CSSM_WORDID_SUBJECT = 120, | |
424 CSSM_WORDID_SUBJECT_INFO = 121, | |
425 CSSM_WORDID_TAG = 122, | |
426 CSSM_WORDID_THRESHOLD = 123, | |
427 CSSM_WORDID_TIME = 124, | |
428 CSSM_WORDID_URI = 125, | |
429 CSSM_WORDID_VERSION = 126, | |
430 CSSM_WORDID_X509_ATTRIBUTE = 127, | |
431 CSSM_WORDID_X509V1 = 128, | |
432 CSSM_WORDID_X509V2 = 129, | |
433 CSSM_WORDID_X509V3 = 130, | |
434 CSSM_WORDID_X9_ATTRIBUTE = 131, | |
435 CSSM_WORDID_VENDOR_START = 0x00010000, | |
436 CSSM_WORDID_VENDOR_END = 0x7FFF0000 | |
437 } | |
438 | |
439 enum | |
440 { | |
441 CSSM_LIST_ELEMENT_DATUM = 0x00, | |
442 CSSM_LIST_ELEMENT_SUBLIST = 0x01, | |
443 CSSM_LIST_ELEMENT_WORDID = 0x02 | |
444 } | |
445 | |
446 enum | |
447 { | |
448 CSSM_LIST_TYPE_UNKNOWN = 0, | |
449 CSSM_LIST_TYPE_CUSTOM = 1, | |
450 CSSM_LIST_TYPE_SEXPR = 2 | |
451 } | |
452 | |
453 enum | |
454 { | |
455 CSSM_SAMPLE_TYPE_PASSWORD = CSSM_WORDID_PASSWORD, | |
456 CSSM_SAMPLE_TYPE_HASHED_PASSWORD = CSSM_WORDID_HASHED_PASSWORD, | |
457 CSSM_SAMPLE_TYPE_PROTECTED_PASSWORD = CSSM_WORDID_PROTECTED_PASSWORD, | |
458 CSSM_SAMPLE_TYPE_PROMPTED_PASSWORD = CSSM_WORDID_PROMPTED_PASSWORD, | |
459 CSSM_SAMPLE_TYPE_SIGNED_NONCE = CSSM_WORDID_SIGNED_NONCE, | |
460 CSSM_SAMPLE_TYPE_SIGNED_SECRET = CSSM_WORDID_SIGNED_SECRET, | |
461 CSSM_SAMPLE_TYPE_BIOMETRIC = CSSM_WORDID_BIOMETRIC, | |
462 CSSM_SAMPLE_TYPE_PROTECTED_BIOMETRIC = CSSM_WORDID_PROTECTED_BIOMETRIC, | |
463 CSSM_SAMPLE_TYPE_PROMPTED_BIOMETRIC = CSSM_WORDID_PROMPTED_BIOMETRIC, | |
464 CSSM_SAMPLE_TYPE_THRESHOLD = CSSM_WORDID_THRESHOLD | |
465 } | |
466 | |
467 enum | |
468 { | |
469 CSSM_CERT_UNKNOWN = 0x00, | |
470 CSSM_CERT_X_509v1 = 0x01, | |
471 CSSM_CERT_X_509v2 = 0x02, | |
472 CSSM_CERT_X_509v3 = 0x03, | |
473 CSSM_CERT_PGP = 0x04, | |
474 CSSM_CERT_SPKI = 0x05, | |
475 CSSM_CERT_SDSIv1 = 0x06, | |
476 CSSM_CERT_Intel = 0x08, | |
477 CSSM_CERT_X_509_ATTRIBUTE = 0x09, | |
478 CSSM_CERT_X9_ATTRIBUTE = 0x0A, | |
479 CSSM_CERT_TUPLE = 0x0B, | |
480 CSSM_CERT_ACL_ENTRY = 0x0C, | |
481 CSSM_CERT_MULTIPLE = 0x7FFE, | |
482 CSSM_CERT_LAST = 0x7FFF, | |
483 CSSM_CL_CUSTOM_CERT_TYPE = 0x08000 | |
484 } | |
485 | |
486 enum | |
487 { | |
488 CSSM_CERT_ENCODING_UNKNOWN = 0x00, | |
489 CSSM_CERT_ENCODING_CUSTOM = 0x01, | |
490 CSSM_CERT_ENCODING_BER = 0x02, | |
491 CSSM_CERT_ENCODING_DER = 0x03, | |
492 CSSM_CERT_ENCODING_NDR = 0x04, | |
493 CSSM_CERT_ENCODING_SEXPR = 0x05, | |
494 CSSM_CERT_ENCODING_PGP = 0x06, | |
495 CSSM_CERT_ENCODING_MULTIPLE = 0x7FFE, | |
496 CSSM_CERT_ENCODING_LAST = 0x7FFF, | |
497 CSSM_CL_CUSTOM_CERT_ENCODING = 0x8000 | |
498 } | |
499 | |
500 enum | |
501 { | |
502 CSSM_CERT_PARSE_FORMAT_NONE = 0x00, | |
503 CSSM_CERT_PARSE_FORMAT_CUSTOM = 0x01, | |
504 CSSM_CERT_PARSE_FORMAT_SEXPR = 0x02, | |
505 CSSM_CERT_PARSE_FORMAT_COMPLEX = 0x03, | |
506 CSSM_CERT_PARSE_FORMAT_OID_NAMED = 0x04, | |
507 CSSM_CERT_PARSE_FORMAT_TUPLE = 0x05, | |
508 CSSM_CERT_PARSE_FORMAT_MULTIPLE = 0x7FFE, | |
509 CSSM_CERT_PARSE_FORMAT_LAST = 0x7FFF, | |
510 CSSM_CL_CUSTOM_CERT_PARSE_FORMAT = 0x8000 | |
511 } | |
512 | |
513 enum | |
514 { | |
515 CSSM_CERTGROUP_DATA = 0x00, | |
516 CSSM_CERTGROUP_ENCODED_CERT = 0x01, | |
517 CSSM_CERTGROUP_PARSED_CERT = 0x02, | |
518 CSSM_CERTGROUP_CERT_PAIR = 0x03 | |
519 } | |
520 | |
521 enum | |
522 { | |
523 CSSM_ACL_SUBJECT_TYPE_ANY = CSSM_WORDID__STAR_, | |
524 CSSM_ACL_SUBJECT_TYPE_THRESHOLD = CSSM_WORDID_THRESHOLD, | |
525 CSSM_ACL_SUBJECT_TYPE_PASSWORD = CSSM_WORDID_PASSWORD, | |
526 CSSM_ACL_SUBJECT_TYPE_PROTECTED_PASSWORD = CSSM_WORDID_PROTECTED_PASSWORD, | |
527 CSSM_ACL_SUBJECT_TYPE_PROMPTED_PASSWORD = CSSM_WORDID_PROMPTED_PASSWORD, | |
528 CSSM_ACL_SUBJECT_TYPE_PUBLIC_KEY = CSSM_WORDID_PUBLIC_KEY, | |
529 CSSM_ACL_SUBJECT_TYPE_HASHED_SUBJECT = CSSM_WORDID_HASHED_SUBJECT, | |
530 CSSM_ACL_SUBJECT_TYPE_BIOMETRIC = CSSM_WORDID_BIOMETRIC, | |
531 CSSM_ACL_SUBJECT_TYPE_PROTECTED_BIOMETRIC = CSSM_WORDID_PROTECTED_BIOMETRIC, | |
532 CSSM_ACL_SUBJECT_TYPE_PROMPTED_BIOMETRIC = CSSM_WORDID_PROMPTED_BIOMETRIC, | |
533 CSSM_ACL_SUBJECT_TYPE_LOGIN_NAME = CSSM_WORDID_LOGIN_NAME, | |
534 CSSM_ACL_SUBJECT_TYPE_EXT_PAM_NAME = CSSM_WORDID_PAM_NAME | |
535 } | |
536 | |
537 enum | |
538 { | |
539 CSSM_ACL_AUTHORIZATION_TAG_VENDOR_DEFINED_START = 0x00010000, | |
540 CSSM_ACL_AUTHORIZATION_ANY = CSSM_WORDID__STAR_, | |
541 CSSM_ACL_AUTHORIZATION_LOGIN = CSSM_WORDID_LOGIN, | |
542 CSSM_ACL_AUTHORIZATION_GENKEY = CSSM_WORDID_GENKEY, | |
543 CSSM_ACL_AUTHORIZATION_DELETE = CSSM_WORDID_DELETE, | |
544 CSSM_ACL_AUTHORIZATION_EXPORT_WRAPPED = CSSM_WORDID_EXPORT_WRAPPED, | |
545 CSSM_ACL_AUTHORIZATION_EXPORT_CLEAR = CSSM_WORDID_EXPORT_CLEAR, | |
546 CSSM_ACL_AUTHORIZATION_IMPORT_WRAPPED = CSSM_WORDID_IMPORT_WRAPPED, | |
547 CSSM_ACL_AUTHORIZATION_IMPORT_CLEAR = CSSM_WORDID_IMPORT_CLEAR, | |
548 CSSM_ACL_AUTHORIZATION_SIGN = CSSM_WORDID_SIGN, | |
549 CSSM_ACL_AUTHORIZATION_ENCRYPT = CSSM_WORDID_ENCRYPT, | |
550 CSSM_ACL_AUTHORIZATION_DECRYPT = CSSM_WORDID_DECRYPT, | |
551 CSSM_ACL_AUTHORIZATION_MAC = CSSM_WORDID_MAC, | |
552 CSSM_ACL_AUTHORIZATION_DERIVE = CSSM_WORDID_DERIVE, | |
553 CSSM_ACL_AUTHORIZATION_DBS_CREATE = CSSM_WORDID_DBS_CREATE, | |
554 CSSM_ACL_AUTHORIZATION_DBS_DELETE = CSSM_WORDID_DBS_DELETE, | |
555 CSSM_ACL_AUTHORIZATION_DB_READ = CSSM_WORDID_DB_READ, | |
556 CSSM_ACL_AUTHORIZATION_DB_INSERT = CSSM_WORDID_DB_INSERT, | |
557 CSSM_ACL_AUTHORIZATION_DB_MODIFY = CSSM_WORDID_DB_MODIFY, | |
558 CSSM_ACL_AUTHORIZATION_DB_DELETE = CSSM_WORDID_DB_DELETE | |
559 } | |
560 | |
561 enum | |
562 { | |
563 CSSM_ACL_EDIT_MODE_ADD = 1, | |
564 CSSM_ACL_EDIT_MODE_DELETE = 2, | |
565 CSSM_ACL_EDIT_MODE_REPLACE = 3 | |
566 } | |
567 | |
568 enum | |
569 { | |
570 CSSM_KEYHEADER_VERSION = 2 | |
571 } | |
572 | |
573 enum | |
574 { | |
575 CSSM_KEYBLOB_RAW = 0, | |
576 CSSM_KEYBLOB_REFERENCE = 2, | |
577 CSSM_KEYBLOB_WRAPPED = 3, | |
578 CSSM_KEYBLOB_OTHER = 0xFFFFFFFF | |
579 } | |
580 | |
581 enum | |
582 { | |
583 CSSM_KEYBLOB_RAW_FORMAT_NONE = 0, | |
584 CSSM_KEYBLOB_RAW_FORMAT_PKCS1 = 1, | |
585 CSSM_KEYBLOB_RAW_FORMAT_PKCS3 = 2, | |
586 CSSM_KEYBLOB_RAW_FORMAT_MSCAPI = 3, | |
587 CSSM_KEYBLOB_RAW_FORMAT_PGP = 4, | |
588 CSSM_KEYBLOB_RAW_FORMAT_FIPS186 = 5, | |
589 CSSM_KEYBLOB_RAW_FORMAT_BSAFE = 6, | |
590 CSSM_KEYBLOB_RAW_FORMAT_CCA = 9, | |
591 CSSM_KEYBLOB_RAW_FORMAT_PKCS8 = 10, | |
592 CSSM_KEYBLOB_RAW_FORMAT_SPKI = 11, | |
593 CSSM_KEYBLOB_RAW_FORMAT_OCTET_STRING = 12, | |
594 CSSM_KEYBLOB_RAW_FORMAT_OTHER = 0xFFFFFFFF | |
595 } | |
596 | |
597 enum | |
598 { | |
599 CSSM_KEYBLOB_WRAPPED_FORMAT_NONE = 0, | |
600 CSSM_KEYBLOB_WRAPPED_FORMAT_PKCS8 = 1, | |
601 CSSM_KEYBLOB_WRAPPED_FORMAT_PKCS7 = 2, | |
602 CSSM_KEYBLOB_WRAPPED_FORMAT_MSCAPI = 3, | |
603 CSSM_KEYBLOB_WRAPPED_FORMAT_OTHER = 0xFFFFFFFF | |
604 } | |
605 | |
606 enum | |
607 { | |
608 CSSM_KEYBLOB_REF_FORMAT_INTEGER = 0, | |
609 CSSM_KEYBLOB_REF_FORMAT_STRING = 1, | |
610 CSSM_KEYBLOB_REF_FORMAT_SPKI = 2, | |
611 CSSM_KEYBLOB_REF_FORMAT_OTHER = 0xFFFFFFFF | |
612 } | |
613 | |
614 enum | |
615 { | |
616 CSSM_KEYCLASS_PUBLIC_KEY = 0, | |
617 CSSM_KEYCLASS_PRIVATE_KEY = 1, | |
618 CSSM_KEYCLASS_SESSION_KEY = 2, | |
619 CSSM_KEYCLASS_SECRET_PART = 3, | |
620 CSSM_KEYCLASS_OTHER = 0xFFFFFFFF | |
621 } | |
622 | |
623 enum | |
624 { | |
625 CSSM_KEYATTR_RETURN_DEFAULT = 0x00000000, | |
626 CSSM_KEYATTR_RETURN_DATA = 0x10000000, | |
627 CSSM_KEYATTR_RETURN_REF = 0x20000000, | |
628 CSSM_KEYATTR_RETURN_NONE = 0x40000000, | |
629 CSSM_KEYATTR_PERMANENT = 0x00000001, | |
630 CSSM_KEYATTR_PRIVATE = 0x00000002, | |
631 CSSM_KEYATTR_MODIFIABLE = 0x00000004, | |
632 CSSM_KEYATTR_SENSITIVE = 0x00000008, | |
633 CSSM_KEYATTR_EXTRACTABLE = 0x00000020, | |
634 CSSM_KEYATTR_ALWAYS_SENSITIVE = 0x00000010, | |
635 CSSM_KEYATTR_NEVER_EXTRACTABLE = 0x00000040 | |
636 } | |
637 | |
638 enum | |
639 { | |
640 CSSM_KEYUSE_ANY = 0x80000000, | |
641 CSSM_KEYUSE_ENCRYPT = 0x00000001, | |
642 CSSM_KEYUSE_DECRYPT = 0x00000002, | |
643 CSSM_KEYUSE_SIGN = 0x00000004, | |
644 CSSM_KEYUSE_VERIFY = 0x00000008, | |
645 CSSM_KEYUSE_SIGN_RECOVER = 0x00000010, | |
646 CSSM_KEYUSE_VERIFY_RECOVER = 0x00000020, | |
647 CSSM_KEYUSE_WRAP = 0x00000040, | |
648 CSSM_KEYUSE_UNWRAP = 0x00000080, | |
649 CSSM_KEYUSE_DERIVE = 0x00000100 | |
650 } | |
651 | |
652 enum | |
653 { | |
654 CSSM_ALGID_NONE = 0, | |
655 CSSM_ALGID_CUSTOM = CSSM_ALGID_NONE + 1, | |
656 CSSM_ALGID_DH = CSSM_ALGID_NONE + 2, | |
657 CSSM_ALGID_PH = CSSM_ALGID_NONE + 3, | |
658 CSSM_ALGID_KEA = CSSM_ALGID_NONE + 4, | |
659 CSSM_ALGID_MD2 = CSSM_ALGID_NONE + 5, | |
660 CSSM_ALGID_MD4 = CSSM_ALGID_NONE + 6, | |
661 CSSM_ALGID_MD5 = CSSM_ALGID_NONE + 7, | |
662 CSSM_ALGID_SHA1 = CSSM_ALGID_NONE + 8, | |
663 CSSM_ALGID_NHASH = CSSM_ALGID_NONE + 9, | |
664 CSSM_ALGID_HAVAL = CSSM_ALGID_NONE + 10, | |
665 CSSM_ALGID_RIPEMD = CSSM_ALGID_NONE + 11, | |
666 CSSM_ALGID_IBCHASH = CSSM_ALGID_NONE + 12, | |
667 CSSM_ALGID_RIPEMAC = CSSM_ALGID_NONE + 13, | |
668 CSSM_ALGID_DES = CSSM_ALGID_NONE + 14, | |
669 CSSM_ALGID_DESX = CSSM_ALGID_NONE + 15, | |
670 CSSM_ALGID_RDES = CSSM_ALGID_NONE + 16, | |
671 CSSM_ALGID_3DES_3KEY_EDE = CSSM_ALGID_NONE + 17, | |
672 CSSM_ALGID_3DES_2KEY_EDE = CSSM_ALGID_NONE + 18, | |
673 CSSM_ALGID_3DES_1KEY_EEE = CSSM_ALGID_NONE + 19, | |
674 CSSM_ALGID_3DES_3KEY = CSSM_ALGID_3DES_3KEY_EDE, | |
675 CSSM_ALGID_3DES_3KEY_EEE = CSSM_ALGID_NONE + 20, | |
676 CSSM_ALGID_3DES_2KEY = CSSM_ALGID_3DES_2KEY_EDE, | |
677 CSSM_ALGID_3DES_2KEY_EEE = CSSM_ALGID_NONE + 21, | |
678 CSSM_ALGID_3DES_1KEY = CSSM_ALGID_3DES_3KEY_EEE, | |
679 CSSM_ALGID_IDEA = CSSM_ALGID_NONE + 22, | |
680 CSSM_ALGID_RC2 = CSSM_ALGID_NONE + 23, | |
681 CSSM_ALGID_RC5 = CSSM_ALGID_NONE + 24, | |
682 CSSM_ALGID_RC4 = CSSM_ALGID_NONE + 25, | |
683 CSSM_ALGID_SEAL = CSSM_ALGID_NONE + 26, | |
684 CSSM_ALGID_CAST = CSSM_ALGID_NONE + 27, | |
685 CSSM_ALGID_BLOWFISH = CSSM_ALGID_NONE + 28, | |
686 CSSM_ALGID_SKIPJACK = CSSM_ALGID_NONE + 29, | |
687 CSSM_ALGID_LUCIFER = CSSM_ALGID_NONE + 30, | |
688 CSSM_ALGID_MADRYGA = CSSM_ALGID_NONE + 31, | |
689 CSSM_ALGID_FEAL = CSSM_ALGID_NONE + 32, | |
690 CSSM_ALGID_REDOC = CSSM_ALGID_NONE + 33, | |
691 CSSM_ALGID_REDOC3 = CSSM_ALGID_NONE + 34, | |
692 CSSM_ALGID_LOKI = CSSM_ALGID_NONE + 35, | |
693 CSSM_ALGID_KHUFU = CSSM_ALGID_NONE + 36, | |
694 CSSM_ALGID_KHAFRE = CSSM_ALGID_NONE + 37, | |
695 CSSM_ALGID_MMB = CSSM_ALGID_NONE + 38, | |
696 CSSM_ALGID_GOST = CSSM_ALGID_NONE + 39, | |
697 CSSM_ALGID_SAFER = CSSM_ALGID_NONE + 40, | |
698 CSSM_ALGID_CRAB = CSSM_ALGID_NONE + 41, | |
699 CSSM_ALGID_RSA = CSSM_ALGID_NONE + 42, | |
700 CSSM_ALGID_DSA = CSSM_ALGID_NONE + 43, | |
701 CSSM_ALGID_MD5WithRSA = CSSM_ALGID_NONE + 44, | |
702 CSSM_ALGID_MD2WithRSA = CSSM_ALGID_NONE + 45, | |
703 CSSM_ALGID_ElGamal = CSSM_ALGID_NONE + 46, | |
704 CSSM_ALGID_MD2Random = CSSM_ALGID_NONE + 47, | |
705 CSSM_ALGID_MD5Random = CSSM_ALGID_NONE + 48, | |
706 CSSM_ALGID_SHARandom = CSSM_ALGID_NONE + 49, | |
707 CSSM_ALGID_DESRandom = CSSM_ALGID_NONE + 50, | |
708 CSSM_ALGID_SHA1WithRSA = CSSM_ALGID_NONE + 51, | |
709 CSSM_ALGID_CDMF = CSSM_ALGID_NONE + 52, | |
710 CSSM_ALGID_CAST3 = CSSM_ALGID_NONE + 53, | |
711 CSSM_ALGID_CAST5 = CSSM_ALGID_NONE + 54, | |
712 CSSM_ALGID_GenericSecret = CSSM_ALGID_NONE + 55, | |
713 CSSM_ALGID_ConcatBaseAndKey = CSSM_ALGID_NONE + 56, | |
714 CSSM_ALGID_ConcatKeyAndBase = CSSM_ALGID_NONE + 57, | |
715 CSSM_ALGID_ConcatBaseAndData = CSSM_ALGID_NONE + 58, | |
716 CSSM_ALGID_ConcatDataAndBase = CSSM_ALGID_NONE + 59, | |
717 CSSM_ALGID_XORBaseAndData = CSSM_ALGID_NONE + 60, | |
718 CSSM_ALGID_ExtractFromKey = CSSM_ALGID_NONE + 61, | |
719 CSSM_ALGID_SSL3PreMasterGen = CSSM_ALGID_NONE + 62, | |
720 CSSM_ALGID_SSL3MasterDerive = CSSM_ALGID_NONE + 63, | |
721 CSSM_ALGID_SSL3KeyAndMacDerive = CSSM_ALGID_NONE + 64, | |
722 CSSM_ALGID_SSL3MD5_MAC = CSSM_ALGID_NONE + 65, | |
723 CSSM_ALGID_SSL3SHA1_MAC = CSSM_ALGID_NONE + 66, | |
724 CSSM_ALGID_PKCS5_PBKDF1_MD5 = CSSM_ALGID_NONE + 67, | |
725 CSSM_ALGID_PKCS5_PBKDF1_MD2 = CSSM_ALGID_NONE + 68, | |
726 CSSM_ALGID_PKCS5_PBKDF1_SHA1 = CSSM_ALGID_NONE + 69, | |
727 CSSM_ALGID_WrapLynks = CSSM_ALGID_NONE + 70, | |
728 CSSM_ALGID_WrapSET_OAEP = CSSM_ALGID_NONE + 71, | |
729 CSSM_ALGID_BATON = CSSM_ALGID_NONE + 72, | |
730 CSSM_ALGID_ECDSA = CSSM_ALGID_NONE + 73, | |
731 CSSM_ALGID_MAYFLY = CSSM_ALGID_NONE + 74, | |
732 CSSM_ALGID_JUNIPER = CSSM_ALGID_NONE + 75, | |
733 CSSM_ALGID_FASTHASH = CSSM_ALGID_NONE + 76, | |
734 CSSM_ALGID_3DES = CSSM_ALGID_NONE + 77, | |
735 CSSM_ALGID_SSL3MD5 = CSSM_ALGID_NONE + 78, | |
736 CSSM_ALGID_SSL3SHA1 = CSSM_ALGID_NONE + 79, | |
737 CSSM_ALGID_FortezzaTimestamp = CSSM_ALGID_NONE + 80, | |
738 CSSM_ALGID_SHA1WithDSA = CSSM_ALGID_NONE + 81, | |
739 CSSM_ALGID_SHA1WithECDSA = CSSM_ALGID_NONE + 82, | |
740 CSSM_ALGID_DSA_BSAFE = CSSM_ALGID_NONE + 83, | |
741 CSSM_ALGID_ECDH = CSSM_ALGID_NONE + 84, | |
742 CSSM_ALGID_ECMQV = CSSM_ALGID_NONE + 85, | |
743 CSSM_ALGID_PKCS12_SHA1_PBE = CSSM_ALGID_NONE + 86, | |
744 CSSM_ALGID_ECNRA = CSSM_ALGID_NONE + 87, | |
745 CSSM_ALGID_SHA1WithECNRA = CSSM_ALGID_NONE + 88, | |
746 CSSM_ALGID_ECES = CSSM_ALGID_NONE + 89, | |
747 CSSM_ALGID_ECAES = CSSM_ALGID_NONE + 90, | |
748 CSSM_ALGID_SHA1HMAC = CSSM_ALGID_NONE + 91, | |
749 CSSM_ALGID_FIPS186Random = CSSM_ALGID_NONE + 92, | |
750 CSSM_ALGID_ECC = CSSM_ALGID_NONE + 93, | |
751 CSSM_ALGID_MQV = CSSM_ALGID_NONE + 94, | |
752 CSSM_ALGID_NRA = CSSM_ALGID_NONE + 95, | |
753 CSSM_ALGID_IntelPlatformRandom = CSSM_ALGID_NONE + 96, | |
754 CSSM_ALGID_UTC = CSSM_ALGID_NONE + 97, | |
755 CSSM_ALGID_HAVAL3 = CSSM_ALGID_NONE + 98, | |
756 CSSM_ALGID_HAVAL4 = CSSM_ALGID_NONE + 99, | |
757 CSSM_ALGID_HAVAL5 = CSSM_ALGID_NONE + 100, | |
758 CSSM_ALGID_TIGER = CSSM_ALGID_NONE + 101, | |
759 CSSM_ALGID_MD5HMAC = CSSM_ALGID_NONE + 102, | |
760 CSSM_ALGID_PKCS5_PBKDF2 = CSSM_ALGID_NONE + 103, | |
761 CSSM_ALGID_RUNNING_COUNTER = CSSM_ALGID_NONE + 104, | |
762 CSSM_ALGID_LAST = CSSM_ALGID_NONE + 0x7FFFFFFF, | |
763 CSSM_ALGID_VENDOR_DEFINED = CSSM_ALGID_NONE + 0x80000000 | |
764 } | |
765 | |
766 enum | |
767 { | |
768 CSSM_ALGMODE_NONE = 0, | |
769 CSSM_ALGMODE_CUSTOM = CSSM_ALGMODE_NONE + 1, | |
770 CSSM_ALGMODE_ECB = CSSM_ALGMODE_NONE + 2, | |
771 CSSM_ALGMODE_ECBPad = CSSM_ALGMODE_NONE + 3, | |
772 CSSM_ALGMODE_CBC = CSSM_ALGMODE_NONE + 4, | |
773 CSSM_ALGMODE_CBC_IV8 = CSSM_ALGMODE_NONE + 5, | |
774 CSSM_ALGMODE_CBCPadIV8 = CSSM_ALGMODE_NONE + 6, | |
775 CSSM_ALGMODE_CFB = CSSM_ALGMODE_NONE + 7, | |
776 CSSM_ALGMODE_CFB_IV8 = CSSM_ALGMODE_NONE + 8, | |
777 CSSM_ALGMODE_CFBPadIV8 = CSSM_ALGMODE_NONE + 9, | |
778 CSSM_ALGMODE_OFB = CSSM_ALGMODE_NONE + 10, | |
779 CSSM_ALGMODE_OFB_IV8 = CSSM_ALGMODE_NONE + 11, | |
780 CSSM_ALGMODE_OFBPadIV8 = CSSM_ALGMODE_NONE + 12, | |
781 CSSM_ALGMODE_COUNTER = CSSM_ALGMODE_NONE + 13, | |
782 CSSM_ALGMODE_BC = CSSM_ALGMODE_NONE + 14, | |
783 CSSM_ALGMODE_PCBC = CSSM_ALGMODE_NONE + 15, | |
784 CSSM_ALGMODE_CBCC = CSSM_ALGMODE_NONE + 16, | |
785 CSSM_ALGMODE_OFBNLF = CSSM_ALGMODE_NONE + 17, | |
786 CSSM_ALGMODE_PBC = CSSM_ALGMODE_NONE + 18, | |
787 CSSM_ALGMODE_PFB = CSSM_ALGMODE_NONE + 19, | |
788 CSSM_ALGMODE_CBCPD = CSSM_ALGMODE_NONE + 20, | |
789 CSSM_ALGMODE_PUBLIC_KEY = CSSM_ALGMODE_NONE + 21, | |
790 CSSM_ALGMODE_PRIVATE_KEY = CSSM_ALGMODE_NONE + 22, | |
791 CSSM_ALGMODE_SHUFFLE = CSSM_ALGMODE_NONE + 23, | |
792 CSSM_ALGMODE_ECB64 = CSSM_ALGMODE_NONE + 24, | |
793 CSSM_ALGMODE_CBC64 = CSSM_ALGMODE_NONE + 25, | |
794 CSSM_ALGMODE_OFB64 = CSSM_ALGMODE_NONE + 26, | |
795 CSSM_ALGMODE_CFB32 = CSSM_ALGMODE_NONE + 28, | |
796 CSSM_ALGMODE_CFB16 = CSSM_ALGMODE_NONE + 29, | |
797 CSSM_ALGMODE_CFB8 = CSSM_ALGMODE_NONE + 30, | |
798 CSSM_ALGMODE_WRAP = CSSM_ALGMODE_NONE + 31, | |
799 CSSM_ALGMODE_PRIVATE_WRAP = CSSM_ALGMODE_NONE + 32, | |
800 CSSM_ALGMODE_RELAYX = CSSM_ALGMODE_NONE + 33, | |
801 CSSM_ALGMODE_ECB128 = CSSM_ALGMODE_NONE + 34, | |
802 CSSM_ALGMODE_ECB96 = CSSM_ALGMODE_NONE + 35, | |
803 CSSM_ALGMODE_CBC128 = CSSM_ALGMODE_NONE + 36, | |
804 CSSM_ALGMODE_OAEP_HASH = CSSM_ALGMODE_NONE + 37, | |
805 CSSM_ALGMODE_PKCS1_EME_V15 = CSSM_ALGMODE_NONE + 38, | |
806 CSSM_ALGMODE_PKCS1_EME_OAEP = CSSM_ALGMODE_NONE + 39, | |
807 CSSM_ALGMODE_PKCS1_EMSA_V15 = CSSM_ALGMODE_NONE + 40, | |
808 CSSM_ALGMODE_ISO_9796 = CSSM_ALGMODE_NONE + 41, | |
809 CSSM_ALGMODE_X9_31 = CSSM_ALGMODE_NONE + 42, | |
810 CSSM_ALGMODE_LAST = CSSM_ALGMODE_NONE + 0x7FFFFFFF, | |
811 CSSM_ALGMODE_VENDOR_DEFINED = CSSM_ALGMODE_NONE + 0x80000000 | |
812 } | |
813 | |
814 enum | |
815 { | |
816 CSSM_CSP_SOFTWARE = 1, | |
817 CSSM_CSP_HARDWARE = CSSM_CSP_SOFTWARE + 1, | |
818 CSSM_CSP_HYBRID = CSSM_CSP_SOFTWARE + 2 | |
819 } | |
820 | |
821 enum | |
822 { | |
823 CSSM_ALGCLASS_NONE = 0, | |
824 CSSM_ALGCLASS_CUSTOM = CSSM_ALGCLASS_NONE + 1, | |
825 CSSM_ALGCLASS_SIGNATURE = CSSM_ALGCLASS_NONE + 2, | |
826 CSSM_ALGCLASS_SYMMETRIC = CSSM_ALGCLASS_NONE + 3, | |
827 CSSM_ALGCLASS_DIGEST = CSSM_ALGCLASS_NONE + 4, | |
828 CSSM_ALGCLASS_RANDOMGEN = CSSM_ALGCLASS_NONE + 5, | |
829 CSSM_ALGCLASS_UNIQUEGEN = CSSM_ALGCLASS_NONE + 6, | |
830 CSSM_ALGCLASS_MAC = CSSM_ALGCLASS_NONE + 7, | |
831 CSSM_ALGCLASS_ASYMMETRIC = CSSM_ALGCLASS_NONE + 8, | |
832 CSSM_ALGCLASS_KEYGEN = CSSM_ALGCLASS_NONE + 9, | |
833 CSSM_ALGCLASS_DERIVEKEY = CSSM_ALGCLASS_NONE + 10 | |
834 } | |
835 | |
836 enum | |
837 { | |
838 CSSM_ATTRIBUTE_DATA_NONE = 0x00000000, | |
839 CSSM_ATTRIBUTE_DATA_UINT32 = 0x10000000, | |
840 CSSM_ATTRIBUTE_DATA_CSSM_DATA = 0x20000000, | |
841 CSSM_ATTRIBUTE_DATA_CRYPTO_DATA = 0x30000000, | |
842 CSSM_ATTRIBUTE_DATA_KEY = 0x40000000, | |
843 CSSM_ATTRIBUTE_DATA_STRING = 0x50000000, | |
844 CSSM_ATTRIBUTE_DATA_DATE = 0x60000000, | |
845 CSSM_ATTRIBUTE_DATA_RANGE = 0x70000000, | |
846 CSSM_ATTRIBUTE_DATA_ACCESS_CREDENTIALS = 0x80000000, | |
847 CSSM_ATTRIBUTE_DATA_VERSION = 0x01000000, | |
848 CSSM_ATTRIBUTE_DATA_DL_DB_HANDLE = 0x02000000, | |
849 CSSM_ATTRIBUTE_DATA_KR_PROFILE = 0x03000000, | |
850 CSSM_ATTRIBUTE_TYPE_MASK = 0xFF000000 | |
851 } | |
852 | |
853 enum | |
854 { | |
855 CSSM_ATTRIBUTE_NONE = 0, | |
856 CSSM_ATTRIBUTE_CUSTOM = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 1, | |
857 CSSM_ATTRIBUTE_DESCRIPTION = CSSM_ATTRIBUTE_DATA_STRING | 2, | |
858 CSSM_ATTRIBUTE_KEY = CSSM_ATTRIBUTE_DATA_KEY | 3, | |
859 CSSM_ATTRIBUTE_INIT_VECTOR = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 4, | |
860 CSSM_ATTRIBUTE_SALT = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 5, | |
861 CSSM_ATTRIBUTE_PADDING = CSSM_ATTRIBUTE_DATA_UINT32 | 6, | |
862 CSSM_ATTRIBUTE_RANDOM = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 7, | |
863 CSSM_ATTRIBUTE_SEED = CSSM_ATTRIBUTE_DATA_CRYPTO_DATA | 8, | |
864 CSSM_ATTRIBUTE_PASSPHRASE = CSSM_ATTRIBUTE_DATA_CRYPTO_DATA | 9, | |
865 CSSM_ATTRIBUTE_KEY_LENGTH = CSSM_ATTRIBUTE_DATA_UINT32 | 10, | |
866 CSSM_ATTRIBUTE_KEY_LENGTH_RANGE = CSSM_ATTRIBUTE_DATA_RANGE | 11, | |
867 CSSM_ATTRIBUTE_BLOCK_SIZE = CSSM_ATTRIBUTE_DATA_UINT32 | 12, | |
868 CSSM_ATTRIBUTE_OUTPUT_SIZE = CSSM_ATTRIBUTE_DATA_UINT32 | 13, | |
869 CSSM_ATTRIBUTE_ROUNDS = CSSM_ATTRIBUTE_DATA_UINT32 | 14, | |
870 CSSM_ATTRIBUTE_IV_SIZE = CSSM_ATTRIBUTE_DATA_UINT32 | 15, | |
871 CSSM_ATTRIBUTE_ALG_PARAMS = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 16, | |
872 CSSM_ATTRIBUTE_LABEL = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 17, | |
873 CSSM_ATTRIBUTE_KEY_TYPE = CSSM_ATTRIBUTE_DATA_UINT32 | 18, | |
874 CSSM_ATTRIBUTE_MODE = CSSM_ATTRIBUTE_DATA_UINT32 | 19, | |
875 CSSM_ATTRIBUTE_EFFECTIVE_BITS = CSSM_ATTRIBUTE_DATA_UINT32 | 20, | |
876 CSSM_ATTRIBUTE_START_DATE = CSSM_ATTRIBUTE_DATA_DATE | 21, | |
877 CSSM_ATTRIBUTE_END_DATE = CSSM_ATTRIBUTE_DATA_DATE | 22, | |
878 CSSM_ATTRIBUTE_KEYUSAGE = CSSM_ATTRIBUTE_DATA_UINT32 | 23, | |
879 CSSM_ATTRIBUTE_KEYATTR = CSSM_ATTRIBUTE_DATA_UINT32 | 24, | |
880 CSSM_ATTRIBUTE_VERSION = CSSM_ATTRIBUTE_DATA_VERSION | 25, | |
881 CSSM_ATTRIBUTE_PRIME = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 26, | |
882 CSSM_ATTRIBUTE_BASE = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 27, | |
883 CSSM_ATTRIBUTE_SUBPRIME = CSSM_ATTRIBUTE_DATA_CSSM_DATA | 28, | |
884 CSSM_ATTRIBUTE_ALG_ID = CSSM_ATTRIBUTE_DATA_UINT32 | 29, | |
885 CSSM_ATTRIBUTE_ITERATION_COUNT = CSSM_ATTRIBUTE_DATA_UINT32 | 30, | |
886 CSSM_ATTRIBUTE_ROUNDS_RANGE = CSSM_ATTRIBUTE_DATA_RANGE | 31, | |
887 CSSM_ATTRIBUTE_KRPROFILE_LOCAL = CSSM_ATTRIBUTE_DATA_KR_PROFILE | 32, | |
888 CSSM_ATTRIBUTE_KRPROFILE_REMOTE = CSSM_ATTRIBUTE_DATA_KR_PROFILE | 33, | |
889 CSSM_ATTRIBUTE_CSP_HANDLE = CSSM_ATTRIBUTE_DATA_UINT32 | 34, | |
890 CSSM_ATTRIBUTE_DL_DB_HANDLE = CSSM_ATTRIBUTE_DATA_DL_DB_HANDLE | 35, | |
891 CSSM_ATTRIBUTE_ACCESS_CREDENTIALS = CSSM_ATTRIBUTE_DATA_ACCESS_CREDENTIALS | 36, | |
892 CSSM_ATTRIBUTE_PUBLIC_KEY_FORMAT = CSSM_ATTRIBUTE_DATA_UINT32 | 37, | |
893 CSSM_ATTRIBUTE_PRIVATE_KEY_FORMAT = CSSM_ATTRIBUTE_DATA_UINT32 | 38, | |
894 CSSM_ATTRIBUTE_SYMMETRIC_KEY_FORMAT = CSSM_ATTRIBUTE_DATA_UINT32 | 39, | |
895 CSSM_ATTRIBUTE_WRAPPED_KEY_FORMAT = CSSM_ATTRIBUTE_DATA_UINT32 | 40 | |
896 } | |
897 | |
898 enum | |
899 { | |
900 CSSM_PADDING_NONE = 0, | |
901 CSSM_PADDING_CUSTOM = CSSM_PADDING_NONE + 1, | |
902 CSSM_PADDING_ZERO = CSSM_PADDING_NONE + 2, | |
903 CSSM_PADDING_ONE = CSSM_PADDING_NONE + 3, | |
904 CSSM_PADDING_ALTERNATE = CSSM_PADDING_NONE + 4, | |
905 CSSM_PADDING_FF = CSSM_PADDING_NONE + 5, | |
906 CSSM_PADDING_PKCS5 = CSSM_PADDING_NONE + 6, | |
907 CSSM_PADDING_PKCS7 = CSSM_PADDING_NONE + 7, | |
908 CSSM_PADDING_CIPHERSTEALING = CSSM_PADDING_NONE + 8, | |
909 CSSM_PADDING_RANDOM = CSSM_PADDING_NONE + 9, | |
910 CSSM_PADDING_PKCS1 = CSSM_PADDING_NONE + 10, | |
911 CSSM_PADDING_VENDOR_DEFINED = CSSM_PADDING_NONE + 0x80000000 | |
912 } | |
913 | |
914 enum | |
915 { | |
916 CSSM_CSP_TOK_RNG = 0x00000001, | |
917 CSSM_CSP_TOK_CLOCK_EXISTS = 0x00000040 | |
918 } | |
919 | |
920 enum | |
921 { | |
922 CSSM_CSP_RDR_TOKENPRESENT = 0x00000001, | |
923 CSSM_CSP_RDR_EXISTS = 0x00000002, | |
924 CSSM_CSP_RDR_HW = 0x00000004 | |
925 } | |
926 | |
927 enum | |
928 { | |
929 CSSM_CSP_TOK_WRITE_PROTECTED = 0x00000002, | |
930 CSSM_CSP_TOK_LOGIN_REQUIRED = 0x00000004, | |
931 CSSM_CSP_TOK_USER_PIN_INITIALIZED = 0x00000008, | |
932 CSSM_CSP_TOK_PROT_AUTHENTICATION = 0x00000100, | |
933 CSSM_CSP_TOK_USER_PIN_EXPIRED = 0x00100000, | |
934 CSSM_CSP_TOK_SESSION_KEY_PASSWORD = 0x00200000, | |
935 CSSM_CSP_TOK_PRIVATE_KEY_PASSWORD = 0x00400000, | |
936 CSSM_CSP_STORES_PRIVATE_KEYS = 0x01000000, | |
937 CSSM_CSP_STORES_PUBLIC_KEYS = 0x02000000, | |
938 CSSM_CSP_STORES_SESSION_KEYS = 0x04000000, | |
939 CSSM_CSP_STORES_CERTIFICATES = 0x08000000, | |
940 CSSM_CSP_STORES_GENERIC = 0x10000000 | |
941 } | |
942 | |
943 enum | |
944 { | |
945 CSSM_PKCS_OAEP_MGF_NONE = 0, | |
946 CSSM_PKCS_OAEP_MGF1_SHA1 = CSSM_PKCS_OAEP_MGF_NONE + 1, | |
947 CSSM_PKCS_OAEP_MGF1_MD5 = CSSM_PKCS_OAEP_MGF_NONE + 2 | |
948 } | |
949 | |
950 enum | |
951 { | |
952 CSSM_PKCS_OAEP_PSOURCE_NONE = 0, | |
953 CSSM_PKCS_OAEP_PSOURCE_Pspecified = CSSM_PKCS_OAEP_PSOURCE_NONE + 1 | |
954 } | |
955 | |
956 enum : uint | |
957 { | |
958 CSSM_VALUE_NOT_AVAILABLE = ~0 | |
959 } | |
960 | |
961 enum | |
962 { | |
963 CSSM_PKCS5_PBKDF2_PRF_HMAC_SHA1 = 0 | |
964 } | |
965 | |
966 enum | |
967 { | |
968 CSSM_TP_AUTHORITY_REQUEST_CERTISSUE = 0x01, | |
969 CSSM_TP_AUTHORITY_REQUEST_CERTREVOKE = 0x02, | |
970 CSSM_TP_AUTHORITY_REQUEST_CERTSUSPEND = 0x03, | |
971 CSSM_TP_AUTHORITY_REQUEST_CERTRESUME = 0x04, | |
972 CSSM_TP_AUTHORITY_REQUEST_CERTVERIFY = 0x05, | |
973 CSSM_TP_AUTHORITY_REQUEST_CERTNOTARIZE = 0x06, | |
974 CSSM_TP_AUTHORITY_REQUEST_CERTUSERECOVER = 0x07, | |
975 CSSM_TP_AUTHORITY_REQUEST_CRLISSUE = 0x100 | |
976 } | |
977 | |
978 enum | |
979 { | |
980 CSSM_TP_KEY_ARCHIVE = 0x0001, | |
981 CSSM_TP_CERT_PUBLISH = 0x0002, | |
982 CSSM_TP_CERT_NOTIFY_RENEW = 0x0004, | |
983 CSSM_TP_CERT_DIR_UPDATE = 0x0008, | |
984 CSSM_TP_CRL_DISTRIBUTE = 0x0010 | |
985 } | |
986 | |
987 enum | |
988 { | |
989 CSSM_TP_ACTION_DEFAULT = 0 | |
990 } | |
991 | |
992 enum | |
993 { | |
994 CSSM_TP_STOP_ON_POLICY = 0, | |
995 CSSM_TP_STOP_ON_NONE = 1, | |
996 CSSM_TP_STOP_ON_FIRST_PASS = 2, | |
997 CSSM_TP_STOP_ON_FIRST_FAIL = 3 | |
998 } | |
999 | |
1000 enum | |
1001 { | |
1002 CSSM_CRL_PARSE_FORMAT_NONE = 0x00, | |
1003 CSSM_CRL_PARSE_FORMAT_CUSTOM = 0x01, | |
1004 CSSM_CRL_PARSE_FORMAT_SEXPR = 0x02, | |
1005 CSSM_CRL_PARSE_FORMAT_COMPLEX = 0x03, | |
1006 CSSM_CRL_PARSE_FORMAT_OID_NAMED = 0x04, | |
1007 CSSM_CRL_PARSE_FORMAT_TUPLE = 0x05, | |
1008 CSSM_CRL_PARSE_FORMAT_MULTIPLE = 0x7FFE, | |
1009 CSSM_CRL_PARSE_FORMAT_LAST = 0x7FFF, | |
1010 CSSM_CL_CUSTOM_CRL_PARSE_FORMAT = 0x8000 | |
1011 } | |
1012 | |
1013 enum | |
1014 { | |
1015 CSSM_CRL_TYPE_UNKNOWN = 0x00, | |
1016 CSSM_CRL_TYPE_X_509v1 = 0x01, | |
1017 CSSM_CRL_TYPE_X_509v2 = 0x02, | |
1018 CSSM_CRL_TYPE_SPKI = 0x03, | |
1019 CSSM_CRL_TYPE_MULTIPLE = 0x7FFE | |
1020 } | |
1021 | |
1022 enum | |
1023 { | |
1024 CSSM_CRL_ENCODING_UNKNOWN = 0x00, | |
1025 CSSM_CRL_ENCODING_CUSTOM = 0x01, | |
1026 CSSM_CRL_ENCODING_BER = 0x02, | |
1027 CSSM_CRL_ENCODING_DER = 0x03, | |
1028 CSSM_CRL_ENCODING_BLOOM = 0x04, | |
1029 CSSM_CRL_ENCODING_SEXPR = 0x05, | |
1030 CSSM_CRL_ENCODING_MULTIPLE = 0x7FFE | |
1031 } | |
1032 | |
1033 enum | |
1034 { | |
1035 CSSM_CRLGROUP_DATA = 0x00, | |
1036 CSSM_CRLGROUP_ENCODED_CRL = 0x01, | |
1037 CSSM_CRLGROUP_PARSED_CRL = 0x02, | |
1038 CSSM_CRLGROUP_CRL_PAIR = 0x03 | |
1039 } | |
1040 | |
1041 enum | |
1042 { | |
1043 CSSM_EVIDENCE_FORM_UNSPECIFIC = 0x0, | |
1044 CSSM_EVIDENCE_FORM_CERT = 0x1, | |
1045 CSSM_EVIDENCE_FORM_CRL = 0x2, | |
1046 CSSM_EVIDENCE_FORM_CERT_ID = 0x3, | |
1047 CSSM_EVIDENCE_FORM_CRL_ID = 0x4, | |
1048 CSSM_EVIDENCE_FORM_VERIFIER_TIME = 0x5, | |
1049 CSSM_EVIDENCE_FORM_CRL_THISTIME = 0x6, | |
1050 CSSM_EVIDENCE_FORM_CRL_NEXTTIME = 0x7, | |
1051 CSSM_EVIDENCE_FORM_POLICYINFO = 0x8, | |
1052 CSSM_EVIDENCE_FORM_TUPLEGROUP = 0x9 | |
1053 } | |
1054 | |
1055 enum | |
1056 { | |
1057 CSSM_TP_CONFIRM_STATUS_UNKNOWN = 0x0, | |
1058 CSSM_TP_CONFIRM_ACCEPT = 0x1, | |
1059 CSSM_TP_CONFIRM_REJECT = 0x2 | |
1060 } | |
1061 | |
1062 enum | |
1063 { | |
1064 CSSM_ESTIMATED_TIME_UNKNOWN = -1 | |
1065 } | |
1066 | |
1067 enum | |
1068 { | |
1069 CSSM_ELAPSED_TIME_UNKNOWN = -1, | |
1070 CSSM_ELAPSED_TIME_COMPLETE = -2 | |
1071 } | |
1072 | |
1073 enum | |
1074 { | |
1075 CSSM_TP_CERTISSUE_STATUS_UNKNOWN = 0x0, | |
1076 CSSM_TP_CERTISSUE_OK = 0x1, | |
1077 CSSM_TP_CERTISSUE_OKWITHCERTMODS = 0x2, | |
1078 CSSM_TP_CERTISSUE_OKWITHSERVICEMODS = 0x3, | |
1079 CSSM_TP_CERTISSUE_REJECTED = 0x4, | |
1080 CSSM_TP_CERTISSUE_NOT_AUTHORIZED = 0x5, | |
1081 CSSM_TP_CERTISSUE_WILL_BE_REVOKED = 0x6 | |
1082 } | |
1083 | |
1084 enum | |
1085 { | |
1086 CSSM_TP_CERTCHANGE_NONE = 0x0, | |
1087 CSSM_TP_CERTCHANGE_REVOKE = 0x1, | |
1088 CSSM_TP_CERTCHANGE_HOLD = 0x2, | |
1089 CSSM_TP_CERTCHANGE_RELEASE = 0x3 | |
1090 } | |
1091 | |
1092 enum | |
1093 { | |
1094 CSSM_TP_CERTCHANGE_REASON_UNKNOWN = 0x0, | |
1095 CSSM_TP_CERTCHANGE_REASON_KEYCOMPROMISE = 0x1, | |
1096 CSSM_TP_CERTCHANGE_REASON_CACOMPROMISE = 0x2, | |
1097 CSSM_TP_CERTCHANGE_REASON_CEASEOPERATION = 0x3, | |
1098 CSSM_TP_CERTCHANGE_REASON_AFFILIATIONCHANGE = 0x4, | |
1099 CSSM_TP_CERTCHANGE_REASON_SUPERCEDED = 0x5, | |
1100 CSSM_TP_CERTCHANGE_REASON_SUSPECTEDCOMPROMISE = 0x6, | |
1101 CSSM_TP_CERTCHANGE_REASON_HOLDRELEASE = 0x7 | |
1102 } | |
1103 | |
1104 enum | |
1105 { | |
1106 CSSM_TP_CERTCHANGE_STATUS_UNKNOWN = 0x0, | |
1107 CSSM_TP_CERTCHANGE_OK = 0x1, | |
1108 CSSM_TP_CERTCHANGE_OKWITHNEWTIME = 0x2, | |
1109 CSSM_TP_CERTCHANGE_WRONGCA = 0x3, | |
1110 CSSM_TP_CERTCHANGE_REJECTED = 0x4, | |
1111 CSSM_TP_CERTCHANGE_NOT_AUTHORIZED = 0x5 | |
1112 } | |
1113 | |
1114 enum | |
1115 { | |
1116 CSSM_TP_CERTVERIFY_UNKNOWN = 0x0, | |
1117 CSSM_TP_CERTVERIFY_VALID = 0x1, | |
1118 CSSM_TP_CERTVERIFY_INVALID = 0x2, | |
1119 CSSM_TP_CERTVERIFY_REVOKED = 0x3, | |
1120 CSSM_TP_CERTVERIFY_SUSPENDED = 0x4, | |
1121 CSSM_TP_CERTVERIFY_EXPIRED = 0x5, | |
1122 CSSM_TP_CERTVERIFY_NOT_VALID_YET = 0x6, | |
1123 CSSM_TP_CERTVERIFY_INVALID_AUTHORITY = 0x7, | |
1124 CSSM_TP_CERTVERIFY_INVALID_SIGNATURE = 0x8, | |
1125 CSSM_TP_CERTVERIFY_INVALID_CERT_VALUE = 0x9, | |
1126 CSSM_TP_CERTVERIFY_INVALID_CERTGROUP = 0xA, | |
1127 CSSM_TP_CERTVERIFY_INVALID_POLICY = 0xB, | |
1128 CSSM_TP_CERTVERIFY_INVALID_POLICY_IDS = 0xC, | |
1129 CSSM_TP_CERTVERIFY_INVALID_BASIC_CONSTRAINTS = 0xD, | |
1130 CSSM_TP_CERTVERIFY_INVALID_CRL_DIST_PT = 0xE, | |
1131 CSSM_TP_CERTVERIFY_INVALID_NAME_TREE = 0xF, | |
1132 CSSM_TP_CERTVERIFY_UNKNOWN_CRITICAL_EXT = 0x10 | |
1133 } | |
1134 | |
1135 enum | |
1136 { | |
1137 CSSM_TP_CERTNOTARIZE_STATUS_UNKNOWN = 0x0, | |
1138 CSSM_TP_CERTNOTARIZE_OK = 0x1, | |
1139 CSSM_TP_CERTNOTARIZE_OKWITHOUTFIELDS = 0x2, | |
1140 CSSM_TP_CERTNOTARIZE_OKWITHSERVICEMODS = 0x3, | |
1141 CSSM_TP_CERTNOTARIZE_REJECTED = 0x4, | |
1142 CSSM_TP_CERTNOTARIZE_NOT_AUTHORIZED = 0x5 | |
1143 } | |
1144 | |
1145 enum | |
1146 { | |
1147 CSSM_TP_CERTRECLAIM_STATUS_UNKNOWN = 0x0, | |
1148 CSSM_TP_CERTRECLAIM_OK = 0x1, | |
1149 CSSM_TP_CERTRECLAIM_NOMATCH = 0x2, | |
1150 CSSM_TP_CERTRECLAIM_REJECTED = 0x3, | |
1151 CSSM_TP_CERTRECLAIM_NOT_AUTHORIZED = 0x4 | |
1152 } | |
1153 | |
1154 enum | |
1155 { | |
1156 CSSM_TP_CRLISSUE_STATUS_UNKNOWN = 0x0, | |
1157 CSSM_TP_CRLISSUE_OK = 0x1, | |
1158 CSSM_TP_CRLISSUE_NOT_CURRENT = 0x2, | |
1159 CSSM_TP_CRLISSUE_INVALID_DOMAIN = 0x3, | |
1160 CSSM_TP_CRLISSUE_UNKNOWN_IDENTIFIER = 0x4, | |
1161 CSSM_TP_CRLISSUE_REJECTED = 0x5, | |
1162 CSSM_TP_CRLISSUE_NOT_AUTHORIZED = 0x6 | |
1163 } | |
1164 | |
1165 enum | |
1166 { | |
1167 CSSM_TP_FORM_TYPE_GENERIC = 0x0, | |
1168 CSSM_TP_FORM_TYPE_REGISTRATION = 0x1 | |
1169 } | |
1170 | |
1171 enum | |
1172 { | |
1173 CSSM_CL_TEMPLATE_INTERMEDIATE_CERT = 1, | |
1174 CSSM_CL_TEMPLATE_PKIX_CERTTEMPLATE = 2 | |
1175 } | |
1176 | |
1177 enum | |
1178 { | |
1179 CSSM_CERT_BUNDLE_UNKNOWN = 0x00, | |
1180 CSSM_CERT_BUNDLE_CUSTOM = 0x01, | |
1181 CSSM_CERT_BUNDLE_PKCS7_SIGNED_DATA = 0x02, | |
1182 CSSM_CERT_BUNDLE_PKCS7_SIGNED_ENVELOPED_DATA = 0x03, | |
1183 CSSM_CERT_BUNDLE_PKCS12 = 0x04, | |
1184 CSSM_CERT_BUNDLE_PFX = 0x05, | |
1185 CSSM_CERT_BUNDLE_SPKI_SEQUENCE = 0x06, | |
1186 CSSM_CERT_BUNDLE_PGP_KEYRING = 0x07, | |
1187 CSSM_CERT_BUNDLE_LAST = 0x7FFF, | |
1188 CSSM_CL_CUSTOM_CERT_BUNDLE_TYPE = 0x8000 | |
1189 } | |
1190 | |
1191 enum | |
1192 { | |
1193 CSSM_CERT_BUNDLE_ENCODING_UNKNOWN = 0x00, | |
1194 CSSM_CERT_BUNDLE_ENCODING_CUSTOM = 0x01, | |
1195 CSSM_CERT_BUNDLE_ENCODING_BER = 0x02, | |
1196 CSSM_CERT_BUNDLE_ENCODING_DER = 0x03, | |
1197 CSSM_CERT_BUNDLE_ENCODING_SEXPR = 0x04, | |
1198 CSSM_CERT_BUNDLE_ENCODING_PGP = 0x05 | |
1199 } | |
1200 | |
1201 enum | |
1202 { | |
1203 CSSM_FIELDVALUE_COMPLEX_DATA_TYPE = 0xFFFFFFFF | |
1204 } | |
1205 | |
1206 enum | |
1207 { | |
1208 CSSM_DB_ATTRIBUTE_NAME_AS_STRING = 0, | |
1209 CSSM_DB_ATTRIBUTE_NAME_AS_OID = 1, | |
1210 CSSM_DB_ATTRIBUTE_NAME_AS_INTEGER = 2 | |
1211 } | |
1212 | |
1213 enum | |
1214 { | |
1215 CSSM_DB_ATTRIBUTE_FORMAT_STRING = 0, | |
1216 CSSM_DB_ATTRIBUTE_FORMAT_SINT32 = 1, | |
1217 CSSM_DB_ATTRIBUTE_FORMAT_UINT32 = 2, | |
1218 CSSM_DB_ATTRIBUTE_FORMAT_BIG_NUM = 3, | |
1219 CSSM_DB_ATTRIBUTE_FORMAT_REAL = 4, | |
1220 CSSM_DB_ATTRIBUTE_FORMAT_TIME_DATE = 5, | |
1221 CSSM_DB_ATTRIBUTE_FORMAT_BLOB = 6, | |
1222 CSSM_DB_ATTRIBUTE_FORMAT_MULTI_UINT32 = 7, | |
1223 CSSM_DB_ATTRIBUTE_FORMAT_COMPLEX = 8 | |
1224 } | |
1225 | |
1226 enum | |
1227 { | |
1228 CSSM_DB_RECORDTYPE_SCHEMA_START = 0x00000000, | |
1229 CSSM_DB_RECORDTYPE_SCHEMA_END = CSSM_DB_RECORDTYPE_SCHEMA_START + 4, | |
1230 CSSM_DB_RECORDTYPE_OPEN_GROUP_START = 0x0000000A, | |
1231 CSSM_DB_RECORDTYPE_OPEN_GROUP_END = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 8, | |
1232 CSSM_DB_RECORDTYPE_APP_DEFINED_START = 0x80000000, | |
1233 CSSM_DB_RECORDTYPE_APP_DEFINED_END = 0xffffffff, | |
1234 CSSM_DL_DB_SCHEMA_INFO = CSSM_DB_RECORDTYPE_SCHEMA_START + 0, | |
1235 CSSM_DL_DB_SCHEMA_INDEXES = CSSM_DB_RECORDTYPE_SCHEMA_START + 1, | |
1236 CSSM_DL_DB_SCHEMA_ATTRIBUTES = CSSM_DB_RECORDTYPE_SCHEMA_START + 2, | |
1237 CSSM_DL_DB_SCHEMA_PARSING_MODULE = CSSM_DB_RECORDTYPE_SCHEMA_START + 3, | |
1238 CSSM_DL_DB_RECORD_ANY = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 0, | |
1239 CSSM_DL_DB_RECORD_CERT = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 1, | |
1240 CSSM_DL_DB_RECORD_CRL = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 2, | |
1241 CSSM_DL_DB_RECORD_POLICY = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 3, | |
1242 CSSM_DL_DB_RECORD_GENERIC = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 4, | |
1243 CSSM_DL_DB_RECORD_PUBLIC_KEY = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 5, | |
1244 CSSM_DL_DB_RECORD_PRIVATE_KEY = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 6, | |
1245 CSSM_DL_DB_RECORD_SYMMETRIC_KEY = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 7, | |
1246 CSSM_DL_DB_RECORD_ALL_KEYS = CSSM_DB_RECORDTYPE_OPEN_GROUP_START + 8 | |
1247 } | |
1248 | |
1249 enum | |
1250 { | |
1251 CSSM_DB_CERT_USE_TRUSTED = 0x00000001, | |
1252 CSSM_DB_CERT_USE_SYSTEM = 0x00000002, | |
1253 CSSM_DB_CERT_USE_OWNER = 0x00000004, | |
1254 CSSM_DB_CERT_USE_REVOKED = 0x00000008, | |
1255 CSSM_DB_CERT_USE_SIGNING = 0x00000010, | |
1256 CSSM_DB_CERT_USE_PRIVACY = 0x00000020 | |
1257 } | |
1258 | |
1259 enum | |
1260 { | |
1261 CSSM_DB_INDEX_UNIQUE = 0, | |
1262 CSSM_DB_INDEX_NONUNIQUE = 1 | |
1263 } | |
1264 | |
1265 enum | |
1266 { | |
1267 CSSM_DB_INDEX_ON_UNKNOWN = 0, | |
1268 CSSM_DB_INDEX_ON_ATTRIBUTE = 1, | |
1269 CSSM_DB_INDEX_ON_RECORD = 2 | |
1270 } | |
1271 | |
1272 enum | |
1273 { | |
1274 CSSM_DB_ACCESS_READ = 0x00001, | |
1275 CSSM_DB_ACCESS_WRITE = 0x00002, | |
1276 CSSM_DB_ACCESS_PRIVILEGED = 0x00004 | |
1277 } | |
1278 | |
1279 enum | |
1280 { | |
1281 CSSM_DB_MODIFY_ATTRIBUTE_NONE = 0, | |
1282 CSSM_DB_MODIFY_ATTRIBUTE_ADD = CSSM_DB_MODIFY_ATTRIBUTE_NONE + 1, | |
1283 CSSM_DB_MODIFY_ATTRIBUTE_DELETE = CSSM_DB_MODIFY_ATTRIBUTE_NONE + 2, | |
1284 CSSM_DB_MODIFY_ATTRIBUTE_REPLACE = CSSM_DB_MODIFY_ATTRIBUTE_NONE + 3 | |
1285 } | |
1286 | |
1287 enum | |
1288 { | |
1289 CSSM_DB_EQUAL = 0, | |
1290 CSSM_DB_NOT_EQUAL = 1, | |
1291 CSSM_DB_LESS_THAN = 2, | |
1292 CSSM_DB_GREATER_THAN = 3, | |
1293 CSSM_DB_CONTAINS = 4, | |
1294 CSSM_DB_CONTAINS_INITIAL_SUBSTRING = 5, | |
1295 CSSM_DB_CONTAINS_FINAL_SUBSTRING = 6 | |
1296 } | |
1297 | |
1298 enum | |
1299 { | |
1300 CSSM_DB_NONE = 0, | |
1301 CSSM_DB_AND = 1, | |
1302 CSSM_DB_OR = 2 | |
1303 } | |
1304 | |
1305 enum | |
1306 { | |
1307 CSSM_QUERY_TIMELIMIT_NONE = 0 | |
1308 } | |
1309 | |
1310 enum | |
1311 { | |
1312 CSSM_QUERY_SIZELIMIT_NONE = 0 | |
1313 } | |
1314 | |
1315 enum | |
1316 { | |
1317 CSSM_QUERY_RETURN_DATA = 0x01 | |
1318 } | |
1319 | |
1320 enum | |
1321 { | |
1322 CSSM_DL_UNKNOWN = 0, | |
1323 CSSM_DL_CUSTOM = 1, | |
1324 CSSM_DL_LDAP = 2, | |
1325 CSSM_DL_ODBC = 3, | |
1326 CSSM_DL_PKCS11 = 4, | |
1327 CSSM_DL_FFS = 5, | |
1328 CSSM_DL_MEMORY = 6, | |
1329 CSSM_DL_REMOTEDIR = 7 | |
1330 } | |
1331 | |
1332 enum | |
1333 { | |
1334 CSSM_DB_DATASTORES_UNKNOWN = 0xFFFFFFFF | |
1335 } | |
1336 | |
1337 enum | |
1338 { | |
1339 CSSM_DB_TRANSACTIONAL_MODE = 0, | |
1340 CSSM_DB_FILESYSTEMSCAN_MODE = 1 | |
1341 } | |
1342 | |
1343 struct CSSM_DATA | |
1344 { | |
1345 uint Length; | |
1346 char* Data; | |
1347 } | |
1348 | |
1349 | |
1350 struct CSSM_GUID | |
1351 { | |
1352 uint Data1; | |
1353 ushort Data2; | |
1354 ushort Data3; | |
1355 char* Data4; | |
1356 } | |
1357 | |
1358 | |
1359 struct CSSM_VERSION | |
1360 { | |
1361 uint Major; | |
1362 uint Minor; | |
1363 } | |
1364 | |
1365 | |
1366 struct CSSM_SUBSERVICE_UID | |
1367 { | |
1368 CSSM_GUID Guid; | |
1369 CSSM_VERSION Version; | |
1370 uint SubserviceId; | |
1371 uint SubserviceType; | |
1372 } | |
1373 | |
1374 | |
1375 struct CSSM_NET_ADDRESS | |
1376 { | |
1377 uint AddressType; | |
1378 CSSM_DATA Address; | |
1379 } | |
1380 | |
1381 | |
1382 struct CSSM_CRYPTO_DATA | |
1383 { | |
1384 CSSM_DATA Param; | |
1385 CSSM_CALLBACK Callback; | |
1386 void* CallerCtx; | |
1387 } | |
1388 | |
1389 | |
1390 struct CSSM_LIST | |
1391 { | |
1392 uint ListType; | |
1393 CSSM_LIST_ELEMENT_PTR Head; | |
1394 CSSM_LIST_ELEMENT_PTR Tail; | |
1395 } | |
1396 | |
1397 | |
1398 struct CSSM_LIST_ELEMENT | |
1399 { | |
1400 CSSM_LIST_ELEMENT* NextElement; | |
1401 CSSM_WORDID_TYPE WordID; | |
1402 CSSM_LIST_ELEMENT_TYPE ElementType; | |
1403 | |
1404 union | |
1405 { | |
1406 CSSM_LIST Sublist; | |
1407 CSSM_DATA Word; | |
1408 } | |
1409 } | |
1410 | |
1411 struct CSSM_TUPLE | |
1412 { | |
1413 CSSM_LIST Issuer; | |
1414 int Subject; | |
1415 CSSM_BOOL Delegate; | |
1416 CSSM_LIST AuthorizationTag; | |
1417 CSSM_LIST ValidityPeriod; | |
1418 } | |
1419 | |
1420 | |
1421 struct CSSM_TUPLEGROUP | |
1422 { | |
1423 uint32 NumberOfTuples; | |
1424 CSSM_TUPLE_PTR Tuples; | |
1425 } | |
1426 | |
1427 | |
1428 struct CSSM_SAMPLE | |
1429 { | |
1430 CSSM_LIST TypedSample; | |
1431 CSSM_SUBSERVICE_UID* Verifier; | |
1432 } | |
1433 | |
1434 | |
1435 struct CSSM_SAMPLEGROUP | |
1436 { | |
1437 uint32 NumberOfSamples; | |
1438 CSSM_SAMPLE* Samples; | |
1439 } | |
1440 | |
1441 | |
1442 struct CSSM_MEMORY_FUNCS | |
1443 { | |
1444 CSSM_MALLOC malloc_func; | |
1445 CSSM_FREE free_func; | |
1446 CSSM_REALLOC realloc_func; | |
1447 CSSM_CALLOC calloc_func; | |
1448 void* AllocRef; | |
1449 } | |
1450 | |
1451 | |
1452 struct CSSM_ENCODED_CERT | |
1453 { | |
1454 uint CertType; | |
1455 CSSM_CERT_ENCODING CertEncoding; | |
1456 CSSM_DATA CertBlob; | |
1457 } | |
1458 | |
1459 | |
1460 struct CSSM_PARSED_CERT | |
1461 { | |
1462 uint CertType; | |
1463 CSSM_CERT_PARSE_FORMAT ParsedCertFormat; | |
1464 void* ParsedCert; | |
1465 } | |
1466 | |
1467 | |
1468 struct CSSM_CERT_PAIR | |
1469 { | |
1470 CSSM_ENCODED_CERT EncodedCert; | |
1471 CSSM_PARSED_CERT ParsedCert; | |
1472 } | |
1473 | |
1474 | |
1475 struct CSSM_CERTGROUP | |
1476 { | |
1477 CSSM_CERT_TYPE CertType; | |
1478 CSSM_CERT_ENCODING CertEncoding; | |
1479 uint NumCerts; | |
1480 | |
1481 union | |
1482 { | |
1483 CSSM_DATA_PTR CertList; | |
1484 CSSM_ENCODED_CERT_PTR EncodedCertList; | |
1485 CSSM_PARSED_CERT_PTR ParsedCertList; | |
1486 CSSM_CERT_PAIR_PTR PairCertList; | |
1487 } | |
1488 | |
1489 CSSM_CERTGROUP_TYPE CertGroupType; | |
1490 void* Reserved; | |
1491 } | |
1492 | |
1493 struct CSSM_BASE_CERTS | |
1494 { | |
1495 CSSM_TP_HANDLE TPHandle; | |
1496 CSSM_CL_HANDLE CLHandle; | |
1497 byte[68] Certs; | |
1498 } | |
1499 | |
1500 | |
1501 struct CSSM_ACCESS_CREDENTIALS | |
1502 { | |
1503 CSSM_STRING EntryTag; | |
1504 CSSM_BASE_CERTS BaseCerts; | |
1505 CSSM_SAMPLEGROUP Samples; | |
1506 CSSM_CHALLENGE_CALLBACK Callback; | |
1507 uint CallerCtx; | |
1508 } | |
1509 | |
1510 | |
1511 struct CSSM_AUTHORIZATIONGROUP | |
1512 { | |
1513 uint32 NumberOfAuthTags; | |
1514 CSSM_ACL_AUTHORIZATION_TAG* AuthTags; | |
1515 } | |
1516 | |
1517 | |
1518 struct CSSM_ACL_VALIDITY_PERIOD | |
1519 { | |
1520 CSSM_DATA StartDate; | |
1521 CSSM_DATA EndDate; | |
1522 } | |
1523 | |
1524 | |
1525 struct CSSM_ACL_ENTRY_PROTOTYPE | |
1526 { | |
1527 CSSM_LIST TypedSubject; | |
1528 CSSM_BOOL Delegate; | |
1529 byte[68] Authorization; | |
1530 CSSM_ACL_VALIDITY_PERIOD TimeRange; | |
1531 CSSM_STRING EntryTag; | |
1532 } | |
1533 | |
1534 | |
1535 struct CSSM_ACL_OWNER_PROTOTYPE | |
1536 { | |
1537 CSSM_LIST TypedSubject; | |
1538 CSSM_BOOL Delegate; | |
1539 } | |
1540 | |
1541 | |
1542 struct CSSM_ACL_ENTRY_INPUT | |
1543 { | |
1544 CSSM_ACL_ENTRY_PROTOTYPE Prototype; | |
1545 CSSM_ACL_SUBJECT_CALLBACK Callback; | |
1546 void* CallerContext; | |
1547 } | |
1548 | |
1549 | |
1550 struct CSSM_RESOURCE_CONTROL_CONTEXT | |
1551 { | |
1552 CSSM_ACCESS_CREDENTIALS_PTR AccessCred; | |
1553 CSSM_ACL_ENTRY_INPUT InitialAclEntry; | |
1554 } | |
1555 | |
1556 | |
1557 struct CSSM_ACL_ENTRY_INFO | |
1558 { | |
1559 CSSM_ACL_ENTRY_PROTOTYPE EntryPublicInfo; | |
1560 uint EntryHandle; | |
1561 } | |
1562 | |
1563 | |
1564 struct CSSM_ACL_EDIT | |
1565 { | |
1566 CSSM_ACL_EDIT_MODE EditMode; | |
1567 CSSM_ACL_HANDLE OldEntryHandle; | |
1568 byte[68] NewEntry; | |
1569 } | |
1570 | |
1571 | |
1572 struct CSSM_FUNC_NAME_ADDR | |
1573 { | |
1574 CSSM_STRING Name; | |
1575 char* Address; | |
1576 } | |
1577 | |
1578 | |
1579 struct CSSM_DATE | |
1580 { | |
1581 char* Year; | |
1582 uint8* Month; | |
1583 uint Day; | |
1584 } | |
1585 | |
1586 | |
1587 struct CSSM_RANGE | |
1588 { | |
1589 uint32 Min; | |
1590 uint Max; | |
1591 } | |
1592 | |
1593 | |
1594 struct CSSM_QUERY_SIZE_DATA | |
1595 { | |
1596 uint32 SizeInputBlock; | |
1597 uint SizeOutputBlock; | |
1598 } | |
1599 | |
1600 | |
1601 struct CSSM_KEY_SIZE | |
1602 { | |
1603 uint32 LogicalKeySizeInBits; | |
1604 uint EffectiveKeySizeInBits; | |
1605 } | |
1606 | |
1607 | |
1608 struct CSSM_KEYHEADER | |
1609 { | |
1610 uint HeaderVersion; | |
1611 uint CspId; | |
1612 uint BlobType; | |
1613 uint Format; | |
1614 uint AlgorithmId; | |
1615 uint KeyClass; | |
1616 uint LogicalKeySizeInBits; | |
1617 CSSM_KEYATTR_FLAGS KeyAttr; | |
1618 CSSM_KEYUSE KeyUsage; | |
1619 uint StartDate; | |
1620 uint EndDate; | |
1621 uint WrapAlgorithmId; | |
1622 CSSM_ENCRYPT_MODE WrapMode; | |
1623 uint32 Reserved; | |
1624 } | |
1625 | |
1626 | |
1627 struct CSSM_KEY | |
1628 { | |
1629 CSSM_KEYHEADER KeyHeader; | |
1630 int KeyData; | |
1631 } | |
1632 | |
1633 | |
1634 struct CSSM_DL_DB_HANDLE | |
1635 { | |
1636 CSSM_DL_HANDLE DLHandle; | |
1637 CSSM_DB_HANDLE DBHandle; | |
1638 } | |
1639 | |
1640 | |
1641 struct CSSM_CONTEXT_ATTRIBUTE | |
1642 { | |
1643 uint Attribute; | |
1644 } | |
1645 | |
1646 | |
1647 struct CSSM_CONTEXT | |
1648 { | |
1649 CSSM_CONTEXT_TYPE ContextType; | |
1650 int AlgorithmType; | |
1651 int NumberOfAttributes; | |
1652 uint ContextAttributes; | |
1653 uint CSPHandle; | |
1654 uint Privileged; | |
1655 uint32 EncryptionProhibited; | |
1656 uint WorkFactor; | |
1657 uint32 Reserved; | |
1658 } | |
1659 | |
1660 | |
1661 struct CSSM_PKCS1_OAEP_PARAMS | |
1662 { | |
1663 uint32 HashAlgorithm; | |
1664 uint HashParams; | |
1665 CSSM_PKCS_OAEP_MGF MGF; | |
1666 CSSM_DATA MGFParams; | |
1667 int PSource; | |
1668 uint PSourceParams; | |
1669 } | |
1670 | |
1671 | |
1672 struct CSSM_CSP_OPERATIONAL_STATISTICS | |
1673 { | |
1674 uint UserAuthenticated; | |
1675 uint DeviceFlags; | |
1676 uint TokenMaxSessionCount; | |
1677 uint TokenOpenedSessionCount; | |
1678 uint TokenMaxRWSessionCount; | |
1679 uint TokenOpenedRWSessionCount; | |
1680 uint TokenTotalPublicMem; | |
1681 uint32 TokenFreePublicMem; | |
1682 uint32 TokenTotalPrivateMem; | |
1683 uint32 TokenFreePrivateMem; | |
1684 } | |
1685 | |
1686 | |
1687 struct CSSM_PKCS5_PBKDF1_PARAMS | |
1688 { | |
1689 CSSM_DATA Passphrase; | |
1690 uint InitVector; | |
1691 } | |
1692 | |
1693 | |
1694 struct CSSM_PKCS5_PBKDF2_PARAMS | |
1695 { | |
1696 CSSM_DATA Passphrase; | |
1697 CSSM_PKCS5_PBKDF2_PRF PseudoRandomFunction; | |
1698 } | |
1699 | |
1700 | |
1701 struct CSSM_KEA_DERIVE_PARAMS | |
1702 { | |
1703 CSSM_DATA Rb; | |
1704 CSSM_DATA Yb; | |
1705 } | |
1706 | |
1707 | |
1708 struct CSSM_TP_AUTHORITY_ID | |
1709 { | |
1710 CSSM_DATA* AuthorityCert; | |
1711 CSSM_NET_ADDRESS_PTR AuthorityLocation; | |
1712 } | |
1713 | |
1714 | |
1715 struct CSSM_FIELD | |
1716 { | |
1717 uint FieldOid; | |
1718 CSSM_DATA FieldValue; | |
1719 } | |
1720 | |
1721 | |
1722 struct CSSM_TP_POLICYINFO | |
1723 { | |
1724 uint32 NumberOfPolicyIds; | |
1725 uint PolicyIds; | |
1726 void* PolicyControl; | |
1727 } | |
1728 | |
1729 | |
1730 struct CSSM_DL_DB_LIST | |
1731 { | |
1732 uint32 NumHandles; | |
1733 char* DLDBHandle; | |
1734 } | |
1735 | |
1736 | |
1737 struct CSSM_TP_CALLERAUTH_CONTEXT | |
1738 { | |
1739 CSSM_TP_POLICYINFO Policy; | |
1740 uint VerifyTime; | |
1741 CSSM_TP_STOP_ON VerificationAbortOn; | |
1742 CSSM_TP_VERIFICATION_RESULTS_CALLBACK CallbackWithVerifiedCert; | |
1743 uint32 NumberOfAnchorCerts; | |
1744 CSSM_DATA_PTR AnchorCerts; | |
1745 uint DBList; | |
1746 uint CallerCredentials; | |
1747 } | |
1748 | |
1749 | |
1750 struct CSSM_ENCODED_CRL | |
1751 { | |
1752 CSSM_CRL_TYPE CrlType; | |
1753 uint CrlEncoding; | |
1754 uint CrlBlob; | |
1755 } | |
1756 | |
1757 | |
1758 struct CSSM_PARSED_CRL | |
1759 { | |
1760 CSSM_CRL_TYPE CrlType; | |
1761 CSSM_CRL_PARSE_FORMAT ParsedCrlFormat; | |
1762 void* ParsedCrl; | |
1763 } | |
1764 | |
1765 | |
1766 struct CSSM_CRL_PAIR | |
1767 { | |
1768 uint EncodedCrl; | |
1769 CSSM_PARSED_CRL ParsedCrl; | |
1770 } | |
1771 | |
1772 | |
1773 struct CSSM_CRLGROUP | |
1774 { | |
1775 CSSM_CRL_TYPE CrlType; | |
1776 CSSM_CRL_ENCODING CrlEncoding; | |
1777 uint NumberOfCrls; | |
1778 | |
1779 union | |
1780 { | |
1781 CSSM_DATA_PTR CrlList; | |
1782 CSSM_ENCODED_CRL_PTR EncodedCrlList; | |
1783 CSSM_PARSED_CRL_PTR ParsedCrlList; | |
1784 CSSM_CRL_PAIR_PTR PairCrlList; | |
1785 } | |
1786 | |
1787 CSSM_CRLGROUP_TYPE CrlGroupType; | |
1788 } | |
1789 | |
1790 struct CSSM_FIELDGROUP | |
1791 { | |
1792 int NumberOfFields; | |
1793 CSSM_FIELD_PTR Fields; | |
1794 } | |
1795 | |
1796 | |
1797 struct CSSM_EVIDENCE | |
1798 { | |
1799 CSSM_EVIDENCE_FORM EvidenceForm; | |
1800 void* Evidence; | |
1801 } | |
1802 | |
1803 | |
1804 struct CSSM_TP_VERIFY_CONTEXT | |
1805 { | |
1806 CSSM_TP_ACTION Action; | |
1807 uint ActionData; | |
1808 CSSM_CRLGROUP Crls; | |
1809 CSSM_TP_CALLERAUTH_CONTEXT_PTR Cred; | |
1810 } | |
1811 | |
1812 | |
1813 struct CSSM_TP_VERIFY_CONTEXT_RESULT | |
1814 { | |
1815 uint32 NumberOfEvidences; | |
1816 CSSM_EVIDENCE_PTR Evidence; | |
1817 } | |
1818 | |
1819 | |
1820 struct CSSM_TP_REQUEST_SET | |
1821 { | |
1822 uint32 NumberOfRequests; | |
1823 void* Requests; | |
1824 } | |
1825 | |
1826 | |
1827 struct CSSM_TP_RESULT_SET | |
1828 { | |
1829 uint32 NumberOfResults; | |
1830 void* Results; | |
1831 } | |
1832 | |
1833 | |
1834 struct CSSM_TP_CONFIRM_RESPONSE | |
1835 { | |
1836 int NumberOfResponses; | |
1837 uint Responses; | |
1838 } | |
1839 | |
1840 | |
1841 struct CSSM_TP_CERTISSUE_INPUT | |
1842 { | |
1843 uint CSPSubserviceUid; | |
1844 uint CLHandle; | |
1845 uint32 NumberOfTemplateFields; | |
1846 CSSM_FIELD_PTR SubjectCertFields; | |
1847 CSSM_TP_SERVICES MoreServiceRequests; | |
1848 uint NumberOfServiceControls; | |
1849 CSSM_FIELD_PTR ServiceControls; | |
1850 uint UserCredentials; | |
1851 } | |
1852 | |
1853 | |
1854 struct CSSM_TP_CERTISSUE_OUTPUT | |
1855 { | |
1856 uint IssueStatus; | |
1857 uint CertGroup; | |
1858 int PerformedServiceRequests; | |
1859 } | |
1860 | |
1861 | |
1862 struct CSSM_TP_CERTCHANGE_INPUT | |
1863 { | |
1864 CSSM_TP_CERTCHANGE_ACTION Action; | |
1865 char* Reason; | |
1866 CSSM_CL_HANDLE CLHandle; | |
1867 CSSM_DATA_PTR Cert; | |
1868 uint ChangeInfo; | |
1869 CSSM_TIMESTRING StartTime; | |
1870 CSSM_ACCESS_CREDENTIALS_PTR CallerCredentials; | |
1871 } | |
1872 | |
1873 | |
1874 struct CSSM_TP_CERTCHANGE_OUTPUT | |
1875 { | |
1876 CSSM_TP_CERTCHANGE_STATUS ActionStatus; | |
1877 CSSM_FIELD RevokeInfo; | |
1878 } | |
1879 | |
1880 | |
1881 struct CSSM_TP_CERTVERIFY_INPUT | |
1882 { | |
1883 uint CLHandle; | |
1884 uint Cert; | |
1885 CSSM_TP_VERIFY_CONTEXT_PTR VerifyContext; | |
1886 } | |
1887 | |
1888 | |
1889 struct CSSM_TP_CERTVERIFY_OUTPUT | |
1890 { | |
1891 int VerifyStatus; | |
1892 uint NumberOfEvidence; | |
1893 CSSM_EVIDENCE_PTR Evidence; | |
1894 } | |
1895 | |
1896 | |
1897 struct CSSM_TP_CERTNOTARIZE_INPUT | |
1898 { | |
1899 uint CLHandle; | |
1900 uint NumberOfFields; | |
1901 uint MoreFields; | |
1902 CSSM_FIELD_PTR SignScope; | |
1903 uint32 ScopeSize; | |
1904 CSSM_TP_SERVICES MoreServiceRequests; | |
1905 uint NumberOfServiceControls; | |
1906 CSSM_FIELD_PTR ServiceControls; | |
1907 uint UserCredentials; | |
1908 } | |
1909 | |
1910 | |
1911 struct CSSM_TP_CERTNOTARIZE_OUTPUT | |
1912 { | |
1913 int NotarizeStatus; | |
1914 uint NotarizedCertGroup; | |
1915 CSSM_TP_SERVICES PerformedServiceRequests; | |
1916 } | |
1917 | |
1918 | |
1919 struct CSSM_TP_CERTRECLAIM_INPUT | |
1920 { | |
1921 CSSM_CL_HANDLE CLHandle; | |
1922 uint NumberOfSelectionFields; | |
1923 CSSM_FIELD_PTR SelectionFields; | |
1924 ulong UserCredentials; | |
1925 } | |
1926 | |
1927 | |
1928 struct CSSM_TP_CERTRECLAIM_OUTPUT | |
1929 { | |
1930 int ReclaimStatus; | |
1931 uint ReclaimedCertGroup; | |
1932 char* KeyCacheHandle; | |
1933 } | |
1934 | |
1935 | |
1936 struct CSSM_TP_CRLISSUE_INPUT | |
1937 { | |
1938 CSSM_CL_HANDLE CLHandle; | |
1939 uint32 CrlIdentifier; | |
1940 uint CrlThisTime; | |
1941 CSSM_FIELD_PTR PolicyIdentifier; | |
1942 char* CallerCredentials; | |
1943 } | |
1944 | |
1945 | |
1946 struct CSSM_TP_CRLISSUE_OUTPUT | |
1947 { | |
1948 uint IssueStatus; | |
1949 uint Crl; | |
1950 CSSM_TIMESTRING CrlNextTime; | |
1951 } | |
1952 | |
1953 | |
1954 struct CSSM_CERT_BUNDLE_HEADER | |
1955 { | |
1956 CSSM_CERT_BUNDLE_TYPE BundleType; | |
1957 CSSM_CERT_BUNDLE_ENCODING BundleEncoding; | |
1958 } | |
1959 | |
1960 | |
1961 struct CSSM_CERT_BUNDLE | |
1962 { | |
1963 CSSM_CERT_BUNDLE_HEADER BundleHeader; | |
1964 CSSM_DATA Bundle; | |
1965 } | |
1966 | |
1967 | |
1968 struct CSSM_DB_ATTRIBUTE_INFO | |
1969 { | |
1970 CSSM_DB_ATTRIBUTE_NAME_FORMAT AttributeNameFormat; | |
1971 | |
1972 union cssm_db_attribute_label | |
1973 { | |
1974 char* AttributeName; | |
1975 CSSM_OID AttributeOID; | |
1976 uint AttributeID; | |
1977 } | |
1978 | |
1979 cssm_db_attribute_label Label; | |
1980 CSSM_DB_ATTRIBUTE_FORMAT AttributeFormat; | |
1981 } | |
1982 | |
1983 struct CSSM_DB_ATTRIBUTE_DATA | |
1984 { | |
1985 uint Info; | |
1986 uint32 NumberOfValues; | |
1987 CSSM_DATA_PTR Value; | |
1988 } | |
1989 | |
1990 | |
1991 struct CSSM_DB_RECORD_ATTRIBUTE_INFO | |
1992 { | |
1993 uint DataRecordType; | |
1994 uint NumberOfAttributes; | |
1995 CSSM_DB_ATTRIBUTE_INFO_PTR AttributeInfo; | |
1996 } | |
1997 | |
1998 | |
1999 struct CSSM_DB_RECORD_ATTRIBUTE_DATA | |
2000 { | |
2001 uint DataRecordType; | |
2002 uint32 SemanticInformation; | |
2003 uint32 NumberOfAttributes; | |
2004 uint AttributeData; | |
2005 } | |
2006 | |
2007 | |
2008 struct CSSM_DB_PARSING_MODULE_INFO | |
2009 { | |
2010 CSSM_DB_RECORDTYPE RecordType; | |
2011 CSSM_SUBSERVICE_UID ModuleSubserviceUid; | |
2012 } | |
2013 | |
2014 | |
2015 struct CSSM_DB_INDEX_INFO | |
2016 { | |
2017 CSSM_DB_INDEX_TYPE IndexType; | |
2018 CSSM_DB_INDEXED_DATA_LOCATION IndexedDataLocation; | |
2019 uint Info; | |
2020 } | |
2021 | |
2022 | |
2023 struct CSSM_DB_UNIQUE_RECORD | |
2024 { | |
2025 CSSM_DB_INDEX_INFO RecordLocator; | |
2026 CSSM_DATA RecordIdentifier; | |
2027 } | |
2028 | |
2029 | |
2030 struct CSSM_DB_RECORD_INDEX_INFO | |
2031 { | |
2032 CSSM_DB_RECORDTYPE DataRecordType; | |
2033 uint32 NumberOfIndexes; | |
2034 CSSM_DB_INDEX_INFO_PTR IndexInfo; | |
2035 } | |
2036 | |
2037 | |
2038 struct CSSM_DBINFO | |
2039 { | |
2040 char* NumberOfRecordTypes; | |
2041 CSSM_DB_PARSING_MODULE_INFO_PTR DefaultParsingModules; | |
2042 CSSM_DB_RECORD_ATTRIBUTE_INFO_PTR RecordAttributeNames; | |
2043 uint RecordIndexes; | |
2044 CSSM_BOOL IsLocal; | |
2045 char* AccessPath; | |
2046 uint Reserved; | |
2047 } | |
2048 | |
2049 | |
2050 struct CSSM_SELECTION_PREDICATE | |
2051 { | |
2052 CSSM_DB_OPERATOR DbOperator; | |
2053 uint Attribute; | |
2054 } | |
2055 | |
2056 | |
2057 struct CSSM_QUERY_LIMITS | |
2058 { | |
2059 uint TimeLimit; | |
2060 uint32 SizeLimit; | |
2061 } | |
2062 | |
2063 | |
2064 struct CSSM_QUERY | |
2065 { | |
2066 uint RecordType; | |
2067 CSSM_DB_CONJUNCTIVE Conjunctive; | |
2068 uint NumSelectionPredicates; | |
2069 CSSM_SELECTION_PREDICATE_PTR SelectionPredicate; | |
2070 uint QueryLimits; | |
2071 CSSM_QUERY_FLAGS QueryFlags; | |
2072 } | |
2073 | |
2074 | |
2075 struct CSSM_DL_PKCS11_ATTRIBUTE | |
2076 { | |
2077 uint DeviceAccessFlags; | |
2078 } | |
2079 | |
2080 | |
2081 struct CSSM_NAME_LIST | |
2082 { | |
2083 uint32 NumStrings; | |
2084 uint String; | |
2085 } | |
2086 | |
2087 | |
2088 struct CSSM_DB_SCHEMA_ATTRIBUTE_INFO | |
2089 { | |
2090 uint AttributeId; | |
2091 uint AttributeName; | |
2092 uint AttributeNameID; | |
2093 uint DataType; | |
2094 } | |
2095 | |
2096 | |
2097 struct CSSM_DB_SCHEMA_INDEX_INFO | |
2098 { | |
2099 uint32 AttributeId; | |
2100 uint32 IndexId; | |
2101 CSSM_DB_INDEX_TYPE IndexType; | |
2102 CSSM_DB_INDEXED_DATA_LOCATION IndexedDataLocation; | |
2103 } | |
2104 |