summaryrefslogtreecommitdiffstats
path: root/crypto/x509/t_req.c
diff options
context:
space:
mode:
authorDmitry Belyavskiy <beldmit@gmail.com>2019-07-08 20:14:50 +1000
committerPauli <paul.dale@oracle.com>2019-07-08 20:14:50 +1000
commit9fd6f7d1cd2a3c8e2bc69dcb8bde8406eb6c2623 (patch)
treecd7726410703bff823246bc1363fc7a6471b0855 /crypto/x509/t_req.c
parentb97a28b19d606d6782622a14ae06831b231c94a4 (diff)
Avoid NULL pointer dereference. Fixes #9043.
Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9059)
Diffstat (limited to 'crypto/x509/t_req.c')
-rw-r--r--crypto/x509/t_req.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/crypto/x509/t_req.c b/crypto/x509/t_req.c
index 28157de7e3..8af6510bf5 100644
--- a/crypto/x509/t_req.c
+++ b/crypto/x509/t_req.c
@@ -127,6 +127,10 @@ int X509_REQ_print_ex(BIO *bp, X509_REQ *x, unsigned long nmflags,
if ((j = i2a_ASN1_OBJECT(bp, aobj)) > 0) {
ii = 0;
count = X509_ATTRIBUTE_count(a);
+ if (count == 0) {
+ X509err(X509_F_X509_REQ_PRINT_EX, X509_R_INVALID_ATTRIBUTES);
+ return 0;
+ }
get_next:
at = X509_ATTRIBUTE_get0_type(a, ii);
type = at->type;