Check for NULL ASN1_ITEM when initializeing
authorDr. Stephen Henson <steve@openssl.org>
Tue, 5 Nov 2002 13:48:33 +0000 (13:48 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Tue, 5 Nov 2002 13:48:33 +0000 (13:48 +0000)
boolean option in ASN1_TYPE.

crypto/asn1/tasn_fre.c
crypto/asn1/tasn_new.c

index 910f9b4f262f88554bd13187731aa9583b6f425d..30096a0bcfa412f829d668344e802ffb1196e6af 100644 (file)
@@ -207,7 +207,10 @@ void ASN1_primitive_free(ASN1_VALUE **pval, const ASN1_ITEM *it)
                break;
 
                case V_ASN1_BOOLEAN:
                break;
 
                case V_ASN1_BOOLEAN:
-               *(ASN1_BOOLEAN *)pval = it->size;
+               if (it)
+                       *(ASN1_BOOLEAN *)pval = it->size;
+               else
+                       *(ASN1_BOOLEAN *)pval = -1;
                return;
 
                case V_ASN1_NULL:
                return;
 
                case V_ASN1_NULL:
index 11a90f739edce0f7b3e6ea084cf19066f33a3dfa..6a76a96ba9ceb92c12eebab1696bfa28cce75bb7 100644 (file)
@@ -307,7 +307,10 @@ int ASN1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it)
                return 1;
 
                case V_ASN1_BOOLEAN:
                return 1;
 
                case V_ASN1_BOOLEAN:
-               *(ASN1_BOOLEAN *)pval = it->size;
+               if (it)
+                       *(ASN1_BOOLEAN *)pval = it->size;
+               else
+                       *(ASN1_BOOLEAN *)pval = -1;
                return 1;
 
                case V_ASN1_NULL:
                return 1;
 
                case V_ASN1_NULL: