1c19800e8SDoug Rabson /* This is a generated file */ 2c19800e8SDoug Rabson #ifndef __hx509_private_h__ 3c19800e8SDoug Rabson #define __hx509_private_h__ 4c19800e8SDoug Rabson 5c19800e8SDoug Rabson #include <stdarg.h> 6c19800e8SDoug Rabson 7c19800e8SDoug Rabson #if !defined(__GNUC__) && !defined(__attribute__) 8c19800e8SDoug Rabson #define __attribute__(x) 9c19800e8SDoug Rabson #endif 10c19800e8SDoug Rabson 11c19800e8SDoug Rabson int 12c19800e8SDoug Rabson _hx509_AlgorithmIdentifier_cmp ( 13c19800e8SDoug Rabson const AlgorithmIdentifier */*p*/, 14c19800e8SDoug Rabson const AlgorithmIdentifier */*q*/); 15c19800e8SDoug Rabson 16c19800e8SDoug Rabson int 17c19800e8SDoug Rabson _hx509_Certificate_cmp ( 18c19800e8SDoug Rabson const Certificate */*p*/, 19c19800e8SDoug Rabson const Certificate */*q*/); 20c19800e8SDoug Rabson 21c19800e8SDoug Rabson int 22c19800e8SDoug Rabson _hx509_Name_to_string ( 23c19800e8SDoug Rabson const Name */*n*/, 24c19800e8SDoug Rabson char **/*str*/); 25c19800e8SDoug Rabson 26c19800e8SDoug Rabson time_t 27c19800e8SDoug Rabson _hx509_Time2time_t (const Time */*t*/); 28c19800e8SDoug Rabson 29c19800e8SDoug Rabson void 30c19800e8SDoug Rabson _hx509_abort ( 31c19800e8SDoug Rabson const char */*fmt*/, 32c19800e8SDoug Rabson ...) 33c19800e8SDoug Rabson __attribute__ ((noreturn, format (printf, 1, 2))); 34c19800e8SDoug Rabson 35c19800e8SDoug Rabson int 36c19800e8SDoug Rabson _hx509_calculate_path ( 37c19800e8SDoug Rabson hx509_context /*context*/, 38c19800e8SDoug Rabson int /*flags*/, 39c19800e8SDoug Rabson time_t /*time_now*/, 40c19800e8SDoug Rabson hx509_certs /*anchors*/, 41c19800e8SDoug Rabson unsigned int /*max_depth*/, 42c19800e8SDoug Rabson hx509_cert /*cert*/, 43c19800e8SDoug Rabson hx509_certs /*pool*/, 44c19800e8SDoug Rabson hx509_path */*path*/); 45c19800e8SDoug Rabson 46c19800e8SDoug Rabson int 47c19800e8SDoug Rabson _hx509_cert_assign_key ( 48c19800e8SDoug Rabson hx509_cert /*cert*/, 49c19800e8SDoug Rabson hx509_private_key /*private_key*/); 50c19800e8SDoug Rabson 51c19800e8SDoug Rabson int 52c19800e8SDoug Rabson _hx509_cert_get_eku ( 53c19800e8SDoug Rabson hx509_context /*context*/, 54c19800e8SDoug Rabson hx509_cert /*cert*/, 55c19800e8SDoug Rabson ExtKeyUsage */*e*/); 56c19800e8SDoug Rabson 57c19800e8SDoug Rabson int 58c19800e8SDoug Rabson _hx509_cert_get_keyusage ( 59c19800e8SDoug Rabson hx509_context /*context*/, 60c19800e8SDoug Rabson hx509_cert /*c*/, 61c19800e8SDoug Rabson KeyUsage */*ku*/); 62c19800e8SDoug Rabson 63c19800e8SDoug Rabson int 64c19800e8SDoug Rabson _hx509_cert_get_version (const Certificate */*t*/); 65c19800e8SDoug Rabson 66c19800e8SDoug Rabson int 67c19800e8SDoug Rabson _hx509_cert_is_parent_cmp ( 68c19800e8SDoug Rabson const Certificate */*subject*/, 69c19800e8SDoug Rabson const Certificate */*issuer*/, 70c19800e8SDoug Rabson int /*allow_self_signed*/); 71c19800e8SDoug Rabson 72c19800e8SDoug Rabson int 73c19800e8SDoug Rabson _hx509_cert_private_decrypt ( 74c19800e8SDoug Rabson hx509_context /*context*/, 75c19800e8SDoug Rabson const heim_octet_string */*ciphertext*/, 76c19800e8SDoug Rabson const heim_oid */*encryption_oid*/, 77c19800e8SDoug Rabson hx509_cert /*p*/, 78c19800e8SDoug Rabson heim_octet_string */*cleartext*/); 79c19800e8SDoug Rabson 80c19800e8SDoug Rabson hx509_private_key 81c19800e8SDoug Rabson _hx509_cert_private_key (hx509_cert /*p*/); 82c19800e8SDoug Rabson 83c19800e8SDoug Rabson int 84c19800e8SDoug Rabson _hx509_cert_private_key_exportable (hx509_cert /*p*/); 85c19800e8SDoug Rabson 86c19800e8SDoug Rabson int 87c19800e8SDoug Rabson _hx509_cert_public_encrypt ( 88c19800e8SDoug Rabson hx509_context /*context*/, 89c19800e8SDoug Rabson const heim_octet_string */*cleartext*/, 90c19800e8SDoug Rabson const hx509_cert /*p*/, 91c19800e8SDoug Rabson heim_oid */*encryption_oid*/, 92c19800e8SDoug Rabson heim_octet_string */*ciphertext*/); 93c19800e8SDoug Rabson 94c19800e8SDoug Rabson void 95c19800e8SDoug Rabson _hx509_cert_set_release ( 96c19800e8SDoug Rabson hx509_cert /*cert*/, 97c19800e8SDoug Rabson _hx509_cert_release_func /*release*/, 98c19800e8SDoug Rabson void */*ctx*/); 99c19800e8SDoug Rabson 100c19800e8SDoug Rabson int 101c19800e8SDoug Rabson _hx509_certs_keys_add ( 102c19800e8SDoug Rabson hx509_context /*context*/, 103c19800e8SDoug Rabson hx509_certs /*certs*/, 104c19800e8SDoug Rabson hx509_private_key /*key*/); 105c19800e8SDoug Rabson 106c19800e8SDoug Rabson void 107c19800e8SDoug Rabson _hx509_certs_keys_free ( 108c19800e8SDoug Rabson hx509_context /*context*/, 109c19800e8SDoug Rabson hx509_private_key */*keys*/); 110c19800e8SDoug Rabson 111c19800e8SDoug Rabson int 112c19800e8SDoug Rabson _hx509_certs_keys_get ( 113c19800e8SDoug Rabson hx509_context /*context*/, 114c19800e8SDoug Rabson hx509_certs /*certs*/, 115c19800e8SDoug Rabson hx509_private_key **/*keys*/); 116c19800e8SDoug Rabson 117c19800e8SDoug Rabson hx509_certs 118c19800e8SDoug Rabson _hx509_certs_ref (hx509_certs /*certs*/); 119c19800e8SDoug Rabson 120c19800e8SDoug Rabson int 121c19800e8SDoug Rabson _hx509_check_key_usage ( 122c19800e8SDoug Rabson hx509_context /*context*/, 123c19800e8SDoug Rabson hx509_cert /*cert*/, 124c19800e8SDoug Rabson unsigned /*flags*/, 125c19800e8SDoug Rabson int /*req_present*/); 126c19800e8SDoug Rabson 127c19800e8SDoug Rabson int 128c19800e8SDoug Rabson _hx509_collector_alloc ( 129c19800e8SDoug Rabson hx509_context /*context*/, 130c19800e8SDoug Rabson hx509_lock /*lock*/, 131c19800e8SDoug Rabson struct hx509_collector **/*collector*/); 132c19800e8SDoug Rabson 133c19800e8SDoug Rabson int 134c19800e8SDoug Rabson _hx509_collector_certs_add ( 135c19800e8SDoug Rabson hx509_context /*context*/, 136c19800e8SDoug Rabson struct hx509_collector */*c*/, 137c19800e8SDoug Rabson hx509_cert /*cert*/); 138c19800e8SDoug Rabson 139c19800e8SDoug Rabson int 140c19800e8SDoug Rabson _hx509_collector_collect_certs ( 141c19800e8SDoug Rabson hx509_context /*context*/, 142c19800e8SDoug Rabson struct hx509_collector */*c*/, 143c19800e8SDoug Rabson hx509_certs */*ret_certs*/); 144c19800e8SDoug Rabson 145c19800e8SDoug Rabson int 146c19800e8SDoug Rabson _hx509_collector_collect_private_keys ( 147c19800e8SDoug Rabson hx509_context /*context*/, 148c19800e8SDoug Rabson struct hx509_collector */*c*/, 149c19800e8SDoug Rabson hx509_private_key **/*keys*/); 150c19800e8SDoug Rabson 151c19800e8SDoug Rabson void 152c19800e8SDoug Rabson _hx509_collector_free (struct hx509_collector */*c*/); 153c19800e8SDoug Rabson 154c19800e8SDoug Rabson hx509_lock 155c19800e8SDoug Rabson _hx509_collector_get_lock (struct hx509_collector */*c*/); 156c19800e8SDoug Rabson 157c19800e8SDoug Rabson int 158c19800e8SDoug Rabson _hx509_collector_private_key_add ( 159c19800e8SDoug Rabson hx509_context /*context*/, 160c19800e8SDoug Rabson struct hx509_collector */*c*/, 161c19800e8SDoug Rabson const AlgorithmIdentifier */*alg*/, 162c19800e8SDoug Rabson hx509_private_key /*private_key*/, 163c19800e8SDoug Rabson const heim_octet_string */*key_data*/, 164c19800e8SDoug Rabson const heim_octet_string */*localKeyId*/); 165c19800e8SDoug Rabson 166c19800e8SDoug Rabson int 167c19800e8SDoug Rabson _hx509_create_signature ( 168c19800e8SDoug Rabson hx509_context /*context*/, 169c19800e8SDoug Rabson const hx509_private_key /*signer*/, 170c19800e8SDoug Rabson const AlgorithmIdentifier */*alg*/, 171c19800e8SDoug Rabson const heim_octet_string */*data*/, 172c19800e8SDoug Rabson AlgorithmIdentifier */*signatureAlgorithm*/, 173c19800e8SDoug Rabson heim_octet_string */*sig*/); 174c19800e8SDoug Rabson 175c19800e8SDoug Rabson int 176c19800e8SDoug Rabson _hx509_create_signature_bitstring ( 177c19800e8SDoug Rabson hx509_context /*context*/, 178c19800e8SDoug Rabson const hx509_private_key /*signer*/, 179c19800e8SDoug Rabson const AlgorithmIdentifier */*alg*/, 180c19800e8SDoug Rabson const heim_octet_string */*data*/, 181c19800e8SDoug Rabson AlgorithmIdentifier */*signatureAlgorithm*/, 182c19800e8SDoug Rabson heim_bit_string */*sig*/); 183c19800e8SDoug Rabson 184c19800e8SDoug Rabson int 185c19800e8SDoug Rabson _hx509_find_extension_subject_key_id ( 186c19800e8SDoug Rabson const Certificate */*issuer*/, 187c19800e8SDoug Rabson SubjectKeyIdentifier */*si*/); 188c19800e8SDoug Rabson 189c19800e8SDoug Rabson int 190c19800e8SDoug Rabson _hx509_generate_private_key ( 191c19800e8SDoug Rabson hx509_context /*context*/, 192c19800e8SDoug Rabson struct hx509_generate_private_context */*ctx*/, 193c19800e8SDoug Rabson hx509_private_key */*private_key*/); 194c19800e8SDoug Rabson 195c19800e8SDoug Rabson int 196c19800e8SDoug Rabson _hx509_generate_private_key_bits ( 197c19800e8SDoug Rabson hx509_context /*context*/, 198c19800e8SDoug Rabson struct hx509_generate_private_context */*ctx*/, 199c19800e8SDoug Rabson unsigned long /*bits*/); 200c19800e8SDoug Rabson 201c19800e8SDoug Rabson void 202c19800e8SDoug Rabson _hx509_generate_private_key_free (struct hx509_generate_private_context **/*ctx*/); 203c19800e8SDoug Rabson 204c19800e8SDoug Rabson int 205c19800e8SDoug Rabson _hx509_generate_private_key_init ( 206c19800e8SDoug Rabson hx509_context /*context*/, 207c19800e8SDoug Rabson const heim_oid */*oid*/, 208c19800e8SDoug Rabson struct hx509_generate_private_context **/*ctx*/); 209c19800e8SDoug Rabson 210c19800e8SDoug Rabson int 211c19800e8SDoug Rabson _hx509_generate_private_key_is_ca ( 212c19800e8SDoug Rabson hx509_context /*context*/, 213c19800e8SDoug Rabson struct hx509_generate_private_context */*ctx*/); 214c19800e8SDoug Rabson 215c19800e8SDoug Rabson Certificate * 216c19800e8SDoug Rabson _hx509_get_cert (hx509_cert /*cert*/); 217c19800e8SDoug Rabson 218c19800e8SDoug Rabson void 219c19800e8SDoug Rabson _hx509_ks_dir_register (hx509_context /*context*/); 220c19800e8SDoug Rabson 221c19800e8SDoug Rabson void 222c19800e8SDoug Rabson _hx509_ks_file_register (hx509_context /*context*/); 223c19800e8SDoug Rabson 224c19800e8SDoug Rabson void 225c19800e8SDoug Rabson _hx509_ks_keychain_register (hx509_context /*context*/); 226c19800e8SDoug Rabson 227c19800e8SDoug Rabson void 228c19800e8SDoug Rabson _hx509_ks_mem_register (hx509_context /*context*/); 229c19800e8SDoug Rabson 230c19800e8SDoug Rabson void 231c19800e8SDoug Rabson _hx509_ks_null_register (hx509_context /*context*/); 232c19800e8SDoug Rabson 233c19800e8SDoug Rabson void 234c19800e8SDoug Rabson _hx509_ks_pkcs11_register (hx509_context /*context*/); 235c19800e8SDoug Rabson 236c19800e8SDoug Rabson void 237c19800e8SDoug Rabson _hx509_ks_pkcs12_register (hx509_context /*context*/); 238c19800e8SDoug Rabson 239c19800e8SDoug Rabson void 240c19800e8SDoug Rabson _hx509_ks_register ( 241c19800e8SDoug Rabson hx509_context /*context*/, 242c19800e8SDoug Rabson struct hx509_keyset_ops */*ops*/); 243c19800e8SDoug Rabson 244c19800e8SDoug Rabson int 245c19800e8SDoug Rabson _hx509_lock_find_cert ( 246c19800e8SDoug Rabson hx509_lock /*lock*/, 247c19800e8SDoug Rabson const hx509_query */*q*/, 248c19800e8SDoug Rabson hx509_cert */*c*/); 249c19800e8SDoug Rabson 250c19800e8SDoug Rabson const struct _hx509_password * 251c19800e8SDoug Rabson _hx509_lock_get_passwords (hx509_lock /*lock*/); 252c19800e8SDoug Rabson 253c19800e8SDoug Rabson hx509_certs 254c19800e8SDoug Rabson _hx509_lock_unlock_certs (hx509_lock /*lock*/); 255c19800e8SDoug Rabson 256c19800e8SDoug Rabson int 257c19800e8SDoug Rabson _hx509_map_file ( 258c19800e8SDoug Rabson const char */*fn*/, 259c19800e8SDoug Rabson void **/*data*/, 260c19800e8SDoug Rabson size_t */*length*/, 261c19800e8SDoug Rabson struct stat */*rsb*/); 262c19800e8SDoug Rabson 263c19800e8SDoug Rabson int 264c19800e8SDoug Rabson _hx509_map_file_os ( 265c19800e8SDoug Rabson const char */*fn*/, 266c19800e8SDoug Rabson heim_octet_string */*os*/, 267c19800e8SDoug Rabson struct stat */*rsb*/); 268c19800e8SDoug Rabson 269c19800e8SDoug Rabson int 270c19800e8SDoug Rabson _hx509_match_keys ( 271c19800e8SDoug Rabson hx509_cert /*c*/, 272c19800e8SDoug Rabson hx509_private_key /*private_key*/); 273c19800e8SDoug Rabson 274c19800e8SDoug Rabson int 275c19800e8SDoug Rabson _hx509_name_cmp ( 276c19800e8SDoug Rabson const Name */*n1*/, 277c19800e8SDoug Rabson const Name */*n2*/); 278c19800e8SDoug Rabson 279c19800e8SDoug Rabson int 280c19800e8SDoug Rabson _hx509_name_ds_cmp ( 281c19800e8SDoug Rabson const DirectoryString */*ds1*/, 282c19800e8SDoug Rabson const DirectoryString */*ds2*/); 283c19800e8SDoug Rabson 284c19800e8SDoug Rabson int 285c19800e8SDoug Rabson _hx509_name_from_Name ( 286c19800e8SDoug Rabson const Name */*n*/, 287c19800e8SDoug Rabson hx509_name */*name*/); 288c19800e8SDoug Rabson 289c19800e8SDoug Rabson int 290c19800e8SDoug Rabson _hx509_name_modify ( 291c19800e8SDoug Rabson hx509_context /*context*/, 292c19800e8SDoug Rabson Name */*name*/, 293c19800e8SDoug Rabson int /*append*/, 294c19800e8SDoug Rabson const heim_oid */*oid*/, 295c19800e8SDoug Rabson const char */*str*/); 296c19800e8SDoug Rabson 297c19800e8SDoug Rabson int 298c19800e8SDoug Rabson _hx509_parse_private_key ( 299c19800e8SDoug Rabson hx509_context /*context*/, 300c19800e8SDoug Rabson const heim_oid */*key_oid*/, 301c19800e8SDoug Rabson const void */*data*/, 302c19800e8SDoug Rabson size_t /*len*/, 303c19800e8SDoug Rabson hx509_private_key */*private_key*/); 304c19800e8SDoug Rabson 305c19800e8SDoug Rabson int 306c19800e8SDoug Rabson _hx509_path_append ( 307c19800e8SDoug Rabson hx509_context /*context*/, 308c19800e8SDoug Rabson hx509_path */*path*/, 309c19800e8SDoug Rabson hx509_cert /*cert*/); 310c19800e8SDoug Rabson 311c19800e8SDoug Rabson void 312c19800e8SDoug Rabson _hx509_path_free (hx509_path */*path*/); 313c19800e8SDoug Rabson 314c19800e8SDoug Rabson int 315c19800e8SDoug Rabson _hx509_pbe_decrypt ( 316c19800e8SDoug Rabson hx509_context /*context*/, 317c19800e8SDoug Rabson hx509_lock /*lock*/, 318c19800e8SDoug Rabson const AlgorithmIdentifier */*ai*/, 319c19800e8SDoug Rabson const heim_octet_string */*econtent*/, 320c19800e8SDoug Rabson heim_octet_string */*content*/); 321c19800e8SDoug Rabson 322c19800e8SDoug Rabson int 323c19800e8SDoug Rabson _hx509_pbe_encrypt ( 324c19800e8SDoug Rabson hx509_context /*context*/, 325c19800e8SDoug Rabson hx509_lock /*lock*/, 326c19800e8SDoug Rabson const AlgorithmIdentifier */*ai*/, 327c19800e8SDoug Rabson const heim_octet_string */*content*/, 328c19800e8SDoug Rabson heim_octet_string */*econtent*/); 329c19800e8SDoug Rabson 330c19800e8SDoug Rabson void 331c19800e8SDoug Rabson _hx509_pi_printf ( 332c19800e8SDoug Rabson int (*/*func*/)(void *, const char *), 333c19800e8SDoug Rabson void */*ctx*/, 334c19800e8SDoug Rabson const char */*fmt*/, 335c19800e8SDoug Rabson ...); 336c19800e8SDoug Rabson 337c19800e8SDoug Rabson int 338c19800e8SDoug Rabson _hx509_private_key2SPKI ( 339c19800e8SDoug Rabson hx509_context /*context*/, 340c19800e8SDoug Rabson hx509_private_key /*private_key*/, 341c19800e8SDoug Rabson SubjectPublicKeyInfo */*spki*/); 342c19800e8SDoug Rabson 343c19800e8SDoug Rabson void 344c19800e8SDoug Rabson _hx509_private_key_assign_rsa ( 345c19800e8SDoug Rabson hx509_private_key /*key*/, 346c19800e8SDoug Rabson void */*ptr*/); 347c19800e8SDoug Rabson 348c19800e8SDoug Rabson int 349c19800e8SDoug Rabson _hx509_private_key_export ( 350c19800e8SDoug Rabson hx509_context /*context*/, 351c19800e8SDoug Rabson const hx509_private_key /*key*/, 352c19800e8SDoug Rabson heim_octet_string */*data*/); 353c19800e8SDoug Rabson 354c19800e8SDoug Rabson int 355c19800e8SDoug Rabson _hx509_private_key_exportable (hx509_private_key /*key*/); 356c19800e8SDoug Rabson 357c19800e8SDoug Rabson int 358c19800e8SDoug Rabson _hx509_private_key_free (hx509_private_key */*key*/); 359c19800e8SDoug Rabson 360c19800e8SDoug Rabson BIGNUM * 361c19800e8SDoug Rabson _hx509_private_key_get_internal ( 362c19800e8SDoug Rabson hx509_context /*context*/, 363c19800e8SDoug Rabson hx509_private_key /*key*/, 364c19800e8SDoug Rabson const char */*type*/); 365c19800e8SDoug Rabson 366c19800e8SDoug Rabson int 367c19800e8SDoug Rabson _hx509_private_key_init ( 368c19800e8SDoug Rabson hx509_private_key */*key*/, 369c19800e8SDoug Rabson hx509_private_key_ops */*ops*/, 370c19800e8SDoug Rabson void */*keydata*/); 371c19800e8SDoug Rabson 372c19800e8SDoug Rabson int 373c19800e8SDoug Rabson _hx509_private_key_oid ( 374c19800e8SDoug Rabson hx509_context /*context*/, 375c19800e8SDoug Rabson const hx509_private_key /*key*/, 376c19800e8SDoug Rabson heim_oid */*data*/); 377c19800e8SDoug Rabson 378c19800e8SDoug Rabson int 379c19800e8SDoug Rabson _hx509_private_key_private_decrypt ( 380c19800e8SDoug Rabson hx509_context /*context*/, 381c19800e8SDoug Rabson const heim_octet_string */*ciphertext*/, 382c19800e8SDoug Rabson const heim_oid */*encryption_oid*/, 383c19800e8SDoug Rabson hx509_private_key /*p*/, 384c19800e8SDoug Rabson heim_octet_string */*cleartext*/); 385c19800e8SDoug Rabson 386c19800e8SDoug Rabson hx509_private_key 387c19800e8SDoug Rabson _hx509_private_key_ref (hx509_private_key /*key*/); 388c19800e8SDoug Rabson 389c19800e8SDoug Rabson const char * 390c19800e8SDoug Rabson _hx509_private_pem_name (hx509_private_key /*key*/); 391c19800e8SDoug Rabson 392c19800e8SDoug Rabson int 393c19800e8SDoug Rabson _hx509_public_encrypt ( 394c19800e8SDoug Rabson hx509_context /*context*/, 395c19800e8SDoug Rabson const heim_octet_string */*cleartext*/, 396c19800e8SDoug Rabson const Certificate */*cert*/, 397c19800e8SDoug Rabson heim_oid */*encryption_oid*/, 398c19800e8SDoug Rabson heim_octet_string */*ciphertext*/); 399c19800e8SDoug Rabson 400c19800e8SDoug Rabson void 401c19800e8SDoug Rabson _hx509_query_clear (hx509_query */*q*/); 402c19800e8SDoug Rabson 403c19800e8SDoug Rabson int 404c19800e8SDoug Rabson _hx509_query_match_cert ( 405c19800e8SDoug Rabson hx509_context /*context*/, 406c19800e8SDoug Rabson const hx509_query */*q*/, 407c19800e8SDoug Rabson hx509_cert /*cert*/); 408c19800e8SDoug Rabson 409c19800e8SDoug Rabson void 410c19800e8SDoug Rabson _hx509_query_statistic ( 411c19800e8SDoug Rabson hx509_context /*context*/, 412c19800e8SDoug Rabson int /*type*/, 413c19800e8SDoug Rabson const hx509_query */*q*/); 414c19800e8SDoug Rabson 415c19800e8SDoug Rabson int 416c19800e8SDoug Rabson _hx509_request_add_dns_name ( 417c19800e8SDoug Rabson hx509_context /*context*/, 418c19800e8SDoug Rabson hx509_request /*req*/, 419c19800e8SDoug Rabson const char */*hostname*/); 420c19800e8SDoug Rabson 421c19800e8SDoug Rabson int 422c19800e8SDoug Rabson _hx509_request_add_eku ( 423c19800e8SDoug Rabson hx509_context /*context*/, 424c19800e8SDoug Rabson hx509_request /*req*/, 425c19800e8SDoug Rabson const heim_oid */*oid*/); 426c19800e8SDoug Rabson 427c19800e8SDoug Rabson int 428c19800e8SDoug Rabson _hx509_request_add_email ( 429c19800e8SDoug Rabson hx509_context /*context*/, 430c19800e8SDoug Rabson hx509_request /*req*/, 431c19800e8SDoug Rabson const char */*email*/); 432c19800e8SDoug Rabson 433c19800e8SDoug Rabson void 434c19800e8SDoug Rabson _hx509_request_free (hx509_request */*req*/); 435c19800e8SDoug Rabson 436c19800e8SDoug Rabson int 437c19800e8SDoug Rabson _hx509_request_get_SubjectPublicKeyInfo ( 438c19800e8SDoug Rabson hx509_context /*context*/, 439c19800e8SDoug Rabson hx509_request /*req*/, 440c19800e8SDoug Rabson SubjectPublicKeyInfo */*key*/); 441c19800e8SDoug Rabson 442c19800e8SDoug Rabson int 443c19800e8SDoug Rabson _hx509_request_get_name ( 444c19800e8SDoug Rabson hx509_context /*context*/, 445c19800e8SDoug Rabson hx509_request /*req*/, 446c19800e8SDoug Rabson hx509_name */*name*/); 447c19800e8SDoug Rabson 448c19800e8SDoug Rabson int 449c19800e8SDoug Rabson _hx509_request_init ( 450c19800e8SDoug Rabson hx509_context /*context*/, 451c19800e8SDoug Rabson hx509_request */*req*/); 452c19800e8SDoug Rabson 453c19800e8SDoug Rabson int 454c19800e8SDoug Rabson _hx509_request_parse ( 455c19800e8SDoug Rabson hx509_context /*context*/, 456c19800e8SDoug Rabson const char */*path*/, 457c19800e8SDoug Rabson hx509_request */*req*/); 458c19800e8SDoug Rabson 459c19800e8SDoug Rabson int 460c19800e8SDoug Rabson _hx509_request_print ( 461c19800e8SDoug Rabson hx509_context /*context*/, 462c19800e8SDoug Rabson hx509_request /*req*/, 463c19800e8SDoug Rabson FILE */*f*/); 464c19800e8SDoug Rabson 465c19800e8SDoug Rabson int 466c19800e8SDoug Rabson _hx509_request_set_SubjectPublicKeyInfo ( 467c19800e8SDoug Rabson hx509_context /*context*/, 468c19800e8SDoug Rabson hx509_request /*req*/, 469c19800e8SDoug Rabson const SubjectPublicKeyInfo */*key*/); 470c19800e8SDoug Rabson 471c19800e8SDoug Rabson int 472c19800e8SDoug Rabson _hx509_request_set_name ( 473c19800e8SDoug Rabson hx509_context /*context*/, 474c19800e8SDoug Rabson hx509_request /*req*/, 475c19800e8SDoug Rabson hx509_name /*name*/); 476c19800e8SDoug Rabson 477c19800e8SDoug Rabson int 478c19800e8SDoug Rabson _hx509_request_to_pkcs10 ( 479c19800e8SDoug Rabson hx509_context /*context*/, 480c19800e8SDoug Rabson const hx509_request /*req*/, 481c19800e8SDoug Rabson const hx509_private_key /*signer*/, 482c19800e8SDoug Rabson heim_octet_string */*request*/); 483c19800e8SDoug Rabson 484c19800e8SDoug Rabson hx509_revoke_ctx 485c19800e8SDoug Rabson _hx509_revoke_ref (hx509_revoke_ctx /*ctx*/); 486c19800e8SDoug Rabson 487c19800e8SDoug Rabson int 488c19800e8SDoug Rabson _hx509_set_cert_attribute ( 489c19800e8SDoug Rabson hx509_context /*context*/, 490c19800e8SDoug Rabson hx509_cert /*cert*/, 491c19800e8SDoug Rabson const heim_oid */*oid*/, 492c19800e8SDoug Rabson const heim_octet_string */*attr*/); 493c19800e8SDoug Rabson 494c19800e8SDoug Rabson void 495c19800e8SDoug Rabson _hx509_unmap_file ( 496c19800e8SDoug Rabson void */*data*/, 497c19800e8SDoug Rabson size_t /*len*/); 498c19800e8SDoug Rabson 499c19800e8SDoug Rabson void 500c19800e8SDoug Rabson _hx509_unmap_file_os (heim_octet_string */*os*/); 501c19800e8SDoug Rabson 502c19800e8SDoug Rabson int 503c19800e8SDoug Rabson _hx509_unparse_Name ( 504c19800e8SDoug Rabson const Name */*aname*/, 505c19800e8SDoug Rabson char **/*str*/); 506c19800e8SDoug Rabson 507c19800e8SDoug Rabson int 508c19800e8SDoug Rabson _hx509_verify_signature ( 509c19800e8SDoug Rabson hx509_context /*context*/, 510c19800e8SDoug Rabson const Certificate */*signer*/, 511c19800e8SDoug Rabson const AlgorithmIdentifier */*alg*/, 512c19800e8SDoug Rabson const heim_octet_string */*data*/, 513c19800e8SDoug Rabson const heim_octet_string */*sig*/); 514c19800e8SDoug Rabson 515c19800e8SDoug Rabson int 516c19800e8SDoug Rabson _hx509_verify_signature_bitstring ( 517c19800e8SDoug Rabson hx509_context /*context*/, 518c19800e8SDoug Rabson const Certificate */*signer*/, 519c19800e8SDoug Rabson const AlgorithmIdentifier */*alg*/, 520c19800e8SDoug Rabson const heim_octet_string */*data*/, 521c19800e8SDoug Rabson const heim_bit_string */*sig*/); 522c19800e8SDoug Rabson 523c19800e8SDoug Rabson int 524c19800e8SDoug Rabson _hx509_write_file ( 525c19800e8SDoug Rabson const char */*fn*/, 526c19800e8SDoug Rabson const void */*data*/, 527c19800e8SDoug Rabson size_t /*length*/); 528c19800e8SDoug Rabson 529c19800e8SDoug Rabson #endif /* __hx509_private_h__ */ 530