X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fx509v3%2Fpcy_data.c;h=bb2760abc2ec95b7a45e78a6ffb006a5e1b043e1;hp=3a8d4328d533eed671e2cc3286de5b4405bf84d7;hb=47bbaa5b607f592009ed40f5678fde21c10a873c;hpb=0dfb9398bb6493d5a56216e0c7039cb3f9fc88c6 diff --git a/crypto/x509v3/pcy_data.c b/crypto/x509v3/pcy_data.c index 3a8d4328d5..bb2760abc2 100644 --- a/crypto/x509v3/pcy_data.c +++ b/crypto/x509v3/pcy_data.c @@ -57,7 +57,7 @@ * */ -#include "cryptlib.h" +#include "internal/cryptlib.h" #include #include @@ -67,6 +67,8 @@ void policy_data_free(X509_POLICY_DATA *data) { + if (!data) + return; ASN1_OBJECT_free(data->valid_policy); /* Don't free qualifiers if shared */ if (!(data->flags & POLICY_DATA_FLAG_SHARED_QUALIFIERS)) @@ -96,7 +98,7 @@ X509_POLICY_DATA *policy_data_new(POLICYINFO *policy, return NULL; } else id = NULL; - ret = OPENSSL_malloc(sizeof(X509_POLICY_DATA)); + ret = OPENSSL_zalloc(sizeof(*ret)); if (!ret) return NULL; ret->expected_policy_set = sk_ASN1_OBJECT_new_null(); @@ -108,8 +110,6 @@ X509_POLICY_DATA *policy_data_new(POLICYINFO *policy, if (crit) ret->flags = POLICY_DATA_FLAG_CRITICAL; - else - ret->flags = 0; if (id) ret->valid_policy = id; @@ -121,8 +121,7 @@ X509_POLICY_DATA *policy_data_new(POLICYINFO *policy, if (policy) { ret->qualifier_set = policy->qualifiers; policy->qualifiers = NULL; - } else - ret->qualifier_set = NULL; + } return ret; }