diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/x_x509.c')
-rw-r--r-- | src/lib/libcrypto/asn1/x_x509.c | 27 |
1 files changed, 7 insertions, 20 deletions
diff --git a/src/lib/libcrypto/asn1/x_x509.c b/src/lib/libcrypto/asn1/x_x509.c index e118696625..b50167ce43 100644 --- a/src/lib/libcrypto/asn1/x_x509.c +++ b/src/lib/libcrypto/asn1/x_x509.c | |||
@@ -79,8 +79,6 @@ ASN1_SEQUENCE(X509_CINF) = { | |||
79 | IMPLEMENT_ASN1_FUNCTIONS(X509_CINF) | 79 | IMPLEMENT_ASN1_FUNCTIONS(X509_CINF) |
80 | /* X509 top level structure needs a bit of customisation */ | 80 | /* X509 top level structure needs a bit of customisation */ |
81 | 81 | ||
82 | extern void policy_cache_free(X509_POLICY_CACHE *cache); | ||
83 | |||
84 | static int x509_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it) | 82 | static int x509_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it) |
85 | { | 83 | { |
86 | X509 *ret = (X509 *)*pval; | 84 | X509 *ret = (X509 *)*pval; |
@@ -94,10 +92,6 @@ static int x509_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it) | |||
94 | ret->ex_pathlen = -1; | 92 | ret->ex_pathlen = -1; |
95 | ret->skid = NULL; | 93 | ret->skid = NULL; |
96 | ret->akid = NULL; | 94 | ret->akid = NULL; |
97 | #ifndef OPENSSL_NO_RFC3779 | ||
98 | ret->rfc3779_addr = NULL; | ||
99 | ret->rfc3779_asid = NULL; | ||
100 | #endif | ||
101 | ret->aux = NULL; | 95 | ret->aux = NULL; |
102 | CRYPTO_new_ex_data(CRYPTO_EX_INDEX_X509, ret, &ret->ex_data); | 96 | CRYPTO_new_ex_data(CRYPTO_EX_INDEX_X509, ret, &ret->ex_data); |
103 | break; | 97 | break; |
@@ -112,11 +106,6 @@ static int x509_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it) | |||
112 | X509_CERT_AUX_free(ret->aux); | 106 | X509_CERT_AUX_free(ret->aux); |
113 | ASN1_OCTET_STRING_free(ret->skid); | 107 | ASN1_OCTET_STRING_free(ret->skid); |
114 | AUTHORITY_KEYID_free(ret->akid); | 108 | AUTHORITY_KEYID_free(ret->akid); |
115 | policy_cache_free(ret->policy_cache); | ||
116 | #ifndef OPENSSL_NO_RFC3779 | ||
117 | sk_IPAddressFamily_pop_free(ret->rfc3779_addr, IPAddressFamily_free); | ||
118 | ASIdentifiers_free(ret->rfc3779_asid); | ||
119 | #endif | ||
120 | 109 | ||
121 | if (ret->name != NULL) OPENSSL_free(ret->name); | 110 | if (ret->name != NULL) OPENSSL_free(ret->name); |
122 | break; | 111 | break; |
@@ -136,13 +125,11 @@ ASN1_SEQUENCE_ref(X509, x509_cb, CRYPTO_LOCK_X509) = { | |||
136 | IMPLEMENT_ASN1_FUNCTIONS(X509) | 125 | IMPLEMENT_ASN1_FUNCTIONS(X509) |
137 | IMPLEMENT_ASN1_DUP_FUNCTION(X509) | 126 | IMPLEMENT_ASN1_DUP_FUNCTION(X509) |
138 | 127 | ||
139 | static ASN1_METHOD meth= | 128 | static ASN1_METHOD meth={ |
140 | { | 129 | (int (*)()) i2d_X509, |
141 | (I2D_OF(void)) i2d_X509, | 130 | (char *(*)())d2i_X509, |
142 | (D2I_OF(void)) d2i_X509, | 131 | (char *(*)())X509_new, |
143 | (void *(*)(void))X509_new, | 132 | (void (*)()) X509_free}; |
144 | (void (*)(void *)) X509_free | ||
145 | }; | ||
146 | 133 | ||
147 | ASN1_METHOD *X509_asn1_meth(void) | 134 | ASN1_METHOD *X509_asn1_meth(void) |
148 | { | 135 | { |
@@ -174,9 +161,9 @@ void *X509_get_ex_data(X509 *r, int idx) | |||
174 | * | 161 | * |
175 | */ | 162 | */ |
176 | 163 | ||
177 | X509 *d2i_X509_AUX(X509 **a, const unsigned char **pp, long length) | 164 | X509 *d2i_X509_AUX(X509 **a, unsigned char **pp, long length) |
178 | { | 165 | { |
179 | const unsigned char *q; | 166 | unsigned char *q; |
180 | X509 *ret; | 167 | X509 *ret; |
181 | /* Save start position */ | 168 | /* Save start position */ |
182 | q = *pp; | 169 | q = *pp; |