1 /* This is a generated file */
2 #ifndef __hx509_private_h__
3 #define __hx509_private_h__
7 #if !defined(__GNUC__) && !defined(__attribute__)
8 #define __attribute__(x)
12 _hx509_AlgorithmIdentifier_cmp (
13 const AlgorithmIdentifier */
*p*/
,
14 const AlgorithmIdentifier */
*q*/
);
17 _hx509_Certificate_cmp (
18 const Certificate */
*p*/
,
19 const Certificate */
*q*/
);
22 _hx509_Name_to_string (
27 _hx509_Time2time_t (const Time */
*t*/
);
33 __attribute__ ((noreturn
, format (printf
, 1, 2)));
36 _hx509_calculate_path (
37 hx509_context
/*context*/,
40 hx509_certs
/*anchors*/,
41 unsigned int /*max_depth*/,
44 hx509_path */
*path*/
);
47 _hx509_cert_assign_key (
49 hx509_private_key
/*private_key*/);
53 hx509_context
/*context*/,
58 _hx509_cert_get_keyusage (
59 hx509_context
/*context*/,
64 _hx509_cert_get_version (const Certificate */
*t*/
);
67 _hx509_cert_is_parent_cmp (
68 const Certificate */
*subject*/
,
69 const Certificate */
*issuer*/
,
70 int /*allow_self_signed*/);
73 _hx509_cert_private_decrypt (
74 hx509_context
/*context*/,
75 const heim_octet_string */
*ciphertext*/
,
76 const heim_oid */
*encryption_oid*/
,
78 heim_octet_string */
*cleartext*/
);
81 _hx509_cert_private_key (hx509_cert
/*p*/);
84 _hx509_cert_private_key_exportable (hx509_cert
/*p*/);
87 _hx509_cert_set_release (
89 _hx509_cert_release_func
/*release*/,
94 hx509_context
/*context*/,
99 _hx509_certs_keys_add (
100 hx509_context
/*context*/,
101 hx509_certs
/*certs*/,
102 hx509_private_key
/*key*/);
105 _hx509_certs_keys_free (
106 hx509_context
/*context*/,
107 hx509_private_key */
*keys*/
);
110 _hx509_certs_keys_get (
111 hx509_context
/*context*/,
112 hx509_certs
/*certs*/,
113 hx509_private_key
**/
*keys*/
);
116 _hx509_check_key_usage (
117 hx509_context
/*context*/,
120 int /*req_present*/);
123 _hx509_collector_alloc (
124 hx509_context
/*context*/,
126 struct hx509_collector
**/
*collector*/
);
129 _hx509_collector_certs_add (
130 hx509_context
/*context*/,
131 struct hx509_collector */
*c*/
,
132 hx509_cert
/*cert*/);
135 _hx509_collector_collect_certs (
136 hx509_context
/*context*/,
137 struct hx509_collector */
*c*/
,
138 hx509_certs */
*ret_certs*/
);
141 _hx509_collector_collect_private_keys (
142 hx509_context
/*context*/,
143 struct hx509_collector */
*c*/
,
144 hx509_private_key
**/
*keys*/
);
147 _hx509_collector_free (struct hx509_collector */
*c*/
);
150 _hx509_collector_get_lock (struct hx509_collector */
*c*/
);
153 _hx509_collector_private_key_add (
154 hx509_context
/*context*/,
155 struct hx509_collector */
*c*/
,
156 const AlgorithmIdentifier */
*alg*/
,
157 hx509_private_key
/*private_key*/,
158 const heim_octet_string */
*key_data*/
,
159 const heim_octet_string */
*localKeyId*/
);
162 _hx509_create_signature (
163 hx509_context
/*context*/,
164 const hx509_private_key
/*signer*/,
165 const AlgorithmIdentifier */
*alg*/
,
166 const heim_octet_string */
*data*/
,
167 AlgorithmIdentifier */
*signatureAlgorithm*/
,
168 heim_octet_string */
*sig*/
);
171 _hx509_create_signature_bitstring (
172 hx509_context
/*context*/,
173 const hx509_private_key
/*signer*/,
174 const AlgorithmIdentifier */
*alg*/
,
175 const heim_octet_string */
*data*/
,
176 AlgorithmIdentifier */
*signatureAlgorithm*/
,
177 heim_bit_string */
*sig*/
);
181 hx509_context
/*context*/,
183 struct hx_expr */
*expr*/
);
186 _hx509_expr_free (struct hx_expr */
*expr*/
);
189 _hx509_expr_parse (const char */
*buf*/
);
192 _hx509_find_extension_subject_key_id (
193 const Certificate */
*issuer*/
,
194 SubjectKeyIdentifier */
*si*/
);
197 _hx509_generate_private_key (
198 hx509_context
/*context*/,
199 struct hx509_generate_private_context */
*ctx*/
,
200 hx509_private_key */
*private_key*/
);
203 _hx509_generate_private_key_bits (
204 hx509_context
/*context*/,
205 struct hx509_generate_private_context */
*ctx*/
,
206 unsigned long /*bits*/);
209 _hx509_generate_private_key_free (struct hx509_generate_private_context
**/
*ctx*/
);
212 _hx509_generate_private_key_init (
213 hx509_context
/*context*/,
214 const heim_oid */
*oid*/
,
215 struct hx509_generate_private_context
**/
*ctx*/
);
218 _hx509_generate_private_key_is_ca (
219 hx509_context
/*context*/,
220 struct hx509_generate_private_context */
*ctx*/
);
223 _hx509_get_cert (hx509_cert
/*cert*/);
226 _hx509_ks_dir_register (hx509_context
/*context*/);
229 _hx509_ks_file_register (hx509_context
/*context*/);
232 _hx509_ks_keychain_register (hx509_context
/*context*/);
235 _hx509_ks_mem_register (hx509_context
/*context*/);
238 _hx509_ks_null_register (hx509_context
/*context*/);
241 _hx509_ks_pkcs11_register (hx509_context
/*context*/);
244 _hx509_ks_pkcs12_register (hx509_context
/*context*/);
248 hx509_context
/*context*/,
249 struct hx509_keyset_ops */
*ops*/
);
252 _hx509_lock_find_cert (
254 const hx509_query */
*q*/
,
257 const struct _hx509_password
*
258 _hx509_lock_get_passwords (hx509_lock
/*lock*/);
261 _hx509_lock_unlock_certs (hx509_lock
/*lock*/);
265 enum hx_expr_op
/*op*/,
272 heim_octet_string */
*os*/
);
277 hx509_private_key
/*key*/);
287 const DirectoryString */
*ds1*/
,
288 const DirectoryString */
*ds2*/
,
292 _hx509_name_from_Name (
294 hx509_name */
*name*/
);
298 hx509_context
/*context*/,
301 const heim_oid */
*oid*/
,
302 const char */
*str*/
);
306 hx509_context
/*context*/,
307 hx509_path */
*path*/
,
308 hx509_cert
/*cert*/);
311 _hx509_path_free (hx509_path */
*path*/
);
315 hx509_context
/*context*/,
317 const AlgorithmIdentifier */
*ai*/
,
318 const heim_octet_string */
*econtent*/
,
319 heim_octet_string */
*content*/
);
323 hx509_context
/*context*/,
325 const AlgorithmIdentifier */
*ai*/
,
326 const heim_octet_string */
*content*/
,
327 heim_octet_string */
*econtent*/
);
331 int (*/
*func*/
)(void *, const char *),
337 _hx509_private_key_export (
338 hx509_context
/*context*/,
339 const hx509_private_key
/*key*/,
340 hx509_key_format_t
/*format*/,
341 heim_octet_string */
*data*/
);
344 _hx509_private_key_exportable (hx509_private_key
/*key*/);
347 _hx509_private_key_get_internal (
348 hx509_context
/*context*/,
349 hx509_private_key
/*key*/,
350 const char */
*type*/
);
353 _hx509_private_key_oid (
354 hx509_context
/*context*/,
355 const hx509_private_key
/*key*/,
359 _hx509_private_key_ref (hx509_private_key
/*key*/);
362 _hx509_private_pem_name (hx509_private_key
/*key*/);
365 _hx509_public_encrypt (
366 hx509_context
/*context*/,
367 const heim_octet_string */
*cleartext*/
,
368 const Certificate */
*cert*/
,
369 heim_oid */
*encryption_oid*/
,
370 heim_octet_string */
*ciphertext*/
);
373 _hx509_query_clear (hx509_query */
*q*/
);
376 _hx509_query_match_cert (
377 hx509_context
/*context*/,
378 const hx509_query */
*q*/
,
379 hx509_cert
/*cert*/);
382 _hx509_query_statistic (
383 hx509_context
/*context*/,
385 const hx509_query */
*q*/
);
388 _hx509_request_add_dns_name (
389 hx509_context
/*context*/,
390 hx509_request
/*req*/,
391 const char */
*hostname*/
);
394 _hx509_request_add_eku (
395 hx509_context
/*context*/,
396 hx509_request
/*req*/,
397 const heim_oid */
*oid*/
);
400 _hx509_request_add_email (
401 hx509_context
/*context*/,
402 hx509_request
/*req*/,
403 const char */
*email*/
);
406 _hx509_request_parse (
407 hx509_context
/*context*/,
408 const char */
*path*/
,
409 hx509_request */
*req*/
);
412 _hx509_request_print (
413 hx509_context
/*context*/,
414 hx509_request
/*req*/,
418 _hx509_request_to_pkcs10 (
419 hx509_context
/*context*/,
420 const hx509_request
/*req*/,
421 const hx509_private_key
/*signer*/,
422 heim_octet_string */
*request*/
);
425 _hx509_revoke_ref (hx509_revoke_ctx
/*ctx*/);
428 _hx509_sel_yyerror (const char */
*s*/
);
431 _hx509_self_signed_valid (
432 hx509_context
/*context*/,
433 const AlgorithmIdentifier */
*alg*/
);
436 _hx509_set_cert_attribute (
437 hx509_context
/*context*/,
439 const heim_oid */
*oid*/
,
440 const heim_octet_string */
*attr*/
);
443 _hx509_signature_best_before (
444 hx509_context
/*context*/,
445 const AlgorithmIdentifier */
*alg*/
,
449 _hx509_unmap_file_os (heim_octet_string */
*os*/
);
452 _hx509_unparse_Name (
453 const Name */
*aname*/
,
457 _hx509_verify_get_time (hx509_verify_ctx
/*ctx*/);
460 _hx509_verify_signature (
461 hx509_context
/*context*/,
462 const hx509_cert
/*cert*/,
463 const AlgorithmIdentifier */
*alg*/
,
464 const heim_octet_string */
*data*/
,
465 const heim_octet_string */
*sig*/
);
468 _hx509_verify_signature_bitstring (
469 hx509_context
/*context*/,
470 const hx509_cert
/*signer*/,
471 const AlgorithmIdentifier */
*alg*/
,
472 const heim_octet_string */
*data*/
,
473 const heim_bit_string */
*sig*/
);
478 const void */
*data*/
,
481 #endif /* __hx509_private_h__ */