diff options
Diffstat (limited to '')
-rw-r--r-- | src/lib/libcrypto/cms/cms_asn1.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/libcrypto/cms/cms_asn1.c b/src/lib/libcrypto/cms/cms_asn1.c index fcba4dcbcc..cfe67fb6c1 100644 --- a/src/lib/libcrypto/cms/cms_asn1.c +++ b/src/lib/libcrypto/cms/cms_asn1.c | |||
@@ -237,6 +237,15 @@ static int cms_ri_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, | |||
237 | OPENSSL_free(kekri->key); | 237 | OPENSSL_free(kekri->key); |
238 | } | 238 | } |
239 | } | 239 | } |
240 | else if (ri->type == CMS_RECIPINFO_PASS) | ||
241 | { | ||
242 | CMS_PasswordRecipientInfo *pwri = ri->d.pwri; | ||
243 | if (pwri->pass) | ||
244 | { | ||
245 | OPENSSL_cleanse(pwri->pass, pwri->passlen); | ||
246 | OPENSSL_free(pwri->pass); | ||
247 | } | ||
248 | } | ||
240 | } | 249 | } |
241 | return 1; | 250 | return 1; |
242 | } | 251 | } |