| 1 | /** | 
 
 
 
 
 | 2 | * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 | 3 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 | 5 | */ | 
 
 
 
 
 | 6 | #ifndef _INC_CERTENROLL | 
 
 
 
 
 | 7 | #define _INC_CERTENROLL | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #if (_WIN32_WINNT >= 0x0600) | 
 
 
 
 
 | 10 | #ifdef __cplusplus | 
 
 
 
 
 | 11 | extern "C" { | 
 
 
 
 
 | 12 | #endif | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | typedef enum AlgorithmFlags { | 
 
 
 
 
 | 15 | AlgorithmFlagsNone   = 0x00000000, | 
 
 
 
 
 | 16 | AlgorithmFlagsWrap   = 0x00000001 | 
 
 
 
 
 | 17 | } AlgorithmFlags; | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 | typedef enum AlgorithmOperationFlags { | 
 
 
 
 
 | 20 | XCN_NCRYPT_NO_OPERATION                      = 0, | 
 
 
 
 
 | 21 | XCN_NCRYPT_CIPHER_OPERATION                  = 0x1, | 
 
 
 
 
 | 22 | XCN_NCRYPT_HASH_OPERATION                    = 0x2, | 
 
 
 
 
 | 23 | XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION   = 0x4, | 
 
 
 
 
 | 24 | XCN_NCRYPT_SECRET_AGREEMENT_OPERATION        = 0x8, | 
 
 
 
 
 | 25 | XCN_NCRYPT_SIGNATURE_OPERATION               = 0x10, | 
 
 
 
 
 | 26 | XCN_NCRYPT_RNG_OPERATION                     = 0x20, | 
 
 
 
 
 | 27 | XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION          = ( ( 0x4 | 0x8 )  | 0x10 ), | 
 
 
 
 
 | 28 | XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION   = 0x00200000, | 
 
 
 
 
 | 29 | XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION    = 0x00400000, | 
 
 
 
 
 | 30 | XCN_NCRYPT_EXACT_MATCH_OPERATION             = 0x00800000, | 
 
 
 
 
 | 31 | XCN_NCRYPT_PREFERENCE_MASK_OPERATION         = 0x00e00000 | 
 
 
 
 
 | 32 | } AlgorithmOperationFlags; | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | typedef enum AlgorithmType { | 
 
 
 
 
 | 35 | XCN_BCRYPT_UNKNOWN_INTERFACE                 = 0, | 
 
 
 
 
 | 36 | XCN_BCRYPT_SIGNATURE_INTERFACE               = 0x5, | 
 
 
 
 
 | 37 | XCN_BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE   = 0x3, | 
 
 
 
 
 | 38 | XCN_BCRYPT_CIPHER_INTERFACE                  = 0x1, | 
 
 
 
 
 | 39 | XCN_BCRYPT_HASH_INTERFACE                    = 0x2, | 
 
 
 
 
 | 40 | XCN_BCRYPT_SECRET_AGREEMENT_INTERFACE        = 0x4, | 
 
 
 
 
 | 41 | XCN_BCRYPT_RNG_INTERFACE                     = 0x6 | 
 
 
 
 
 | 42 | } AlgorithmType; | 
 
 
 
 
 | 43 |  | 
 
 
 
 
 | 44 | typedef enum AlternativeNameType { | 
 
 
 
 
 | 45 | XCN_CERT_ALT_NAME_UNKNOWN               = 0, | 
 
 
 
 
 | 46 | XCN_CERT_ALT_NAME_OTHER_NAME            = 1, | 
 
 
 
 
 | 47 | XCN_CERT_ALT_NAME_RFC822_NAME           = 2, | 
 
 
 
 
 | 48 | XCN_CERT_ALT_NAME_DNS_NAME              = 3, | 
 
 
 
 
 | 49 | XCN_CERT_ALT_NAME_DIRECTORY_NAME        = 5, | 
 
 
 
 
 | 50 | XCN_CERT_ALT_NAME_URL                   = 7, | 
 
 
 
 
 | 51 | XCN_CERT_ALT_NAME_IP_ADDRESS            = 8, | 
 
 
 
 
 | 52 | XCN_CERT_ALT_NAME_REGISTERED_ID         = 9, | 
 
 
 
 
 | 53 | XCN_CERT_ALT_NAME_GUID                  = 10, | 
 
 
 
 
 | 54 | XCN_CERT_ALT_NAME_USER_PRINCIPLE_NAME   = 11 | 
 
 
 
 
 | 55 | } AlternativeNameType; | 
 
 
 
 
 | 56 |  | 
 
 
 
 
 | 57 | typedef enum CERTENROLL_PROPERTYID { | 
 
 
 
 
 | 58 | XCN_PROPERTYID_NONE                              = 0, | 
 
 
 
 
 | 59 | XCN_CERT_KEY_PROV_HANDLE_PROP_ID                 = 1, | 
 
 
 
 
 | 60 | XCN_CERT_KEY_PROV_INFO_PROP_ID                   = 2, | 
 
 
 
 
 | 61 | XCN_CERT_SHA1_HASH_PROP_ID                       = 3, | 
 
 
 
 
 | 62 | XCN_CERT_MD5_HASH_PROP_ID                        = 4, | 
 
 
 
 
 | 63 | XCN_CERT_HASH_PROP_ID                            = 3, | 
 
 
 
 
 | 64 | XCN_CERT_KEY_CONTEXT_PROP_ID                     = 5, | 
 
 
 
 
 | 65 | XCN_CERT_KEY_SPEC_PROP_ID                        = 6, | 
 
 
 
 
 | 66 | XCN_CERT_IE30_RESERVED_PROP_ID                   = 7, | 
 
 
 
 
 | 67 | XCN_CERT_PUBKEY_HASH_RESERVED_PROP_ID            = 8, | 
 
 
 
 
 | 68 | XCN_CERT_ENHKEY_USAGE_PROP_ID                    = 9, | 
 
 
 
 
 | 69 | XCN_CERT_CTL_USAGE_PROP_ID                       = 9, | 
 
 
 
 
 | 70 | XCN_CERT_NEXT_UPDATE_LOCATION_PROP_ID            = 10, | 
 
 
 
 
 | 71 | XCN_CERT_FRIENDLY_NAME_PROP_ID                   = 11, | 
 
 
 
 
 | 72 | XCN_CERT_PVK_FILE_PROP_ID                        = 12, | 
 
 
 
 
 | 73 | XCN_CERT_DESCRIPTION_PROP_ID                     = 13, | 
 
 
 
 
 | 74 | XCN_CERT_ACCESS_STATE_PROP_ID                    = 14, | 
 
 
 
 
 | 75 | XCN_CERT_SIGNATURE_HASH_PROP_ID                  = 15, | 
 
 
 
 
 | 76 | XCN_CERT_SMART_CARD_DATA_PROP_ID                 = 16, | 
 
 
 
 
 | 77 | XCN_CERT_EFS_PROP_ID                             = 17, | 
 
 
 
 
 | 78 | XCN_CERT_FORTEZZA_DATA_PROP_ID                   = 18, | 
 
 
 
 
 | 79 | XCN_CERT_ARCHIVED_PROP_ID                        = 19, | 
 
 
 
 
 | 80 | XCN_CERT_KEY_IDENTIFIER_PROP_ID                  = 20, | 
 
 
 
 
 | 81 | XCN_CERT_AUTO_ENROLL_PROP_ID                     = 21, | 
 
 
 
 
 | 82 | XCN_CERT_PUBKEY_ALG_PARA_PROP_ID                 = 22, | 
 
 
 
 
 | 83 | XCN_CERT_CROSS_CERT_DIST_POINTS_PROP_ID          = 23, | 
 
 
 
 
 | 84 | XCN_CERT_ISSUER_PUBLIC_KEY_MD5_HASH_PROP_ID      = 24, | 
 
 
 
 
 | 85 | XCN_CERT_SUBJECT_PUBLIC_KEY_MD5_HASH_PROP_ID     = 25, | 
 
 
 
 
 | 86 | XCN_CERT_ENROLLMENT_PROP_ID                      = 26, | 
 
 
 
 
 | 87 | XCN_CERT_DATE_STAMP_PROP_ID                      = 27, | 
 
 
 
 
 | 88 | XCN_CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID   = 28, | 
 
 
 
 
 | 89 | XCN_CERT_SUBJECT_NAME_MD5_HASH_PROP_ID           = 29, | 
 
 
 
 
 | 90 | XCN_CERT_EXTENDED_ERROR_INFO_PROP_ID             = 30, | 
 
 
 
 
 | 91 | XCN_CERT_RENEWAL_PROP_ID                         = 64, | 
 
 
 
 
 | 92 | XCN_CERT_ARCHIVED_KEY_HASH_PROP_ID               = 65, | 
 
 
 
 
 | 93 | XCN_CERT_AUTO_ENROLL_RETRY_PROP_ID               = 66, | 
 
 
 
 
 | 94 | XCN_CERT_AIA_URL_RETRIEVED_PROP_ID               = 67, | 
 
 
 
 
 | 95 | XCN_CERT_AUTHORITY_INFO_ACCESS_PROP_ID           = 68, | 
 
 
 
 
 | 96 | XCN_CERT_BACKED_UP_PROP_ID                       = 69, | 
 
 
 
 
 | 97 | XCN_CERT_OCSP_RESPONSE_PROP_ID                   = 70, | 
 
 
 
 
 | 98 | XCN_CERT_REQUEST_ORIGINATOR_PROP_ID              = 71, | 
 
 
 
 
 | 99 | XCN_CERT_SOURCE_LOCATION_PROP_ID                 = 72, | 
 
 
 
 
 | 100 | XCN_CERT_SOURCE_URL_PROP_ID                      = 73, | 
 
 
 
 
 | 101 | XCN_CERT_NEW_KEY_PROP_ID                         = 74, | 
 
 
 
 
 | 102 | XCN_CERT_FIRST_RESERVED_PROP_ID                  = 87, | 
 
 
 
 
 | 103 | XCN_CERT_LAST_RESERVED_PROP_ID                   = 0x7fff, | 
 
 
 
 
 | 104 | XCN_CERT_FIRST_USER_PROP_ID                      = 0x8000, | 
 
 
 
 
 | 105 | XCN_CERT_LAST_USER_PROP_ID                       = 0xffff, | 
 
 
 
 
 | 106 | XCN_CERT_STORE_LOCALIZED_NAME_PROP_ID            = 0x1000, | 
 
 
 
 
 | 107 | XCN_CERT_CEP_PROP_ID                             = 87 | 
 
 
 
 
 | 108 | } CERTENROLL_PROPERTYID; | 
 
 
 
 
 | 109 |  | 
 
 
 
 
 | 110 | typedef enum CERTENROLL_OBJECTID { | 
 
 
 
 
 | 111 | XCN_OID_NONE                                         = 0, | 
 
 
 
 
 | 112 | XCN_OID_RSA                                          = 1, | 
 
 
 
 
 | 113 | XCN_OID_PKCS                                         = 2, | 
 
 
 
 
 | 114 | XCN_OID_RSA_HASH                                     = 3, | 
 
 
 
 
 | 115 | XCN_OID_RSA_ENCRYPT                                  = 4, | 
 
 
 
 
 | 116 | XCN_OID_PKCS_1                                       = 5, | 
 
 
 
 
 | 117 | XCN_OID_PKCS_2                                       = 6, | 
 
 
 
 
 | 118 | XCN_OID_PKCS_3                                       = 7, | 
 
 
 
 
 | 119 | XCN_OID_PKCS_4                                       = 8, | 
 
 
 
 
 | 120 | XCN_OID_PKCS_5                                       = 9, | 
 
 
 
 
 | 121 | XCN_OID_PKCS_6                                       = 10, | 
 
 
 
 
 | 122 | XCN_OID_PKCS_7                                       = 11, | 
 
 
 
 
 | 123 | XCN_OID_PKCS_8                                       = 12, | 
 
 
 
 
 | 124 | XCN_OID_PKCS_9                                       = 13, | 
 
 
 
 
 | 125 | XCN_OID_PKCS_10                                      = 14, | 
 
 
 
 
 | 126 | XCN_OID_PKCS_12                                      = 15, | 
 
 
 
 
 | 127 | XCN_OID_RSA_RSA                                      = 16, | 
 
 
 
 
 | 128 | XCN_OID_RSA_MD2RSA                                   = 17, | 
 
 
 
 
 | 129 | XCN_OID_RSA_MD4RSA                                   = 18, | 
 
 
 
 
 | 130 | XCN_OID_RSA_MD5RSA                                   = 19, | 
 
 
 
 
 | 131 | XCN_OID_RSA_SHA1RSA                                  = 20, | 
 
 
 
 
 | 132 | XCN_OID_RSA_SETOAEP_RSA                              = 21, | 
 
 
 
 
 | 133 | XCN_OID_RSA_DH                                       = 22, | 
 
 
 
 
 | 134 | XCN_OID_RSA_data                                     = 23, | 
 
 
 
 
 | 135 | XCN_OID_RSA_signedData                               = 24, | 
 
 
 
 
 | 136 | XCN_OID_RSA_envelopedData                            = 25, | 
 
 
 
 
 | 137 | XCN_OID_RSA_signEnvData                              = 26, | 
 
 
 
 
 | 138 | XCN_OID_RSA_digestedData                             = 27, | 
 
 
 
 
 | 139 | XCN_OID_RSA_hashedData                               = 28, | 
 
 
 
 
 | 140 | XCN_OID_RSA_encryptedData                            = 29, | 
 
 
 
 
 | 141 | XCN_OID_RSA_emailAddr                                = 30, | 
 
 
 
 
 | 142 | XCN_OID_RSA_unstructName                             = 31, | 
 
 
 
 
 | 143 | XCN_OID_RSA_contentType                              = 32, | 
 
 
 
 
 | 144 | XCN_OID_RSA_messageDigest                            = 33, | 
 
 
 
 
 | 145 | XCN_OID_RSA_signingTime                              = 34, | 
 
 
 
 
 | 146 | XCN_OID_RSA_counterSign                              = 35, | 
 
 
 
 
 | 147 | XCN_OID_RSA_challengePwd                             = 36, | 
 
 
 
 
 | 148 | XCN_OID_RSA_unstructAddr                             = 37, | 
 
 
 
 
 | 149 | XCN_OID_RSA_extCertAttrs                             = 38, | 
 
 
 
 
 | 150 | XCN_OID_RSA_certExtensions                           = 39, | 
 
 
 
 
 | 151 | XCN_OID_RSA_SMIMECapabilities                        = 40, | 
 
 
 
 
 | 152 | XCN_OID_RSA_preferSignedData                         = 41, | 
 
 
 
 
 | 153 | XCN_OID_RSA_SMIMEalg                                 = 42, | 
 
 
 
 
 | 154 | XCN_OID_RSA_SMIMEalgESDH                             = 43, | 
 
 
 
 
 | 155 | XCN_OID_RSA_SMIMEalgCMS3DESwrap                      = 44, | 
 
 
 
 
 | 156 | XCN_OID_RSA_SMIMEalgCMSRC2wrap                       = 45, | 
 
 
 
 
 | 157 | XCN_OID_RSA_MD2                                      = 46, | 
 
 
 
 
 | 158 | XCN_OID_RSA_MD4                                      = 47, | 
 
 
 
 
 | 159 | XCN_OID_RSA_MD5                                      = 48, | 
 
 
 
 
 | 160 | XCN_OID_RSA_RC2CBC                                   = 49, | 
 
 
 
 
 | 161 | XCN_OID_RSA_RC4                                      = 50, | 
 
 
 
 
 | 162 | XCN_OID_RSA_DES_EDE3_CBC                             = 51, | 
 
 
 
 
 | 163 | XCN_OID_RSA_RC5_CBCPad                               = 52, | 
 
 
 
 
 | 164 | XCN_OID_ANSI_X942                                    = 53, | 
 
 
 
 
 | 165 | XCN_OID_ANSI_X942_DH                                 = 54, | 
 
 
 
 
 | 166 | XCN_OID_X957                                         = 55, | 
 
 
 
 
 | 167 | XCN_OID_X957_DSA                                     = 56, | 
 
 
 
 
 | 168 | XCN_OID_X957_SHA1DSA                                 = 57, | 
 
 
 
 
 | 169 | XCN_OID_DS                                           = 58, | 
 
 
 
 
 | 170 | XCN_OID_DSALG                                        = 59, | 
 
 
 
 
 | 171 | XCN_OID_DSALG_CRPT                                   = 60, | 
 
 
 
 
 | 172 | XCN_OID_DSALG_HASH                                   = 61, | 
 
 
 
 
 | 173 | XCN_OID_DSALG_SIGN                                   = 62, | 
 
 
 
 
 | 174 | XCN_OID_DSALG_RSA                                    = 63, | 
 
 
 
 
 | 175 | XCN_OID_OIW                                          = 64, | 
 
 
 
 
 | 176 | XCN_OID_OIWSEC                                       = 65, | 
 
 
 
 
 | 177 | XCN_OID_OIWSEC_md4RSA                                = 66, | 
 
 
 
 
 | 178 | XCN_OID_OIWSEC_md5RSA                                = 67, | 
 
 
 
 
 | 179 | XCN_OID_OIWSEC_md4RSA2                               = 68, | 
 
 
 
 
 | 180 | XCN_OID_OIWSEC_desECB                                = 69, | 
 
 
 
 
 | 181 | XCN_OID_OIWSEC_desCBC                                = 70, | 
 
 
 
 
 | 182 | XCN_OID_OIWSEC_desOFB                                = 71, | 
 
 
 
 
 | 183 | XCN_OID_OIWSEC_desCFB                                = 72, | 
 
 
 
 
 | 184 | XCN_OID_OIWSEC_desMAC                                = 73, | 
 
 
 
 
 | 185 | XCN_OID_OIWSEC_rsaSign                               = 74, | 
 
 
 
 
 | 186 | XCN_OID_OIWSEC_dsa                                   = 75, | 
 
 
 
 
 | 187 | XCN_OID_OIWSEC_shaDSA                                = 76, | 
 
 
 
 
 | 188 | XCN_OID_OIWSEC_mdc2RSA                               = 77, | 
 
 
 
 
 | 189 | XCN_OID_OIWSEC_shaRSA                                = 78, | 
 
 
 
 
 | 190 | XCN_OID_OIWSEC_dhCommMod                             = 79, | 
 
 
 
 
 | 191 | XCN_OID_OIWSEC_desEDE                                = 80, | 
 
 
 
 
 | 192 | XCN_OID_OIWSEC_sha                                   = 81, | 
 
 
 
 
 | 193 | XCN_OID_OIWSEC_mdc2                                  = 82, | 
 
 
 
 
 | 194 | XCN_OID_OIWSEC_dsaComm                               = 83, | 
 
 
 
 
 | 195 | XCN_OID_OIWSEC_dsaCommSHA                            = 84, | 
 
 
 
 
 | 196 | XCN_OID_OIWSEC_rsaXchg                               = 85, | 
 
 
 
 
 | 197 | XCN_OID_OIWSEC_keyHashSeal                           = 86, | 
 
 
 
 
 | 198 | XCN_OID_OIWSEC_md2RSASign                            = 87, | 
 
 
 
 
 | 199 | XCN_OID_OIWSEC_md5RSASign                            = 88, | 
 
 
 
 
 | 200 | XCN_OID_OIWSEC_sha1                                  = 89, | 
 
 
 
 
 | 201 | XCN_OID_OIWSEC_dsaSHA1                               = 90, | 
 
 
 
 
 | 202 | XCN_OID_OIWSEC_dsaCommSHA1                           = 91, | 
 
 
 
 
 | 203 | XCN_OID_OIWSEC_sha1RSASign                           = 92, | 
 
 
 
 
 | 204 | XCN_OID_OIWDIR                                       = 93, | 
 
 
 
 
 | 205 | XCN_OID_OIWDIR_CRPT                                  = 94, | 
 
 
 
 
 | 206 | XCN_OID_OIWDIR_HASH                                  = 95, | 
 
 
 
 
 | 207 | XCN_OID_OIWDIR_SIGN                                  = 96, | 
 
 
 
 
 | 208 | XCN_OID_OIWDIR_md2                                   = 97, | 
 
 
 
 
 | 209 | XCN_OID_OIWDIR_md2RSA                                = 98, | 
 
 
 
 
 | 210 | XCN_OID_INFOSEC                                      = 99, | 
 
 
 
 
 | 211 | XCN_OID_INFOSEC_sdnsSignature                        = 100, | 
 
 
 
 
 | 212 | XCN_OID_INFOSEC_mosaicSignature                      = 101, | 
 
 
 
 
 | 213 | XCN_OID_INFOSEC_sdnsConfidentiality                  = 102, | 
 
 
 
 
 | 214 | XCN_OID_INFOSEC_mosaicConfidentiality                = 103, | 
 
 
 
 
 | 215 | XCN_OID_INFOSEC_sdnsIntegrity                        = 104, | 
 
 
 
 
 | 216 | XCN_OID_INFOSEC_mosaicIntegrity                      = 105, | 
 
 
 
 
 | 217 | XCN_OID_INFOSEC_sdnsTokenProtection                  = 106, | 
 
 
 
 
 | 218 | XCN_OID_INFOSEC_mosaicTokenProtection                = 107, | 
 
 
 
 
 | 219 | XCN_OID_INFOSEC_sdnsKeyManagement                    = 108, | 
 
 
 
 
 | 220 | XCN_OID_INFOSEC_mosaicKeyManagement                  = 109, | 
 
 
 
 
 | 221 | XCN_OID_INFOSEC_sdnsKMandSig                         = 110, | 
 
 
 
 
 | 222 | XCN_OID_INFOSEC_mosaicKMandSig                       = 111, | 
 
 
 
 
 | 223 | XCN_OID_INFOSEC_SuiteASignature                      = 112, | 
 
 
 
 
 | 224 | XCN_OID_INFOSEC_SuiteAConfidentiality                = 113, | 
 
 
 
 
 | 225 | XCN_OID_INFOSEC_SuiteAIntegrity                      = 114, | 
 
 
 
 
 | 226 | XCN_OID_INFOSEC_SuiteATokenProtection                = 115, | 
 
 
 
 
 | 227 | XCN_OID_INFOSEC_SuiteAKeyManagement                  = 116, | 
 
 
 
 
 | 228 | XCN_OID_INFOSEC_SuiteAKMandSig                       = 117, | 
 
 
 
 
 | 229 | XCN_OID_INFOSEC_mosaicUpdatedSig                     = 118, | 
 
 
 
 
 | 230 | XCN_OID_INFOSEC_mosaicKMandUpdSig                    = 119, | 
 
 
 
 
 | 231 | XCN_OID_INFOSEC_mosaicUpdatedInteg                   = 120, | 
 
 
 
 
 | 232 | XCN_OID_COMMON_NAME                                  = 121, | 
 
 
 
 
 | 233 | XCN_OID_SUR_NAME                                     = 122, | 
 
 
 
 
 | 234 | XCN_OID_DEVICE_SERIAL_NUMBER                         = 123, | 
 
 
 
 
 | 235 | XCN_OID_COUNTRY_NAME                                 = 124, | 
 
 
 
 
 | 236 | XCN_OID_LOCALITY_NAME                                = 125, | 
 
 
 
 
 | 237 | XCN_OID_STATE_OR_PROVINCE_NAME                       = 126, | 
 
 
 
 
 | 238 | XCN_OID_STREET_ADDRESS                               = 127, | 
 
 
 
 
 | 239 | XCN_OID_ORGANIZATION_NAME                            = 128, | 
 
 
 
 
 | 240 | XCN_OID_ORGANIZATIONAL_UNIT_NAME                     = 129, | 
 
 
 
 
 | 241 | XCN_OID_TITLE                                        = 130, | 
 
 
 
 
 | 242 | XCN_OID_DESCRIPTION                                  = 131, | 
 
 
 
 
 | 243 | XCN_OID_SEARCH_GUIDE                                 = 132, | 
 
 
 
 
 | 244 | XCN_OID_BUSINESS_CATEGORY                            = 133, | 
 
 
 
 
 | 245 | XCN_OID_POSTAL_ADDRESS                               = 134, | 
 
 
 
 
 | 246 | XCN_OID_POSTAL_CODE                                  = 135, | 
 
 
 
 
 | 247 | XCN_OID_POST_OFFICE_BOX                              = 136, | 
 
 
 
 
 | 248 | XCN_OID_PHYSICAL_DELIVERY_OFFICE_NAME                = 137, | 
 
 
 
 
 | 249 | XCN_OID_TELEPHONE_NUMBER                             = 138, | 
 
 
 
 
 | 250 | XCN_OID_TELEX_NUMBER                                 = 139, | 
 
 
 
 
 | 251 | XCN_OID_TELETEXT_TERMINAL_IDENTIFIER                 = 140, | 
 
 
 
 
 | 252 | XCN_OID_FACSIMILE_TELEPHONE_NUMBER                   = 141, | 
 
 
 
 
 | 253 | XCN_OID_X21_ADDRESS                                  = 142, | 
 
 
 
 
 | 254 | XCN_OID_INTERNATIONAL_ISDN_NUMBER                    = 143, | 
 
 
 
 
 | 255 | XCN_OID_REGISTERED_ADDRESS                           = 144, | 
 
 
 
 
 | 256 | XCN_OID_DESTINATION_INDICATOR                        = 145, | 
 
 
 
 
 | 257 | XCN_OID_PREFERRED_DELIVERY_METHOD                    = 146, | 
 
 
 
 
 | 258 | XCN_OID_PRESENTATION_ADDRESS                         = 147, | 
 
 
 
 
 | 259 | XCN_OID_SUPPORTED_APPLICATION_CONTEXT                = 148, | 
 
 
 
 
 | 260 | XCN_OID_MEMBER                                       = 149, | 
 
 
 
 
 | 261 | XCN_OID_OWNER                                        = 150, | 
 
 
 
 
 | 262 | XCN_OID_ROLE_OCCUPANT                                = 151, | 
 
 
 
 
 | 263 | XCN_OID_SEE_ALSO                                     = 152, | 
 
 
 
 
 | 264 | XCN_OID_USER_PASSWORD                                = 153, | 
 
 
 
 
 | 265 | XCN_OID_USER_CERTIFICATE                             = 154, | 
 
 
 
 
 | 266 | XCN_OID_CA_CERTIFICATE                               = 155, | 
 
 
 
 
 | 267 | XCN_OID_AUTHORITY_REVOCATION_LIST                    = 156, | 
 
 
 
 
 | 268 | XCN_OID_CERTIFICATE_REVOCATION_LIST                  = 157, | 
 
 
 
 
 | 269 | XCN_OID_CROSS_CERTIFICATE_PAIR                       = 158, | 
 
 
 
 
 | 270 | XCN_OID_GIVEN_NAME                                   = 159, | 
 
 
 
 
 | 271 | XCN_OID_INITIALS                                     = 160, | 
 
 
 
 
 | 272 | XCN_OID_DN_QUALIFIER                                 = 161, | 
 
 
 
 
 | 273 | XCN_OID_DOMAIN_COMPONENT                             = 162, | 
 
 
 
 
 | 274 | XCN_OID_PKCS_12_FRIENDLY_NAME_ATTR                   = 163, | 
 
 
 
 
 | 275 | XCN_OID_PKCS_12_LOCAL_KEY_ID                         = 164, | 
 
 
 
 
 | 276 | XCN_OID_PKCS_12_KEY_PROVIDER_NAME_ATTR               = 165, | 
 
 
 
 
 | 277 | XCN_OID_LOCAL_MACHINE_KEYSET                         = 166, | 
 
 
 
 
 | 278 | XCN_OID_PKCS_12_EXTENDED_ATTRIBUTES                  = 167, | 
 
 
 
 
 | 279 | XCN_OID_KEYID_RDN                                    = 168, | 
 
 
 
 
 | 280 | XCN_OID_AUTHORITY_KEY_IDENTIFIER                     = 169, | 
 
 
 
 
 | 281 | XCN_OID_KEY_ATTRIBUTES                               = 170, | 
 
 
 
 
 | 282 | XCN_OID_CERT_POLICIES_95                             = 171, | 
 
 
 
 
 | 283 | XCN_OID_KEY_USAGE_RESTRICTION                        = 172, | 
 
 
 
 
 | 284 | XCN_OID_SUBJECT_ALT_NAME                             = 173, | 
 
 
 
 
 | 285 | XCN_OID_ISSUER_ALT_NAME                              = 174, | 
 
 
 
 
 | 286 | XCN_OID_BASIC_CONSTRAINTS                            = 175, | 
 
 
 
 
 | 287 | XCN_OID_KEY_USAGE                                    = 176, | 
 
 
 
 
 | 288 | XCN_OID_PRIVATEKEY_USAGE_PERIOD                      = 177, | 
 
 
 
 
 | 289 | XCN_OID_BASIC_CONSTRAINTS2                           = 178, | 
 
 
 
 
 | 290 | XCN_OID_CERT_POLICIES                                = 179, | 
 
 
 
 
 | 291 | XCN_OID_ANY_CERT_POLICY                              = 180, | 
 
 
 
 
 | 292 | XCN_OID_AUTHORITY_KEY_IDENTIFIER2                    = 181, | 
 
 
 
 
 | 293 | XCN_OID_SUBJECT_KEY_IDENTIFIER                       = 182, | 
 
 
 
 
 | 294 | XCN_OID_SUBJECT_ALT_NAME2                            = 183, | 
 
 
 
 
 | 295 | XCN_OID_ISSUER_ALT_NAME2                             = 184, | 
 
 
 
 
 | 296 | XCN_OID_CRL_REASON_CODE                              = 185, | 
 
 
 
 
 | 297 | XCN_OID_REASON_CODE_HOLD                             = 186, | 
 
 
 
 
 | 298 | XCN_OID_CRL_DIST_POINTS                              = 187, | 
 
 
 
 
 | 299 | XCN_OID_ENHANCED_KEY_USAGE                           = 188, | 
 
 
 
 
 | 300 | XCN_OID_CRL_NUMBER                                   = 189, | 
 
 
 
 
 | 301 | XCN_OID_DELTA_CRL_INDICATOR                          = 190, | 
 
 
 
 
 | 302 | XCN_OID_ISSUING_DIST_POINT                           = 191, | 
 
 
 
 
 | 303 | XCN_OID_FRESHEST_CRL                                 = 192, | 
 
 
 
 
 | 304 | XCN_OID_NAME_CONSTRAINTS                             = 193, | 
 
 
 
 
 | 305 | XCN_OID_POLICY_MAPPINGS                              = 194, | 
 
 
 
 
 | 306 | XCN_OID_LEGACY_POLICY_MAPPINGS                       = 195, | 
 
 
 
 
 | 307 | XCN_OID_POLICY_CONSTRAINTS                           = 196, | 
 
 
 
 
 | 308 | XCN_OID_RENEWAL_CERTIFICATE                          = 197, | 
 
 
 
 
 | 309 | XCN_OID_ENROLLMENT_NAME_VALUE_PAIR                   = 198, | 
 
 
 
 
 | 310 | XCN_OID_ENROLLMENT_CSP_PROVIDER                      = 199, | 
 
 
 
 
 | 311 | XCN_OID_OS_VERSION                                   = 200, | 
 
 
 
 
 | 312 | XCN_OID_ENROLLMENT_AGENT                             = 201, | 
 
 
 
 
 | 313 | XCN_OID_PKIX                                         = 202, | 
 
 
 
 
 | 314 | XCN_OID_PKIX_PE                                      = 203, | 
 
 
 
 
 | 315 | XCN_OID_AUTHORITY_INFO_ACCESS                        = 204, | 
 
 
 
 
 | 316 | XCN_OID_BIOMETRIC_EXT                                = 205, | 
 
 
 
 
 | 317 | XCN_OID_LOGOTYPE_EXT                                 = 206, | 
 
 
 
 
 | 318 | XCN_OID_CERT_EXTENSIONS                              = 207, | 
 
 
 
 
 | 319 | XCN_OID_NEXT_UPDATE_LOCATION                         = 208, | 
 
 
 
 
 | 320 | XCN_OID_REMOVE_CERTIFICATE                           = 209, | 
 
 
 
 
 | 321 | XCN_OID_CROSS_CERT_DIST_POINTS                       = 210, | 
 
 
 
 
 | 322 | XCN_OID_CTL                                          = 211, | 
 
 
 
 
 | 323 | XCN_OID_SORTED_CTL                                   = 212, | 
 
 
 
 
 | 324 | XCN_OID_SERIALIZED                                   = 213, | 
 
 
 
 
 | 325 | XCN_OID_NT_PRINCIPAL_NAME                            = 214, | 
 
 
 
 
 | 326 | XCN_OID_PRODUCT_UPDATE                               = 215, | 
 
 
 
 
 | 327 | XCN_OID_ANY_APPLICATION_POLICY                       = 216, | 
 
 
 
 
 | 328 | XCN_OID_AUTO_ENROLL_CTL_USAGE                        = 217, | 
 
 
 
 
 | 329 | XCN_OID_ENROLL_CERTTYPE_EXTENSION                    = 218, | 
 
 
 
 
 | 330 | XCN_OID_CERT_MANIFOLD                                = 219, | 
 
 
 
 
 | 331 | XCN_OID_CERTSRV_CA_VERSION                           = 220, | 
 
 
 
 
 | 332 | XCN_OID_CERTSRV_PREVIOUS_CERT_HASH                   = 221, | 
 
 
 
 
 | 333 | XCN_OID_CRL_VIRTUAL_BASE                             = 222, | 
 
 
 
 
 | 334 | XCN_OID_CRL_NEXT_PUBLISH                             = 223, | 
 
 
 
 
 | 335 | XCN_OID_KP_CA_EXCHANGE                               = 224, | 
 
 
 
 
 | 336 | XCN_OID_KP_KEY_RECOVERY_AGENT                        = 225, | 
 
 
 
 
 | 337 | XCN_OID_CERTIFICATE_TEMPLATE                         = 226, | 
 
 
 
 
 | 338 | XCN_OID_ENTERPRISE_OID_ROOT                          = 227, | 
 
 
 
 
 | 339 | XCN_OID_RDN_DUMMY_SIGNER                             = 228, | 
 
 
 
 
 | 340 | XCN_OID_APPLICATION_CERT_POLICIES                    = 229, | 
 
 
 
 
 | 341 | XCN_OID_APPLICATION_POLICY_MAPPINGS                  = 230, | 
 
 
 
 
 | 342 | XCN_OID_APPLICATION_POLICY_CONSTRAINTS               = 231, | 
 
 
 
 
 | 343 | XCN_OID_ARCHIVED_KEY_ATTR                            = 232, | 
 
 
 
 
 | 344 | XCN_OID_CRL_SELF_CDP                                 = 233, | 
 
 
 
 
 | 345 | XCN_OID_REQUIRE_CERT_CHAIN_POLICY                    = 234, | 
 
 
 
 
 | 346 | XCN_OID_ARCHIVED_KEY_CERT_HASH                       = 235, | 
 
 
 
 
 | 347 | XCN_OID_ISSUED_CERT_HASH                             = 236, | 
 
 
 
 
 | 348 | XCN_OID_DS_EMAIL_REPLICATION                         = 237, | 
 
 
 
 
 | 349 | XCN_OID_REQUEST_CLIENT_INFO                          = 238, | 
 
 
 
 
 | 350 | XCN_OID_ENCRYPTED_KEY_HASH                           = 239, | 
 
 
 
 
 | 351 | XCN_OID_CERTSRV_CROSSCA_VERSION                      = 240, | 
 
 
 
 
 | 352 | XCN_OID_NTDS_REPLICATION                             = 241, | 
 
 
 
 
 | 353 | XCN_OID_SUBJECT_DIR_ATTRS                            = 242, | 
 
 
 
 
 | 354 | XCN_OID_PKIX_KP                                      = 243, | 
 
 
 
 
 | 355 | XCN_OID_PKIX_KP_SERVER_AUTH                          = 244, | 
 
 
 
 
 | 356 | XCN_OID_PKIX_KP_CLIENT_AUTH                          = 245, | 
 
 
 
 
 | 357 | XCN_OID_PKIX_KP_CODE_SIGNING                         = 246, | 
 
 
 
 
 | 358 | XCN_OID_PKIX_KP_EMAIL_PROTECTION                     = 247, | 
 
 
 
 
 | 359 | XCN_OID_PKIX_KP_IPSEC_END_SYSTEM                     = 248, | 
 
 
 
 
 | 360 | XCN_OID_PKIX_KP_IPSEC_TUNNEL                         = 249, | 
 
 
 
 
 | 361 | XCN_OID_PKIX_KP_IPSEC_USER                           = 250, | 
 
 
 
 
 | 362 | XCN_OID_PKIX_KP_TIMESTAMP_SIGNING                    = 251, | 
 
 
 
 
 | 363 | XCN_OID_PKIX_KP_OCSP_SIGNING                         = 252, | 
 
 
 
 
 | 364 | XCN_OID_PKIX_OCSP_NOCHECK                            = 253, | 
 
 
 
 
 | 365 | XCN_OID_IPSEC_KP_IKE_INTERMEDIATE                    = 254, | 
 
 
 
 
 | 366 | XCN_OID_KP_CTL_USAGE_SIGNING                         = 255, | 
 
 
 
 
 | 367 | XCN_OID_KP_TIME_STAMP_SIGNING                        = 256, | 
 
 
 
 
 | 368 | XCN_OID_SERVER_GATED_CRYPTO                          = 257, | 
 
 
 
 
 | 369 | XCN_OID_SGC_NETSCAPE                                 = 258, | 
 
 
 
 
 | 370 | XCN_OID_KP_EFS                                       = 259, | 
 
 
 
 
 | 371 | XCN_OID_EFS_RECOVERY                                 = 260, | 
 
 
 
 
 | 372 | XCN_OID_WHQL_CRYPTO                                  = 261, | 
 
 
 
 
 | 373 | XCN_OID_NT5_CRYPTO                                   = 262, | 
 
 
 
 
 | 374 | XCN_OID_OEM_WHQL_CRYPTO                              = 263, | 
 
 
 
 
 | 375 | XCN_OID_EMBEDDED_NT_CRYPTO                           = 264, | 
 
 
 
 
 | 376 | XCN_OID_ROOT_LIST_SIGNER                             = 265, | 
 
 
 
 
 | 377 | XCN_OID_KP_QUALIFIED_SUBORDINATION                   = 266, | 
 
 
 
 
 | 378 | XCN_OID_KP_KEY_RECOVERY                              = 267, | 
 
 
 
 
 | 379 | XCN_OID_KP_DOCUMENT_SIGNING                          = 268, | 
 
 
 
 
 | 380 | XCN_OID_KP_LIFETIME_SIGNING                          = 269, | 
 
 
 
 
 | 381 | XCN_OID_KP_MOBILE_DEVICE_SOFTWARE                    = 270, | 
 
 
 
 
 | 382 | XCN_OID_KP_SMART_DISPLAY                             = 271, | 
 
 
 
 
 | 383 | XCN_OID_KP_CSP_SIGNATURE                             = 272, | 
 
 
 
 
 | 384 | XCN_OID_DRM                                          = 273, | 
 
 
 
 
 | 385 | XCN_OID_DRM_INDIVIDUALIZATION                        = 274, | 
 
 
 
 
 | 386 | XCN_OID_LICENSES                                     = 275, | 
 
 
 
 
 | 387 | XCN_OID_LICENSE_SERVER                               = 276, | 
 
 
 
 
 | 388 | XCN_OID_KP_SMARTCARD_LOGON                           = 277, | 
 
 
 
 
 | 389 | XCN_OID_YESNO_TRUST_ATTR                             = 278, | 
 
 
 
 
 | 390 | XCN_OID_PKIX_POLICY_QUALIFIER_CPS                    = 279, | 
 
 
 
 
 | 391 | XCN_OID_PKIX_POLICY_QUALIFIER_USERNOTICE             = 280, | 
 
 
 
 
 | 392 | XCN_OID_CERT_POLICIES_95_QUALIFIER1                  = 281, | 
 
 
 
 
 | 393 | XCN_OID_PKIX_ACC_DESCR                               = 282, | 
 
 
 
 
 | 394 | XCN_OID_PKIX_OCSP                                    = 283, | 
 
 
 
 
 | 395 | XCN_OID_PKIX_CA_ISSUERS                              = 284, | 
 
 
 
 
 | 396 | XCN_OID_VERISIGN_PRIVATE_6_9                         = 285, | 
 
 
 
 
 | 397 | XCN_OID_VERISIGN_ONSITE_JURISDICTION_HASH            = 286, | 
 
 
 
 
 | 398 | XCN_OID_VERISIGN_BITSTRING_6_13                      = 287, | 
 
 
 
 
 | 399 | XCN_OID_VERISIGN_ISS_STRONG_CRYPTO                   = 288, | 
 
 
 
 
 | 400 | XCN_OID_NETSCAPE                                     = 289, | 
 
 
 
 
 | 401 | XCN_OID_NETSCAPE_CERT_EXTENSION                      = 290, | 
 
 
 
 
 | 402 | XCN_OID_NETSCAPE_CERT_TYPE                           = 291, | 
 
 
 
 
 | 403 | XCN_OID_NETSCAPE_BASE_URL                            = 292, | 
 
 
 
 
 | 404 | XCN_OID_NETSCAPE_REVOCATION_URL                      = 293, | 
 
 
 
 
 | 405 | XCN_OID_NETSCAPE_CA_REVOCATION_URL                   = 294, | 
 
 
 
 
 | 406 | XCN_OID_NETSCAPE_CERT_RENEWAL_URL                    = 295, | 
 
 
 
 
 | 407 | XCN_OID_NETSCAPE_CA_POLICY_URL                       = 296, | 
 
 
 
 
 | 408 | XCN_OID_NETSCAPE_SSL_SERVER_NAME                     = 297, | 
 
 
 
 
 | 409 | XCN_OID_NETSCAPE_COMMENT                             = 298, | 
 
 
 
 
 | 410 | XCN_OID_NETSCAPE_DATA_TYPE                           = 299, | 
 
 
 
 
 | 411 | XCN_OID_NETSCAPE_CERT_SEQUENCE                       = 300, | 
 
 
 
 
 | 412 | XCN_OID_CT_PKI_DATA                                  = 301, | 
 
 
 
 
 | 413 | XCN_OID_CT_PKI_RESPONSE                              = 302, | 
 
 
 
 
 | 414 | XCN_OID_PKIX_NO_SIGNATURE                            = 303, | 
 
 
 
 
 | 415 | XCN_OID_CMC                                          = 304, | 
 
 
 
 
 | 416 | XCN_OID_CMC_STATUS_INFO                              = 305, | 
 
 
 
 
 | 417 | XCN_OID_CMC_IDENTIFICATION                           = 306, | 
 
 
 
 
 | 418 | XCN_OID_CMC_IDENTITY_PROOF                           = 307, | 
 
 
 
 
 | 419 | XCN_OID_CMC_DATA_RETURN                              = 308, | 
 
 
 
 
 | 420 | XCN_OID_CMC_TRANSACTION_ID                           = 309, | 
 
 
 
 
 | 421 | XCN_OID_CMC_SENDER_NONCE                             = 310, | 
 
 
 
 
 | 422 | XCN_OID_CMC_RECIPIENT_NONCE                          = 311, | 
 
 
 
 
 | 423 | XCN_OID_CMC_ADD_EXTENSIONS                           = 312, | 
 
 
 
 
 | 424 | XCN_OID_CMC_ENCRYPTED_POP                            = 313, | 
 
 
 
 
 | 425 | XCN_OID_CMC_DECRYPTED_POP                            = 314, | 
 
 
 
 
 | 426 | XCN_OID_CMC_LRA_POP_WITNESS                          = 315, | 
 
 
 
 
 | 427 | XCN_OID_CMC_GET_CERT                                 = 316, | 
 
 
 
 
 | 428 | XCN_OID_CMC_GET_CRL                                  = 317, | 
 
 
 
 
 | 429 | XCN_OID_CMC_REVOKE_REQUEST                           = 318, | 
 
 
 
 
 | 430 | XCN_OID_CMC_REG_INFO                                 = 319, | 
 
 
 
 
 | 431 | XCN_OID_CMC_RESPONSE_INFO                            = 320, | 
 
 
 
 
 | 432 | XCN_OID_CMC_QUERY_PENDING                            = 321, | 
 
 
 
 
 | 433 | XCN_OID_CMC_ID_POP_LINK_RANDOM                       = 322, | 
 
 
 
 
 | 434 | XCN_OID_CMC_ID_POP_LINK_WITNESS                      = 323, | 
 
 
 
 
 | 435 | XCN_OID_CMC_ID_CONFIRM_CERT_ACCEPTANCE               = 324, | 
 
 
 
 
 | 436 | XCN_OID_CMC_ADD_ATTRIBUTES                           = 325, | 
 
 
 
 
 | 437 | XCN_OID_LOYALTY_OTHER_LOGOTYPE                       = 326, | 
 
 
 
 
 | 438 | XCN_OID_BACKGROUND_OTHER_LOGOTYPE                    = 327, | 
 
 
 
 
 | 439 | XCN_OID_PKIX_OCSP_BASIC_SIGNED_RESPONSE              = 328, | 
 
 
 
 
 | 440 | XCN_OID_PKCS_7_DATA                                  = 329, | 
 
 
 
 
 | 441 | XCN_OID_PKCS_7_SIGNED                                = 330, | 
 
 
 
 
 | 442 | XCN_OID_PKCS_7_ENVELOPED                             = 331, | 
 
 
 
 
 | 443 | XCN_OID_PKCS_7_SIGNEDANDENVELOPED                    = 332, | 
 
 
 
 
 | 444 | XCN_OID_PKCS_7_DIGESTED                              = 333, | 
 
 
 
 
 | 445 | XCN_OID_PKCS_7_ENCRYPTED                             = 334, | 
 
 
 
 
 | 446 | XCN_OID_PKCS_9_CONTENT_TYPE                          = 335, | 
 
 
 
 
 | 447 | XCN_OID_PKCS_9_MESSAGE_DIGEST                        = 336, | 
 
 
 
 
 | 448 | XCN_OID_CERT_PROP_ID_PREFIX                          = 337, | 
 
 
 
 
 | 449 | XCN_OID_CERT_KEY_IDENTIFIER_PROP_ID                  = 338, | 
 
 
 
 
 | 450 | XCN_OID_CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID   = 339, | 
 
 
 
 
 | 451 | XCN_OID_CERT_SUBJECT_NAME_MD5_HASH_PROP_ID           = 340, | 
 
 
 
 
 | 452 | XCN_OID_CERT_MD5_HASH_PROP_ID                        = 341, | 
 
 
 
 
 | 453 | XCN_OID_RSA_SHA256RSA                                = 342, | 
 
 
 
 
 | 454 | XCN_OID_RSA_SHA384RSA                                = 343, | 
 
 
 
 
 | 455 | XCN_OID_RSA_SHA512RSA                                = 344, | 
 
 
 
 
 | 456 | XCN_OID_NIST_sha256                                  = 345, | 
 
 
 
 
 | 457 | XCN_OID_NIST_sha384                                  = 346, | 
 
 
 
 
 | 458 | XCN_OID_NIST_sha512                                  = 347, | 
 
 
 
 
 | 459 | XCN_OID_RSA_MGF1                                     = 348, | 
 
 
 
 
 | 460 | XCN_OID_ECC_PUBLIC_KEY                               = 349, | 
 
 
 
 
 | 461 | XCN_OID_RSA_SSA_PSS                                  = 353, | 
 
 
 
 
 | 462 | XCN_OID_ECDSA_SHA1                                   = 354, | 
 
 
 
 
 | 463 | XCN_OID_ECDSA_SPECIFIED                              = 354 | 
 
 
 
 
 | 464 | } CERTENROLL_OBJECTID; | 
 
 
 
 
 | 465 |  | 
 
 
 
 
 | 466 | typedef enum EnrollmentCAProperty { | 
 
 
 
 
 | 467 | CAPropCommonName           = 1, | 
 
 
 
 
 | 468 | CAPropDistinguishedName    = 2, | 
 
 
 
 
 | 469 | CAPropSanitizedName        = 3, | 
 
 
 
 
 | 470 | CAPropSanitizedShortName   = 4, | 
 
 
 
 
 | 471 | CAPropDNSName              = 5, | 
 
 
 
 
 | 472 | CAPropCertificateTypes     = 6, | 
 
 
 
 
 | 473 | CAPropCertificate          = 7, | 
 
 
 
 
 | 474 | CAPropDescription          = 8, | 
 
 
 
 
 | 475 | CAPropWebServers           = 9, | 
 
 
 
 
 | 476 | CAPropSiteName             = 10, | 
 
 
 
 
 | 477 | CAPropSecurity             = 11, | 
 
 
 
 
 | 478 | CAPropRenewalOnly          = 12 | 
 
 
 
 
 | 479 | } EnrollmentCAProperty; | 
 
 
 
 
 | 480 |  | 
 
 
 
 
 | 481 | typedef enum EncodingType { | 
 
 
 
 
 | 482 | XCN_CRYPT_STRING_BASE64HEADER          = 0, | 
 
 
 
 
 | 483 | XCN_CRYPT_STRING_BASE64                = 0x1, | 
 
 
 
 
 | 484 | XCN_CRYPT_STRING_BINARY                = 0x2, | 
 
 
 
 
 | 485 | XCN_CRYPT_STRING_BASE64REQUESTHEADER   = 0x3, | 
 
 
 
 
 | 486 | XCN_CRYPT_STRING_HEX                   = 0x4, | 
 
 
 
 
 | 487 | XCN_CRYPT_STRING_HEXASCII              = 0x5, | 
 
 
 
 
 | 488 | XCN_CRYPT_STRING_BASE64_ANY            = 0x6, | 
 
 
 
 
 | 489 | XCN_CRYPT_STRING_ANY                   = 0x7, | 
 
 
 
 
 | 490 | XCN_CRYPT_STRING_HEX_ANY               = 0x8, | 
 
 
 
 
 | 491 | XCN_CRYPT_STRING_BASE64X509CRLHEADER   = 0x9, | 
 
 
 
 
 | 492 | XCN_CRYPT_STRING_HEXADDR               = 0xa, | 
 
 
 
 
 | 493 | XCN_CRYPT_STRING_HEXASCIIADDR          = 0xb, | 
 
 
 
 
 | 494 | XCN_CRYPT_STRING_HEXRAW                = 0xc, | 
 
 
 
 
 | 495 | XCN_CRYPT_STRING_NOCRLF                = 0x40000000, | 
 
 
 
 
 | 496 | XCN_CRYPT_STRING_NOCR                  = 0x80000000 | 
 
 
 
 
 | 497 | } EncodingType; | 
 
 
 
 
 | 498 |  | 
 
 
 
 
 | 499 | typedef enum CommitTemplateFlags { | 
 
 
 
 
 | 500 | CommitFlagSaveTemplateGenerateOID     = 1, | 
 
 
 
 
 | 501 | CommitFlagSaveTemplateUseCurrentOID   = 2, | 
 
 
 
 
 | 502 | CommitFlagSaveTemplateOverwrite       = 3, | 
 
 
 
 
 | 503 | CommitFlagDeleteTemplate              = 4 | 
 
 
 
 
 | 504 | } CommitTemplateFlags; | 
 
 
 
 
 | 505 |  | 
 
 
 
 
 | 506 | typedef enum EnrollmentDisplayStatus { | 
 
 
 
 
 | 507 | DisplayNo    = 0, | 
 
 
 
 
 | 508 | DisplayYes   = 1 | 
 
 
 
 
 | 509 | } EnrollmentDisplayStatus; | 
 
 
 
 
 | 510 |  | 
 
 
 
 
 | 511 | typedef enum EnrollmentEnrollStatus { | 
 
 
 
 
 | 512 | Enrolled                             = 0x00000001, | 
 
 
 
 
 | 513 | EnrollPended                         = 0x00000002, | 
 
 
 
 
 | 514 | EnrollUIDeferredEnrollmentRequired   = 0x00000004, | 
 
 
 
 
 | 515 | EnrollError                          = 0x00000010, | 
 
 
 
 
 | 516 | EnrollUnknown                        = 0x00000020, | 
 
 
 
 
 | 517 | EnrollSkipped                        = 0x00000040, | 
 
 
 
 
 | 518 | EnrollDenied                         = 0x00000100 | 
 
 
 
 
 | 519 | } EnrollmentEnrollStatus; | 
 
 
 
 
 | 520 |  | 
 
 
 
 
 | 521 | #if (_WIN32_WINNT >= 0x0601) | 
 
 
 
 
 | 522 | enum EnrollmentPolicyFlags { | 
 
 
 
 
 | 523 | DisableGroupPolicyList   = 0x2, | 
 
 
 
 
 | 524 | DisableUserServerList    = 0x4 | 
 
 
 
 
 | 525 | }; | 
 
 
 
 
 | 526 |  | 
 
 
 
 
 | 527 | typedef enum EnrollmentPolicyServerPropertyFlags { | 
 
 
 
 
 | 528 | DefaultNone           = 0x00000000, | 
 
 
 
 
 | 529 | DefaultPolicyServer   = 0x00000001 | 
 
 
 
 
 | 530 | } EnrollmentPolicyServerPropertyFlags; | 
 
 
 
 
 | 531 |  | 
 
 
 
 
 | 532 | #endif /*(_WIN32_WINNT >= 0x0601)*/ | 
 
 
 
 
 | 533 |  | 
 
 
 
 
 | 534 | typedef enum EnrollmentSelectionStatus { | 
 
 
 
 
 | 535 | SelectedNo    = 0, | 
 
 
 
 
 | 536 | SelectedYes   = 1 | 
 
 
 
 
 | 537 | } EnrollmentSelectionStatus; | 
 
 
 
 
 | 538 |  | 
 
 
 
 
 | 539 | #if (_WIN32_WINNT >= 0x0601) | 
 
 
 
 
 | 540 |  | 
 
 
 
 
 | 541 | typedef enum EnrollmentTemplateProperty { | 
 
 
 
 
 | 542 | TemplatePropCommonName              = 1, | 
 
 
 
 
 | 543 | TemplatePropFriendlyName            = 2, | 
 
 
 
 
 | 544 | TemplatePropEKUs                    = 3, | 
 
 
 
 
 | 545 | TemplatePropCryptoProviders         = 4, | 
 
 
 
 
 | 546 | TemplatePropMajorRevision           = 5, | 
 
 
 
 
 | 547 | TemplatePropDescription             = 6, | 
 
 
 
 
 | 548 | TemplatePropKeySpec                 = 7, | 
 
 
 
 
 | 549 | TemplatePropSchemaVersion           = 8, | 
 
 
 
 
 | 550 | TemplatePropMinorRevision           = 9, | 
 
 
 
 
 | 551 | TemplatePropRASignatureCount        = 10, | 
 
 
 
 
 | 552 | TemplatePropMinimumKeySize          = 11, | 
 
 
 
 
 | 553 | TemplatePropOID                     = 12, | 
 
 
 
 
 | 554 | TemplatePropSupersede               = 13, | 
 
 
 
 
 | 555 | TemplatePropRACertificatePolicies   = 14, | 
 
 
 
 
 | 556 | TemplatePropRAEKUs                  = 15, | 
 
 
 
 
 | 557 | TemplatePropCertificatePolicies     = 16, | 
 
 
 
 
 | 558 | TemplatePropV1ApplicationPolicy     = 17, | 
 
 
 
 
 | 559 | TemplatePropAsymmetricAlgorithm     = 18, | 
 
 
 
 
 | 560 | TemplatePropKeySecurityDescriptor   = 19, | 
 
 
 
 
 | 561 | TemplatePropSymmetricAlgorithm      = 20, | 
 
 
 
 
 | 562 | TemplatePropSymmetricKeyLength      = 21, | 
 
 
 
 
 | 563 | TemplatePropHashAlgorithm           = 22, | 
 
 
 
 
 | 564 | TemplatePropEnrollmentFlags         = 23, | 
 
 
 
 
 | 565 | TemplatePropSubjectNameFlags        = 24, | 
 
 
 
 
 | 566 | TemplatePropPrivateKeyFlags         = 25, | 
 
 
 
 
 | 567 | TemplatePropGeneralFlags            = 26, | 
 
 
 
 
 | 568 | TemplatePropSecurityDescriptor      = 27, | 
 
 
 
 
 | 569 | TemplatePropExtensions              = 28, | 
 
 
 
 
 | 570 | TemplatePropValidityPeriod          = 29, | 
 
 
 
 
 | 571 | TemplatePropRenewalPeriod           = 30 | 
 
 
 
 
 | 572 | } EnrollmentTemplateProperty; | 
 
 
 
 
 | 573 | #endif /*(_WIN32_WINNT >= 0x0601)*/ | 
 
 
 
 
 | 574 |  | 
 
 
 
 
 | 575 | typedef enum InnerRequestLevel { | 
 
 
 
 
 | 576 | LevelInnermost   = 0, | 
 
 
 
 
 | 577 | LevelNext        = 1 | 
 
 
 
 
 | 578 | } InnerRequestLevel; | 
 
 
 
 
 | 579 |  | 
 
 
 
 
 | 580 | typedef enum InstallResponseRestrictionFlags { | 
 
 
 
 
 | 581 | AllowNone                   = 0x00000000, | 
 
 
 
 
 | 582 | AllowNoOutstandingRequest   = 0x00000001, | 
 
 
 
 
 | 583 | AllowUntrustedCertificate   = 0x00000002, | 
 
 
 
 
 | 584 | AllowUntrustedRoot          = 0x00000004 | 
 
 
 
 
 | 585 | } InstallResponseRestrictionFlags; | 
 
 
 
 
 | 586 |  | 
 
 
 
 
 | 587 | typedef enum KeyIdentifierHashAlgorithm { | 
 
 
 
 
 | 588 | SKIHashDefault    = 0, | 
 
 
 
 
 | 589 | SKIHashSha1       = 1, | 
 
 
 
 
 | 590 | SKIHashCapiSha1   = 2 | 
 
 
 
 
 | 591 | } KeyIdentifierHashAlgorithm; | 
 
 
 
 
 | 592 |  | 
 
 
 
 
 | 593 | typedef enum ObjectIdGroupId { | 
 
 
 
 
 | 594 | XCN_CRYPT_ANY_GROUP_ID                 = 0, | 
 
 
 
 
 | 595 | XCN_CRYPT_HASH_ALG_OID_GROUP_ID        = 1, | 
 
 
 
 
 | 596 | XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID     = 2, | 
 
 
 
 
 | 597 | XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID      = 3, | 
 
 
 
 
 | 598 | XCN_CRYPT_SIGN_ALG_OID_GROUP_ID        = 4, | 
 
 
 
 
 | 599 | XCN_CRYPT_RDN_ATTR_OID_GROUP_ID        = 5, | 
 
 
 
 
 | 600 | XCN_CRYPT_EXT_OR_ATTR_OID_GROUP_ID     = 6, | 
 
 
 
 
 | 601 | XCN_CRYPT_ENHKEY_USAGE_OID_GROUP_ID    = 7, | 
 
 
 
 
 | 602 | XCN_CRYPT_POLICY_OID_GROUP_ID          = 8, | 
 
 
 
 
 | 603 | XCN_CRYPT_TEMPLATE_OID_GROUP_ID        = 9, | 
 
 
 
 
 | 604 | XCN_CRYPT_LAST_OID_GROUP_ID            = 9, | 
 
 
 
 
 | 605 | XCN_CRYPT_FIRST_ALG_OID_GROUP_ID       = 1, | 
 
 
 
 
 | 606 | XCN_CRYPT_LAST_ALG_OID_GROUP_ID        = 4, | 
 
 
 
 
 | 607 | XCN_CRYPT_OID_DISABLE_SEARCH_DS_FLAG   = 0x80000000, | 
 
 
 
 
 | 608 | XCN_CRYPT_KEY_LENGTH_MASK              = 0xffff0000 | 
 
 
 
 
 | 609 | } ObjectIdGroupId; | 
 
 
 
 
 | 610 |  | 
 
 
 
 
 | 611 | typedef enum ObjectIdPublicKeyFlags { | 
 
 
 
 
 | 612 | XCN_CRYPT_OID_INFO_PUBKEY_ANY                = 0, | 
 
 
 
 
 | 613 | XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG      = 0x80000000, | 
 
 
 
 
 | 614 | XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG   = 0x40000000 | 
 
 
 
 
 | 615 | } ObjectIdPublicKeyFlags; | 
 
 
 
 
 | 616 |  | 
 
 
 
 
 | 617 | typedef enum PFXExportOptions { | 
 
 
 
 
 | 618 | PFXExportEEOnly          = 0, | 
 
 
 
 
 | 619 | PFXExportChainNoRoot     = 1, | 
 
 
 
 
 | 620 | PFXExportChainWithRoot   = 2 | 
 
 
 
 
 | 621 | } PFXExportOptions; | 
 
 
 
 
 | 622 |  | 
 
 
 
 
 | 623 | typedef enum Pkcs10AllowedSignatureTypes { | 
 
 
 
 
 | 624 | AllowedKeySignature    = 0x1, | 
 
 
 
 
 | 625 | AllowedNullSignature   = 0x2 | 
 
 
 
 
 | 626 | } Pkcs10AllowedSignatureTypes; | 
 
 
 
 
 | 627 |  | 
 
 
 
 
 | 628 | typedef enum PolicyQualifierType { | 
 
 
 
 
 | 629 | PolicyQualifierTypeUnknown      = 0, | 
 
 
 
 
 | 630 | PolicyQualifierTypeUrl          = 1, | 
 
 
 
 
 | 631 | PolicyQualifierTypeUserNotice   = 2 | 
 
 
 
 
 | 632 | } PolicyQualifierType; | 
 
 
 
 
 | 633 |  | 
 
 
 
 
 | 634 | typedef enum PolicyServerUrlFlags { | 
 
 
 
 
 | 635 | PsfNone                    = 0, | 
 
 
 
 
 | 636 | PsfLocationGroupPolicy     = 1, | 
 
 
 
 
 | 637 | PsfLocationRegistry        = 2, | 
 
 
 
 
 | 638 | PsfUseClientId             = 4, | 
 
 
 
 
 | 639 | PsfAutoEnrollmentEnabled   = 16, | 
 
 
 
 
 | 640 | PsfAllowUnTrustedCA        = 32 | 
 
 
 
 
 | 641 | } PolicyServerUrlFlags; | 
 
 
 
 
 | 642 |  | 
 
 
 
 
 | 643 | #if (_WIN32_WINNT >= 0x0601) | 
 
 
 
 
 | 644 |  | 
 
 
 
 
 | 645 | typedef enum PolicyServerUrlPropertyID { | 
 
 
 
 
 | 646 | PsPolicyID       = 0, | 
 
 
 
 
 | 647 | PsFriendlyName   = 1 | 
 
 
 
 
 | 648 | } PolicyServerUrlPropertyID; | 
 
 
 
 
 | 649 |  | 
 
 
 
 
 | 650 | #endif /*(_WIN32_WINNT >= 0x0601)*/ | 
 
 
 
 
 | 651 |  | 
 
 
 
 
 | 652 | typedef enum RequestClientInfoClientId { | 
 
 
 
 
 | 653 | ClientIdNone             = 0, | 
 
 
 
 
 | 654 | ClientIdXEnroll2003      = 1, | 
 
 
 
 
 | 655 | ClientIdAutoEnroll2003   = 2, | 
 
 
 
 
 | 656 | ClientIdWizard2003       = 3, | 
 
 
 
 
 | 657 | ClientIdCertReq2003      = 4, | 
 
 
 
 
 | 658 | ClientIdDefaultRequest   = 5, | 
 
 
 
 
 | 659 | ClientIdAutoEnroll       = 6, | 
 
 
 
 
 | 660 | ClientIdRequestWizard    = 7, | 
 
 
 
 
 | 661 | ClientIdEOBO             = 8, | 
 
 
 
 
 | 662 | ClientIdCertReq          = 9, | 
 
 
 
 
 | 663 | ClientIdTest             = 10, | 
 
 
 
 
 | 664 | ClientIdUserStart        = 1000 | 
 
 
 
 
 | 665 | } RequestClientInfoClientId; | 
 
 
 
 
 | 666 |  | 
 
 
 
 
 | 667 | #if (_WIN32_WINNT >= 0x0601) | 
 
 
 
 
 | 668 |  | 
 
 
 
 
 | 669 | typedef enum WebEnrollmentFlags { | 
 
 
 
 
 | 670 | EnrollPrompt   = 0x00000001 | 
 
 
 
 
 | 671 | } WebEnrollmentFlags; | 
 
 
 
 
 | 672 |  | 
 
 
 
 
 | 673 | #endif /*(_WIN32_WINNT >= 0x0601)*/ | 
 
 
 
 
 | 674 |  | 
 
 
 
 
 | 675 | typedef enum WebSecurityLevel { | 
 
 
 
 
 | 676 | LevelUnsafe   = 0, | 
 
 
 
 
 | 677 | LevelSafe     = 1 | 
 
 
 
 
 | 678 | } WebSecurityLevel; | 
 
 
 
 
 | 679 |  | 
 
 
 
 
 | 680 | typedef enum X500NameFlags { | 
 
 
 
 
 | 681 | XCN_CERT_NAME_STR_NONE                        = 0, | 
 
 
 
 
 | 682 | XCN_CERT_SIMPLE_NAME_STR                      = 1, | 
 
 
 
 
 | 683 | XCN_CERT_OID_NAME_STR                         = 2, | 
 
 
 
 
 | 684 | XCN_CERT_X500_NAME_STR                        = 3, | 
 
 
 
 
 | 685 | XCN_CERT_XML_NAME_STR                         = 4, | 
 
 
 
 
 | 686 | XCN_CERT_NAME_STR_SEMICOLON_FLAG              = 0x40000000, | 
 
 
 
 
 | 687 | XCN_CERT_NAME_STR_NO_PLUS_FLAG                = 0x20000000, | 
 
 
 
 
 | 688 | XCN_CERT_NAME_STR_NO_QUOTING_FLAG             = 0x10000000, | 
 
 
 
 
 | 689 | XCN_CERT_NAME_STR_CRLF_FLAG                   = 0x8000000, | 
 
 
 
 
 | 690 | XCN_CERT_NAME_STR_COMMA_FLAG                  = 0x4000000, | 
 
 
 
 
 | 691 | XCN_CERT_NAME_STR_REVERSE_FLAG                = 0x2000000, | 
 
 
 
 
 | 692 | XCN_CERT_NAME_STR_DISABLE_IE4_UTF8_FLAG       = 0x10000, | 
 
 
 
 
 | 693 | XCN_CERT_NAME_STR_ENABLE_T61_UNICODE_FLAG     = 0x20000, | 
 
 
 
 
 | 694 | XCN_CERT_NAME_STR_ENABLE_UTF8_UNICODE_FLAG    = 0x40000, | 
 
 
 
 
 | 695 | XCN_CERT_NAME_STR_FORCE_UTF8_DIR_STR_FLAG     = 0x80000, | 
 
 
 
 
 | 696 | XCN_CERT_NAME_STR_DISABLE_UTF8_DIR_STR_FLAG   = 0x100000 | 
 
 
 
 
 | 697 | } X500NameFlags; | 
 
 
 
 
 | 698 |  | 
 
 
 
 
 | 699 | typedef enum X509CertificateEnrollmentContext { | 
 
 
 
 
 | 700 | ContextUser                        = 0x1, | 
 
 
 
 
 | 701 | ContextMachine                     = 0x2, | 
 
 
 
 
 | 702 | ContextAdministratorForceMachine   = 0x3 | 
 
 
 
 
 | 703 | } X509CertificateEnrollmentContext; | 
 
 
 
 
 | 704 |  | 
 
 
 
 
 | 705 | #if (_WIN32_WINNT >= 0x0601) | 
 
 
 
 
 | 706 |  | 
 
 
 
 
 | 707 | typedef enum X509CertificateTemplateEnrollmentFlag { | 
 
 
 
 
 | 708 | EnrollmentIncludeSymmetricAlgorithms                  = CT_FLAG_INCLUDE_SYMMETRIC_ALGORITHMS, | 
 
 
 
 
 | 709 | EnrollmentPendAllRequests                             = CT_FLAG_PEND_ALL_REQUESTS, | 
 
 
 
 
 | 710 | EnrollmentPublishToKRAContainer                       = CT_FLAG_PUBLISH_TO_KRA_CONTAINER, | 
 
 
 
 
 | 711 | EnrollmentPublishToDS                                 = CT_FLAG_PUBLISH_TO_DS, | 
 
 
 
 
 | 712 | EnrollmentAutoEnrollmentCheckUserDSCertificate        = CT_FLAG_AUTO_ENROLLMENT_CHECK_USER_DS_CERTIFICATE, | 
 
 
 
 
 | 713 | EnrollmentAutoEnrollment                              = CT_FLAG_AUTO_ENROLLMENT, | 
 
 
 
 
 | 714 | EnrollmentDomainAuthenticationNotRequired             = CT_FLAG_DOMAIN_AUTHENTICATION_NOT_REQUIRED, | 
 
 
 
 
 | 715 | EnrollmentPreviousApprovalValidateReenrollment        = CT_FLAG_PREVIOUS_APPROVAL_VALIDATE_REENROLLMENT, | 
 
 
 
 
 | 716 | EnrollmentUserInteractionRequired                     = CT_FLAG_USER_INTERACTION_REQUIRED, | 
 
 
 
 
 | 717 | EnrollmentAddTemplateName                             = CT_FLAG_ADD_TEMPLATE_NAME, | 
 
 
 
 
 | 718 | EnrollmentRemoveInvalidCertificateFromPersonalStore   = CT_FLAG_REMOVE_INVALID_CERTIFICATE_FROM_PERSONAL_STORE, | 
 
 
 
 
 | 719 | EnrollmentAllowEnrollOnBehalfOf                       = CT_FLAG_ALLOW_ENROLL_ON_BEHALF_OF, | 
 
 
 
 
 | 720 | EnrollmentAddOCSPNoCheck                              = CT_FLAG_ADD_OCSP_NOCHECK, | 
 
 
 
 
 | 721 | EnrollmentReuseKeyOnFullSmartCard                     = CT_FLAG_ENABLE_KEY_REUSE_ON_NT_TOKEN_KEYSET_STORAGE_FULL, | 
 
 
 
 
 | 722 | EnrollmentNoRevocationInfoInCerts                     = CT_FLAG_NOREVOCATIONINFOINISSUEDCERTS, | 
 
 
 
 
 | 723 | EnrollmentIncludeBasicConstraintsForEECerts           = CT_FLAG_INCLUDE_BASIC_CONSTRAINTS_FOR_EE_CERTS | 
 
 
 
 
 | 724 | } X509CertificateTemplateEnrollmentFlag; | 
 
 
 
 
 | 725 |  | 
 
 
 
 
 | 726 | typedef enum X509CertificateTemplateGeneralFlag { | 
 
 
 
 
 | 727 | GeneralMachineType    = CT_FLAG_MACHINE_TYPE, | 
 
 
 
 
 | 728 | GeneralCA             = CT_FLAG_IS_CA, | 
 
 
 
 
 | 729 | GeneralCrossCA        = CT_FLAG_IS_CROSS_CA, | 
 
 
 
 
 | 730 | GeneralDefault        = CT_FLAG_IS_DEFAULT, | 
 
 
 
 
 | 731 | GeneralModified       = CT_FLAG_IS_MODIFIED, | 
 
 
 
 
 | 732 | GeneralDonotPersist   = CT_FLAG_DONOTPERSISTINDB | 
 
 
 
 
 | 733 | } X509CertificateTemplateGeneralFlag; | 
 
 
 
 
 | 734 |  | 
 
 
 
 
 | 735 | typedef enum X509CertificateTemplatePrivateKeyFlag { | 
 
 
 
 
 | 736 | PrivateKeyRequireArchival                      = CT_FLAG_REQUIRE_PRIVATE_KEY_ARCHIVAL, | 
 
 
 
 
 | 737 | PrivateKeyExportable                           = CT_FLAG_EXPORTABLE_KEY, | 
 
 
 
 
 | 738 | PrivateKeyRequireStrongKeyProtection           = CT_FLAG_STRONG_KEY_PROTECTION_REQUIRED, | 
 
 
 
 
 | 739 | PrivateKeyRequireAlternateSignatureAlgorithm   = CT_FLAG_REQUIRE_ALTERNATE_SIGNATURE_ALGORITHM | 
 
 
 
 
 | 740 | } X509CertificateTemplatePrivateKeyFlag; | 
 
 
 
 
 | 741 |  | 
 
 
 
 
 | 742 | typedef enum X509CertificateTemplateSubjectNameFlag { | 
 
 
 
 
 | 743 | SubjectNameEnrolleeSupplies                    = CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT, | 
 
 
 
 
 | 744 | SubjectNameRequireDirectoryPath                = CT_FLAG_SUBJECT_REQUIRE_DIRECTORY_PATH, | 
 
 
 
 
 | 745 | SubjectNameRequireCommonName                   = CT_FLAG_SUBJECT_REQUIRE_COMMON_NAME, | 
 
 
 
 
 | 746 | SubjectNameRequireEmail                        = CT_FLAG_SUBJECT_REQUIRE_EMAIL, | 
 
 
 
 
 | 747 | SubjectNameRequireDNS                          = CT_FLAG_SUBJECT_REQUIRE_DNS_AS_CN, | 
 
 
 
 
 | 748 | SubjectNameAndAlternativeNameOldCertSupplies   = CT_FLAG_OLD_CERT_SUPPLIES_SUBJECT_AND_ALT_NAME, | 
 
 
 
 
 | 749 | SubjectAlternativeNameEnrolleeSupplies         = CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT_ALT_NAME, | 
 
 
 
 
 | 750 | SubjectAlternativeNameRequireDirectoryGUID     = CT_FLAG_SUBJECT_ALT_REQUIRE_DIRECTORY_GUID, | 
 
 
 
 
 | 751 | SubjectAlternativeNameRequireUPN               = CT_FLAG_SUBJECT_ALT_REQUIRE_UPN, | 
 
 
 
 
 | 752 | SubjectAlternativeNameRequireEmail             = CT_FLAG_SUBJECT_ALT_REQUIRE_EMAIL, | 
 
 
 
 
 | 753 | SubjectAlternativeNameRequireSPN               = CT_FLAG_SUBJECT_ALT_REQUIRE_SPN, | 
 
 
 
 
 | 754 | SubjectAlternativeNameRequireDNS               = CT_FLAG_SUBJECT_ALT_REQUIRE_DNS, | 
 
 
 
 
 | 755 | SubjectAlternativeNameRequireDomainDNS         = CT_FLAG_SUBJECT_ALT_REQUIRE_DOMAIN_DNS | 
 
 
 
 
 | 756 | } X509CertificateTemplateSubjectNameFlag; | 
 
 
 
 
 | 757 |  | 
 
 
 
 
 | 758 | typedef enum X509EnrollmentPolicyExportFlags { | 
 
 
 
 
 | 759 | ExportTemplates   = 0x1, | 
 
 
 
 
 | 760 | ExportOIDs        = 0x2, | 
 
 
 
 
 | 761 | ExportCAs         = 0x4 | 
 
 
 
 
 | 762 | } X509EnrollmentPolicyExportFlags; | 
 
 
 
 
 | 763 |  | 
 
 
 
 
 | 764 | typedef enum X509EnrollmentPolicyLoadOption { | 
 
 
 
 
 | 765 | LoadOptionDefault                = 0, | 
 
 
 
 
 | 766 | LoadOptionCacheOnly              = 1, | 
 
 
 
 
 | 767 | LoadOptionReload                 = 2, | 
 
 
 
 
 | 768 | LoadOptionRegisterForADChanges   = 4 | 
 
 
 
 
 | 769 | } X509EnrollmentPolicyLoadOption; | 
 
 
 
 
 | 770 |  | 
 
 
 
 
 | 771 |  | 
 
 
 
 
 | 772 | #endif /*(_WIN32_WINNT >= 0x0601)*/ | 
 
 
 
 
 | 773 |  | 
 
 
 
 
 | 774 | typedef enum X509KeySpec { | 
 
 
 
 
 | 775 | XCN_AT_NONE          = 0, | 
 
 
 
 
 | 776 | XCN_AT_KEYEXCHANGE   = 1, | 
 
 
 
 
 | 777 | XCN_AT_SIGNATURE     = 2 | 
 
 
 
 
 | 778 | } X509KeySpec; | 
 
 
 
 
 | 779 |  | 
 
 
 
 
 | 780 | typedef enum X509KeyUsageFlags { | 
 
 
 
 
 | 781 | XCN_CERT_NO_KEY_USAGE                  = 0, | 
 
 
 
 
 | 782 | XCN_CERT_DIGITAL_SIGNATURE_KEY_USAGE   = 0x80, | 
 
 
 
 
 | 783 | XCN_CERT_NON_REPUDIATION_KEY_USAGE     = 0x40, | 
 
 
 
 
 | 784 | XCN_CERT_KEY_ENCIPHERMENT_KEY_USAGE    = 0x20, | 
 
 
 
 
 | 785 | XCN_CERT_DATA_ENCIPHERMENT_KEY_USAGE   = 0x10, | 
 
 
 
 
 | 786 | XCN_CERT_KEY_AGREEMENT_KEY_USAGE       = 0x8, | 
 
 
 
 
 | 787 | XCN_CERT_KEY_CERT_SIGN_KEY_USAGE       = 0x4, | 
 
 
 
 
 | 788 | XCN_CERT_OFFLINE_CRL_SIGN_KEY_USAGE    = 0x2, | 
 
 
 
 
 | 789 | XCN_CERT_CRL_SIGN_KEY_USAGE            = 0x2, | 
 
 
 
 
 | 790 | XCN_CERT_ENCIPHER_ONLY_KEY_USAGE       = 0x1, | 
 
 
 
 
 | 791 | XCN_CERT_DECIPHER_ONLY_KEY_USAGE       = ( 0x80 << 8 ) | 
 
 
 
 
 | 792 | } X509KeyUsageFlags; | 
 
 
 
 
 | 793 |  | 
 
 
 
 
 | 794 | typedef enum X509PrivateKeyExportFlags { | 
 
 
 
 
 | 795 | XCN_NCRYPT_ALLOW_EXPORT_NONE                = 0, | 
 
 
 
 
 | 796 | XCN_NCRYPT_ALLOW_EXPORT_FLAG                = 0x1, | 
 
 
 
 
 | 797 | XCN_NCRYPT_ALLOW_PLAINTEXT_EXPORT_FLAG      = 0x2, | 
 
 
 
 
 | 798 | XCN_NCRYPT_ALLOW_ARCHIVING_FLAG             = 0x4, | 
 
 
 
 
 | 799 | XCN_NCRYPT_ALLOW_PLAINTEXT_ARCHIVING_FLAG   = 0x8 | 
 
 
 
 
 | 800 | } X509PrivateKeyExportFlags; | 
 
 
 
 
 | 801 |  | 
 
 
 
 
 | 802 | typedef enum X509PrivateKeyProtection { | 
 
 
 
 
 | 803 | XCN_NCRYPT_UI_NO_PROTECTION_FLAG           = 0, | 
 
 
 
 
 | 804 | XCN_NCRYPT_UI_PROTECT_KEY_FLAG             = 0x1, | 
 
 
 
 
 | 805 | XCN_NCRYPT_UI_FORCE_HIGH_PROTECTION_FLAG   = 0x2 | 
 
 
 
 
 | 806 | } X509PrivateKeyProtection; | 
 
 
 
 
 | 807 |  | 
 
 
 
 
 | 808 | typedef enum X509RequestType { | 
 
 
 
 
 | 809 | TypeAny           = 0, | 
 
 
 
 
 | 810 | TypePkcs10        = 1, | 
 
 
 
 
 | 811 | TypePkcs7         = 2, | 
 
 
 
 
 | 812 | TypeCmc           = 3, | 
 
 
 
 
 | 813 | TypeCertificate   = 4 | 
 
 
 
 
 | 814 | } X509RequestType; | 
 
 
 
 
 | 815 |  | 
 
 
 
 
 | 816 | typedef enum X509RequestInheritOptions { | 
 
 
 
 
 | 817 | InheritDefault                  = 0x00000000, | 
 
 
 
 
 | 818 | InheritNewDefaultKey            = 0x00000001, | 
 
 
 
 
 | 819 | InheritNewSimilarKey            = 0x00000002, | 
 
 
 
 
 | 820 | InheritPrivateKey               = 0x00000003, | 
 
 
 
 
 | 821 | InheritPublicKey                = 0x00000004, | 
 
 
 
 
 | 822 | InheritKeyMask                  = 0x0000000f, | 
 
 
 
 
 | 823 | InheritNone                     = 0x00000010, | 
 
 
 
 
 | 824 | InheritRenewalCertificateFlag   = 0x00000020, | 
 
 
 
 
 | 825 | InheritTemplateFlag             = 0x00000040, | 
 
 
 
 
 | 826 | InheritSubjectFlag              = 0x00000080, | 
 
 
 
 
 | 827 | InheritExtensionsFlag           = 0x00000100, | 
 
 
 
 
 | 828 | InheritSubjectAltNameFlag       = 0x00000200, | 
 
 
 
 
 | 829 | InheritValidityPeriodFlag       = 0x00000400 | 
 
 
 
 
 | 830 | } X509RequestInheritOptions; | 
 
 
 
 
 | 831 |  | 
 
 
 
 
 | 832 | typedef enum X509ProviderType { | 
 
 
 
 
 | 833 | XCN_PROV_NONE            = 0, | 
 
 
 
 
 | 834 | XCN_PROV_RSA_FULL        = 1, | 
 
 
 
 
 | 835 | XCN_PROV_RSA_SIG         = 2, | 
 
 
 
 
 | 836 | XCN_PROV_DSS             = 3, | 
 
 
 
 
 | 837 | XCN_PROV_FORTEZZA        = 4, | 
 
 
 
 
 | 838 | XCN_PROV_MS_EXCHANGE     = 5, | 
 
 
 
 
 | 839 | XCN_PROV_SSL             = 6, | 
 
 
 
 
 | 840 | XCN_PROV_RSA_SCHANNEL    = 12, | 
 
 
 
 
 | 841 | XCN_PROV_DSS_DH          = 13, | 
 
 
 
 
 | 842 | XCN_PROV_EC_ECDSA_SIG    = 14, | 
 
 
 
 
 | 843 | XCN_PROV_EC_ECNRA_SIG    = 15, | 
 
 
 
 
 | 844 | XCN_PROV_EC_ECDSA_FULL   = 16, | 
 
 
 
 
 | 845 | XCN_PROV_EC_ECNRA_FULL   = 17, | 
 
 
 
 
 | 846 | XCN_PROV_DH_SCHANNEL     = 18, | 
 
 
 
 
 | 847 | XCN_PROV_SPYRUS_LYNKS    = 20, | 
 
 
 
 
 | 848 | XCN_PROV_RNG             = 21, | 
 
 
 
 
 | 849 | XCN_PROV_INTEL_SEC       = 22, | 
 
 
 
 
 | 850 | XCN_PROV_REPLACE_OWF     = 23, | 
 
 
 
 
 | 851 | XCN_PROV_RSA_AES         = 24 | 
 
 
 
 
 | 852 | } X509ProviderType; | 
 
 
 
 
 | 853 |  | 
 
 
 
 
 | 854 | typedef enum X509PrivateKeyVerify { | 
 
 
 
 
 | 855 | VerifyNone              = 0, | 
 
 
 
 
 | 856 | VerifySilent            = 1, | 
 
 
 
 
 | 857 | VerifySmartCardNone     = 2, | 
 
 
 
 
 | 858 | VerifySmartCardSilent   = 3, | 
 
 
 
 
 | 859 | VerifyAllowUI           = 4 | 
 
 
 
 
 | 860 | } X509PrivateKeyVerify; | 
 
 
 
 
 | 861 |  | 
 
 
 
 
 | 862 | typedef enum X509PrivateKeyUsageFlags { | 
 
 
 
 
 | 863 | XCN_NCRYPT_ALLOW_USAGES_NONE          = 0, | 
 
 
 
 
 | 864 | XCN_NCRYPT_ALLOW_DECRYPT_FLAG         = 0x1, | 
 
 
 
 
 | 865 | XCN_NCRYPT_ALLOW_SIGNING_FLAG         = 0x2, | 
 
 
 
 
 | 866 | XCN_NCRYPT_ALLOW_KEY_AGREEMENT_FLAG   = 0x4, | 
 
 
 
 
 | 867 | XCN_NCRYPT_ALLOW_ALL_USAGES           = 0xffffff | 
 
 
 
 
 | 868 | } X509PrivateKeyUsageFlags; | 
 
 
 
 
 | 869 |  | 
 
 
 
 
 | 870 | typedef enum EncodingType { | 
 
 
 
 
 | 871 | XCN_CRYPT_STRING_BASE64HEADER          = 0, | 
 
 
 
 
 | 872 | XCN_CRYPT_STRING_BASE64                = 0x1, | 
 
 
 
 
 | 873 | XCN_CRYPT_STRING_BINARY                = 0x2, | 
 
 
 
 
 | 874 | XCN_CRYPT_STRING_BASE64REQUESTHEADER   = 0x3, | 
 
 
 
 
 | 875 | XCN_CRYPT_STRING_HEX                   = 0x4, | 
 
 
 
 
 | 876 | XCN_CRYPT_STRING_HEXASCII              = 0x5, | 
 
 
 
 
 | 877 | XCN_CRYPT_STRING_BASE64_ANY            = 0x6, | 
 
 
 
 
 | 878 | XCN_CRYPT_STRING_ANY                   = 0x7, | 
 
 
 
 
 | 879 | XCN_CRYPT_STRING_HEX_ANY               = 0x8, | 
 
 
 
 
 | 880 | XCN_CRYPT_STRING_BASE64X509CRLHEADER   = 0x9, | 
 
 
 
 
 | 881 | XCN_CRYPT_STRING_HEXADDR               = 0xa, | 
 
 
 
 
 | 882 | XCN_CRYPT_STRING_HEXASCIIADDR          = 0xb, | 
 
 
 
 
 | 883 | XCN_CRYPT_STRING_HEXRAW                = 0xc, | 
 
 
 
 
 | 884 | XCN_CRYPT_STRING_NOCRLF                = 0x40000000, | 
 
 
 
 
 | 885 | XCN_CRYPT_STRING_NOCR                  = 0x80000000 | 
 
 
 
 
 | 886 | } EncodingType; | 
 
 
 
 
 | 887 |  | 
 
 
 
 
 | 888 | typedef enum EnrollmentDisplayStatus { | 
 
 
 
 
 | 889 | DisplayNo    = 0, | 
 
 
 
 
 | 890 | DisplayYes   = 1 | 
 
 
 
 
 | 891 | } EnrollmentDisplayStatus; | 
 
 
 
 
 | 892 |  | 
 
 
 
 
 | 893 | typedef enum EnrollmentEnrollStatus { | 
 
 
 
 
 | 894 | Enrolled                             = 0x00000001, | 
 
 
 
 
 | 895 | EnrollPended                         = 0x00000002, | 
 
 
 
 
 | 896 | EnrollUIDeferredEnrollmentRequired   = 0x00000004, | 
 
 
 
 
 | 897 | EnrollError                          = 0x00000010, | 
 
 
 
 
 | 898 | EnrollUnknown                        = 0x00000020, | 
 
 
 
 
 | 899 | EnrollSkipped                        = 0x00000040, | 
 
 
 
 
 | 900 | EnrollDenied                         = 0x00000100 | 
 
 
 
 
 | 901 | } EnrollmentEnrollStatus; | 
 
 
 
 
 | 902 |  | 
 
 
 
 
 | 903 | typedef enum EnrollmentSelectionStatus { | 
 
 
 
 
 | 904 | SelectedNo    = 0, | 
 
 
 
 
 | 905 | SelectedYes   = 1 | 
 
 
 
 
 | 906 | } EnrollmentSelectionStatus; | 
 
 
 
 
 | 907 |  | 
 
 
 
 
 | 908 | #ifdef __cplusplus | 
 
 
 
 
 | 909 | } | 
 
 
 
 
 | 910 | #endif | 
 
 
 
 
 | 911 | #endif /*(_WIN32_WINNT >= 0x0600)*/ | 
 
 
 
 
 | 912 | #endif /*_INC_CERTENROLL*/ |