#include <stdio.h>
#include "cryptlib.h"
-#include "x509v3.h"
-
-static ASN1_ENUMERATED *asn1_enumerated_new();
+#include <openssl/x509v3.h>
static ENUMERATED_NAMES crl_reasons[] = {
{0, "Unspecified", "unspecified"},
X509V3_EXT_METHOD v3_crl_reason = {
NID_crl_reason, 0,
-(X509V3_EXT_NEW)asn1_enumerated_new, ASN1_STRING_free,
+(X509V3_EXT_NEW)ASN1_ENUMERATED_new,
+(X509V3_EXT_FREE)ASN1_ENUMERATED_free,
(X509V3_EXT_D2I)d2i_ASN1_ENUMERATED,
-i2d_ASN1_ENUMERATED,
+(X509V3_EXT_I2D)i2d_ASN1_ENUMERATED,
(X509V3_EXT_I2S)i2s_ASN1_ENUMERATED_TABLE,
-(X509V3_EXT_S2I)NULL,
-NULL, NULL, NULL, (char *)crl_reasons};
-
+(X509V3_EXT_S2I)0,
+NULL, NULL, NULL, NULL, crl_reasons};
-static ASN1_ENUMERATED *asn1_enumerated_new()
-{
- return ASN1_ENUMERATED_new();
-}
-char *i2s_ASN1_ENUMERATED_TABLE(method, e)
-X509V3_EXT_METHOD *method;
-ASN1_ENUMERATED *e;
+char *i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *method,
+ ASN1_ENUMERATED *e)
{
ENUMERATED_NAMES *enam;
long strval;
strval = ASN1_ENUMERATED_get(e);
- for(enam =(ENUMERATED_NAMES *)method->usr_data; enam->lname; enam++) {
- if(strval == enam->bitnum) return str_dup(enam->lname);
+ for(enam = method->usr_data; enam->lname; enam++) {
+ if(strval == enam->bitnum) return BUF_strdup(enam->lname);
}
return i2s_ASN1_ENUMERATED(method, e);
}