summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2015-06-05 12:11:25 +0100
committerMatt Caswell <matt@openssl.org>2015-06-11 15:10:48 +0100
commit857b2ced04be897488df311a257f254ad8516429 (patch)
tree765f72d1f46305fb081884f8770c0eda5a3eddaf
parent809bf2eab7b46e2fd768fec0c28127991c927b19 (diff)
Fix infinite loop in CMS
Fix loop in do_free_upto if cmsbio is NULL: this will happen when attempting to verify and a digest is not recognised. Reported by Johannes Bauer. CVE-2015-1792 Reviewed-by: Matt Caswell <matt@openssl.org>
-rw-r--r--crypto/cms/cms_smime.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/cms/cms_smime.c b/crypto/cms/cms_smime.c
index d6f5c1a344..e9e6a98513 100644
--- a/crypto/cms/cms_smime.c
+++ b/crypto/cms/cms_smime.c
@@ -131,7 +131,7 @@ static void do_free_upto(BIO *f, BIO *upto)
BIO_free(f);
f = tbio;
}
- while (f != upto);
+ while (f && f != upto);
} else
BIO_free_all(f);
}