diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/p8_pkey.c')
-rw-r--r-- | src/lib/libcrypto/asn1/p8_pkey.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/lib/libcrypto/asn1/p8_pkey.c b/src/lib/libcrypto/asn1/p8_pkey.c index aa9a4f6c96..59cfbe7f28 100644 --- a/src/lib/libcrypto/asn1/p8_pkey.c +++ b/src/lib/libcrypto/asn1/p8_pkey.c | |||
@@ -88,7 +88,7 @@ PKCS8_PRIV_KEY_INFO *PKCS8_PRIV_KEY_INFO_new(void) | |||
88 | PKCS8_PRIV_KEY_INFO *ret=NULL; | 88 | PKCS8_PRIV_KEY_INFO *ret=NULL; |
89 | ASN1_CTX c; | 89 | ASN1_CTX c; |
90 | M_ASN1_New_Malloc(ret, PKCS8_PRIV_KEY_INFO); | 90 | M_ASN1_New_Malloc(ret, PKCS8_PRIV_KEY_INFO); |
91 | M_ASN1_New (ret->version, ASN1_INTEGER_new); | 91 | M_ASN1_New (ret->version, M_ASN1_INTEGER_new); |
92 | M_ASN1_New (ret->pkeyalg, X509_ALGOR_new); | 92 | M_ASN1_New (ret->pkeyalg, X509_ALGOR_new); |
93 | M_ASN1_New (ret->pkey, ASN1_TYPE_new); | 93 | M_ASN1_New (ret->pkey, ASN1_TYPE_new); |
94 | ret->attributes = NULL; | 94 | ret->attributes = NULL; |
@@ -109,15 +109,13 @@ PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO(PKCS8_PRIV_KEY_INFO **a, | |||
109 | M_ASN1_D2I_get_IMP_set_opt_type(X509_ATTRIBUTE, ret->attributes, | 109 | M_ASN1_D2I_get_IMP_set_opt_type(X509_ATTRIBUTE, ret->attributes, |
110 | d2i_X509_ATTRIBUTE, | 110 | d2i_X509_ATTRIBUTE, |
111 | X509_ATTRIBUTE_free, 0); | 111 | X509_ATTRIBUTE_free, 0); |
112 | if (ASN1_TYPE_get(ret->pkey) == V_ASN1_SEQUENCE) | ||
113 | ret->broken = PKCS8_NO_OCTET; | ||
114 | M_ASN1_D2I_Finish(a, PKCS8_PRIV_KEY_INFO_free, ASN1_F_D2I_PKCS8_PRIV_KEY_INFO); | 112 | M_ASN1_D2I_Finish(a, PKCS8_PRIV_KEY_INFO_free, ASN1_F_D2I_PKCS8_PRIV_KEY_INFO); |
115 | } | 113 | } |
116 | 114 | ||
117 | void PKCS8_PRIV_KEY_INFO_free (PKCS8_PRIV_KEY_INFO *a) | 115 | void PKCS8_PRIV_KEY_INFO_free (PKCS8_PRIV_KEY_INFO *a) |
118 | { | 116 | { |
119 | if (a == NULL) return; | 117 | if (a == NULL) return; |
120 | ASN1_INTEGER_free (a->version); | 118 | M_ASN1_INTEGER_free (a->version); |
121 | X509_ALGOR_free(a->pkeyalg); | 119 | X509_ALGOR_free(a->pkeyalg); |
122 | /* Clear sensitive data */ | 120 | /* Clear sensitive data */ |
123 | if (a->pkey->value.octet_string) | 121 | if (a->pkey->value.octet_string) |