[1166] | 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*/
|
---|