summaryrefslogtreecommitdiffstats
path: root/crypto/x509v3/pcy_tree.c
diff options
context:
space:
mode:
authorRich Salz <rsalz@akamai.com>2015-08-25 13:25:58 -0400
committerRich Salz <rsalz@openssl.org>2015-09-02 22:05:37 -0400
commitb51bce942023325e727ca4225252d06c49d8f2b7 (patch)
tree59bbdee7553f9132a86aca17752a9a358a6355e2 /crypto/x509v3/pcy_tree.c
parent66e87a9f0990198079bf4d2b3ce87581ad5b6b10 (diff)
Add and use OPENSSL_zalloc
There are many places (nearly 50) where we malloc and then memset. Add an OPENSSL_zalloc routine to encapsulate that. (Missed one conversion; thanks Richard) Also fixes GH328 Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'crypto/x509v3/pcy_tree.c')
-rw-r--r--crypto/x509v3/pcy_tree.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/crypto/x509v3/pcy_tree.c b/crypto/x509v3/pcy_tree.c
index 4b0ea15b6d..2a41903a72 100644
--- a/crypto/x509v3/pcy_tree.c
+++ b/crypto/x509v3/pcy_tree.c
@@ -217,25 +217,18 @@ static int tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs,
}
/* If we get this far initialize the tree */
-
tree = OPENSSL_malloc(sizeof(*tree));
-
if (!tree)
return 0;
-
- tree->flags = 0;
- tree->levels = OPENSSL_malloc(sizeof(*tree->levels) * n);
- tree->nlevel = 0;
- tree->extra_data = NULL;
- tree->auth_policies = NULL;
- tree->user_policies = NULL;
-
+ tree->levels = OPENSSL_zalloc(sizeof(*tree->levels) * n);
if (!tree->levels) {
OPENSSL_free(tree);
return 0;
}
-
- memset(tree->levels, 0, sizeof(*tree->levels) * n);
+ tree->flags = 0;
+ tree->extra_data = NULL;
+ tree->auth_policies = NULL;
+ tree->user_policies = NULL;
tree->nlevel = n;
level = tree->levels;