summaryrefslogtreecommitdiffstats
path: root/crypto/pkcs12
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2015-06-24 12:28:50 +0100
committerDr. Stephen Henson <steve@openssl.org>2015-06-25 04:55:43 +0100
commit7c1dae55d476d94c96db68de20670c1066d281b3 (patch)
tree0cb1d41c8eadc7dc33a9a03ff5cf509083177a50 /crypto/pkcs12
parentedbc9050bed04de0f2cdbfd0f038a84007263c66 (diff)
Don't output bogus errors in PKCS12_parse
PR#3923 Reviewed-by: Tim Hudson <tjh@openssl.org> (cherry picked from commit ffbf304d4832bd51bb0618f8ca5b7c26647ee664)
Diffstat (limited to 'crypto/pkcs12')
-rw-r--r--crypto/pkcs12/p12_kiss.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/pkcs12/p12_kiss.c b/crypto/pkcs12/p12_kiss.c
index ee476c38f4..9aa3c90c4e 100644
--- a/crypto/pkcs12/p12_kiss.c
+++ b/crypto/pkcs12/p12_kiss.c
@@ -135,10 +135,12 @@ int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
while ((x = sk_X509_pop(ocerts))) {
if (pkey && *pkey && cert && !*cert) {
+ ERR_set_mark();
if (X509_check_private_key(x, *pkey)) {
*cert = x;
x = NULL;
}
+ ERR_pop_to_mark();
}
if (ca && x) {