summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Josefsson <simon@josefsson.org>2007-02-09 06:32:13 +0000
committerSimon Josefsson <simon@josefsson.org>2007-02-09 06:32:13 +0000
commit14c899493c64ce0e08a682f5c2ac45fec2bef36f (patch)
treead553833281080e66113e88a0338ba817465b844
parent7e2b4a5e17a39a00d65dce5d980a659f345e4565 (diff)
downloadgnutls-14c899493c64ce0e08a682f5c2ac45fec2bef36f.tar.gz
Don't crash on NULL's.
-rw-r--r--lib/x509/extensions.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/lib/x509/extensions.c b/lib/x509/extensions.c
index 97fd7d67bc..afe23ae6cd 100644
--- a/lib/x509/extensions.c
+++ b/lib/x509/extensions.c
@@ -997,13 +997,16 @@ _gnutls_x509_ext_extract_proxyCertInfo (int *pathLenConstraint,
return result;
}
- *policyLanguage = gnutls_strdup (value.data);
+ if (policyLanguage)
+ *policyLanguage = gnutls_strdup (value.data);
result = _gnutls_x509_read_value (ext, "proxyPolicy.policy", &value, 0);
if (result == GNUTLS_E_ASN1_ELEMENT_NOT_FOUND)
{
- *policy = NULL;
- *sizeof_policy = 0;
+ if (policy)
+ *policy = NULL;
+ if (sizeof_policy)
+ *sizeof_policy = 0;
}
else if (result < 0)
{
@@ -1013,8 +1016,10 @@ _gnutls_x509_ext_extract_proxyCertInfo (int *pathLenConstraint,
}
else
{
- *policy = value.data;
- *sizeof_policy = value.size;
+ if (policy)
+ *policy = value.data;
+ if (sizeof_policy)
+ *sizeof_policy = value.size;
}
asn1_delete_structure (&ext);