Initial support for delta CRLs. If "use deltas" flag is set attempt to find
[openssl.git] / crypto / x509v3 / v3_enum.c
index e76229da76782fa26ad4f04090b1759788b061ff..f3c095b3644f748e41b773af91d994e26d2a9ba2 100644 (file)
 #include "cryptlib.h"
 #include <openssl/x509v3.h>
 
-static ASN1_ENUMERATED *asn1_enumerated_new();
-
 static ENUMERATED_NAMES crl_reasons[] = {
-{0, "Unspecified", "unspecified"},
-{1, "Key Compromise", "keyCompromise"},
-{2, "CA Compromise", "CACompromise"},
-{3, "Affiliation Changed", "affiliationChanged"},
-{4, "Superseded", "superseded"},
-{5, "Cessation Of Operation", "cessationOfOperation"},
-{6, "Certificate Hold", "certificateHold"},
-{8, "Remove From CRL", "removeFromCRL"},
+{CRL_REASON_UNSPECIFIED,        "Unspecified", "unspecified"},
+{CRL_REASON_KEY_COMPROMISE,     "Key Compromise", "keyCompromise"},
+{CRL_REASON_CA_COMPROMISE,      "CA Compromise", "CACompromise"},
+{CRL_REASON_AFFILIATION_CHANGED, "Affiliation Changed", "affiliationChanged"},
+{CRL_REASON_SUPERSEDED,         "Superseded", "superseded"},
+{CRL_REASON_CESSATION_OF_OPERATION,
+                       "Cessation Of Operation", "cessationOfOperation"},
+{CRL_REASON_CERTIFICATE_HOLD,   "Certificate Hold", "certificateHold"},
+{CRL_REASON_REMOVE_FROM_CRL,    "Remove From CRL", "removeFromCRL"},
+{CRL_REASON_PRIVILEGE_WITHDRAWN, "Privilege Withdrawn", "privilegeWithdrawn"},
+{CRL_REASON_AA_COMPROMISE,      "AA Compromise", "AACompromise"},
 {-1, NULL, NULL}
 };
 
-X509V3_EXT_METHOD v3_crl_reason = { 
-NID_crl_reason, 0,
-(X509V3_EXT_NEW)asn1_enumerated_new, ASN1_STRING_free,
-(X509V3_EXT_D2I)d2i_ASN1_ENUMERATED,
-i2d_ASN1_ENUMERATED,
+const X509V3_EXT_METHOD v3_crl_reason = { 
+NID_crl_reason, 0, ASN1_ITEM_ref(ASN1_ENUMERATED),
+0,0,0,0,
 (X509V3_EXT_I2S)i2s_ASN1_ENUMERATED_TABLE,
-(X509V3_EXT_S2I)NULL,
-NULL, NULL, NULL, NULL, (char *)crl_reasons};
-
+0,
+0,0,0,0,
+crl_reasons};
 
-static ASN1_ENUMERATED *asn1_enumerated_new(void)
-{
-       return ASN1_ENUMERATED_new();
-}
 
 char *i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *method,
             ASN1_ENUMERATED *e)