summaryrefslogtreecommitdiffstats
path: root/crypto/asn1
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2016-06-14 17:44:22 +0100
committerDr. Stephen Henson <steve@openssl.org>2016-06-14 19:15:51 +0100
commit7c46746bf2958fd2eccc59ecb48039e4e20ce38a (patch)
treeb7083e2ab989d57df8333385f81cea9dba224597 /crypto/asn1
parent2dca984babedf93c560aba54da3f4c9222ee0d12 (diff)
Fix omitted selector handling.
The selector field could be omitted because it has a DEFAULT value. In this case *sfld == NULL (sfld can never be NULL). This was not noticed because this was never used in existing ASN.1 modules. Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'crypto/asn1')
-rw-r--r--crypto/asn1/tasn_utl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/asn1/tasn_utl.c b/crypto/asn1/tasn_utl.c
index f03f9e9ed0..c215891a43 100644
--- a/crypto/asn1/tasn_utl.c
+++ b/crypto/asn1/tasn_utl.c
@@ -189,7 +189,7 @@ const ASN1_TEMPLATE *asn1_do_adb(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt,
sfld = offset2ptr(*pval, adb->offset);
/* Check if NULL */
- if (!sfld) {
+ if (*sfld == NULL) {
if (!adb->null_tt)
goto err;
return adb->null_tt;