diff options
-rw-r--r-- | src/lib/libcrypto/x509v3/pcy_int.h | 6 | ||||
-rw-r--r-- | src/lib/libcrypto/x509v3/pcy_node.c | 36 | ||||
-rw-r--r-- | src/lib/libcrypto/x509v3/pcy_tree.c | 16 | ||||
-rw-r--r-- | src/lib/libssl/src/crypto/x509v3/pcy_int.h | 6 | ||||
-rw-r--r-- | src/lib/libssl/src/crypto/x509v3/pcy_node.c | 36 | ||||
-rw-r--r-- | src/lib/libssl/src/crypto/x509v3/pcy_tree.c | 16 |
6 files changed, 66 insertions, 50 deletions
diff --git a/src/lib/libcrypto/x509v3/pcy_int.h b/src/lib/libcrypto/x509v3/pcy_int.h index 3f8a8316e2..50ed7cbfcf 100644 --- a/src/lib/libcrypto/x509v3/pcy_int.h +++ b/src/lib/libcrypto/x509v3/pcy_int.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: pcy_int.h,v 1.3 2014/06/12 15:49:31 deraadt Exp $ */ | 1 | /* $OpenBSD: pcy_int.h,v 1.4 2015/07/18 00:01:05 beck Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2004. | 3 | * project 2004. |
4 | */ | 4 | */ |
@@ -196,9 +196,9 @@ X509_POLICY_NODE *level_find_node(const X509_POLICY_LEVEL *level, | |||
196 | X509_POLICY_NODE *tree_find_sk(STACK_OF(X509_POLICY_NODE) *sk, | 196 | X509_POLICY_NODE *tree_find_sk(STACK_OF(X509_POLICY_NODE) *sk, |
197 | const ASN1_OBJECT *id); | 197 | const ASN1_OBJECT *id); |
198 | 198 | ||
199 | X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level, | 199 | int level_add_node(X509_POLICY_LEVEL *level, |
200 | const X509_POLICY_DATA *data, X509_POLICY_NODE *parent, | 200 | const X509_POLICY_DATA *data, X509_POLICY_NODE *parent, |
201 | X509_POLICY_TREE *tree); | 201 | X509_POLICY_TREE *tree, X509_POLICY_NODE **nodep); |
202 | void policy_node_free(X509_POLICY_NODE *node); | 202 | void policy_node_free(X509_POLICY_NODE *node); |
203 | int policy_node_match(const X509_POLICY_LEVEL *lvl, | 203 | int policy_node_match(const X509_POLICY_LEVEL *lvl, |
204 | const X509_POLICY_NODE *node, const ASN1_OBJECT *oid); | 204 | const X509_POLICY_NODE *node, const ASN1_OBJECT *oid); |
diff --git a/src/lib/libcrypto/x509v3/pcy_node.c b/src/lib/libcrypto/x509v3/pcy_node.c index 839113ea2f..ba22b267bf 100644 --- a/src/lib/libcrypto/x509v3/pcy_node.c +++ b/src/lib/libcrypto/x509v3/pcy_node.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: pcy_node.c,v 1.5 2014/07/23 20:49:52 miod Exp $ */ | 1 | /* $OpenBSD: pcy_node.c,v 1.6 2015/07/18 00:01:05 beck Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2004. | 3 | * project 2004. |
4 | */ | 4 | */ |
@@ -107,23 +107,26 @@ level_find_node(const X509_POLICY_LEVEL *level, const X509_POLICY_NODE *parent, | |||
107 | return NULL; | 107 | return NULL; |
108 | } | 108 | } |
109 | 109 | ||
110 | X509_POLICY_NODE * | 110 | |
111 | int | ||
111 | level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, | 112 | level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, |
112 | X509_POLICY_NODE *parent, X509_POLICY_TREE *tree) | 113 | X509_POLICY_NODE *parent, X509_POLICY_TREE *tree, X509_POLICY_NODE **nodep) |
113 | { | 114 | { |
114 | X509_POLICY_NODE *node; | 115 | X509_POLICY_NODE *node = NULL; |
115 | 116 | ||
116 | node = malloc(sizeof(X509_POLICY_NODE)); | ||
117 | if (!node) | ||
118 | return NULL; | ||
119 | node->data = data; | ||
120 | node->parent = parent; | ||
121 | node->nchild = 0; | ||
122 | if (level) { | 117 | if (level) { |
118 | node = malloc(sizeof(X509_POLICY_NODE)); | ||
119 | if (!node) | ||
120 | goto node_error; | ||
121 | node->data = data; | ||
122 | node->parent = parent; | ||
123 | node->nchild = 0; | ||
123 | if (OBJ_obj2nid(data->valid_policy) == NID_any_policy) { | 124 | if (OBJ_obj2nid(data->valid_policy) == NID_any_policy) { |
124 | if (level->anyPolicy) | 125 | if (level->anyPolicy) |
125 | goto node_error; | 126 | goto node_error; |
126 | level->anyPolicy = node; | 127 | level->anyPolicy = node; |
128 | if (parent) | ||
129 | parent->nchild++; | ||
127 | } else { | 130 | } else { |
128 | 131 | ||
129 | if (!level->nodes) | 132 | if (!level->nodes) |
@@ -132,6 +135,8 @@ level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, | |||
132 | goto node_error; | 135 | goto node_error; |
133 | if (!sk_X509_POLICY_NODE_push(level->nodes, node)) | 136 | if (!sk_X509_POLICY_NODE_push(level->nodes, node)) |
134 | goto node_error; | 137 | goto node_error; |
138 | if (parent) | ||
139 | parent->nchild++; | ||
135 | } | 140 | } |
136 | } | 141 | } |
137 | 142 | ||
@@ -144,17 +149,20 @@ level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, | |||
144 | goto node_error_cond; | 149 | goto node_error_cond; |
145 | } | 150 | } |
146 | 151 | ||
147 | if (parent) | 152 | if (nodep) |
148 | parent->nchild++; | 153 | *nodep = node; |
149 | 154 | ||
150 | return node; | 155 | return 1; |
151 | 156 | ||
152 | node_error_cond: | 157 | node_error_cond: |
153 | if (level) | 158 | if (level) |
154 | node = NULL; | 159 | node = NULL; |
155 | node_error: | 160 | node_error: |
156 | policy_node_free(node); | 161 | policy_node_free(node); |
157 | return NULL; | 162 | node = NULL; |
163 | if (nodep) | ||
164 | *nodep = node; | ||
165 | return 0; | ||
158 | } | 166 | } |
159 | 167 | ||
160 | void | 168 | void |
diff --git a/src/lib/libcrypto/x509v3/pcy_tree.c b/src/lib/libcrypto/x509v3/pcy_tree.c index 9e54f233ad..af9bf00c66 100644 --- a/src/lib/libcrypto/x509v3/pcy_tree.c +++ b/src/lib/libcrypto/x509v3/pcy_tree.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: pcy_tree.c,v 1.14 2015/07/15 17:02:03 miod Exp $ */ | 1 | /* $OpenBSD: pcy_tree.c,v 1.15 2015/07/18 00:01:05 beck Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2004. | 3 | * project 2004. |
4 | */ | 4 | */ |
@@ -233,7 +233,7 @@ tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs, unsigned int flags) | |||
233 | 233 | ||
234 | data = policy_data_new(NULL, OBJ_nid2obj(NID_any_policy), 0); | 234 | data = policy_data_new(NULL, OBJ_nid2obj(NID_any_policy), 0); |
235 | 235 | ||
236 | if (!data || !level_add_node(level, data, NULL, tree)) | 236 | if (!data || !level_add_node(level, data, NULL, tree, NULL)) |
237 | goto bad_tree; | 237 | goto bad_tree; |
238 | 238 | ||
239 | for (i = n - 2; i >= 0; i--) { | 239 | for (i = n - 2; i >= 0; i--) { |
@@ -297,13 +297,13 @@ tree_link_matching_nodes(X509_POLICY_LEVEL *curr, const X509_POLICY_DATA *data) | |||
297 | for (i = 0; i < sk_X509_POLICY_NODE_num(last->nodes); i++) { | 297 | for (i = 0; i < sk_X509_POLICY_NODE_num(last->nodes); i++) { |
298 | node = sk_X509_POLICY_NODE_value(last->nodes, i); | 298 | node = sk_X509_POLICY_NODE_value(last->nodes, i); |
299 | if (policy_node_match(last, node, data->valid_policy)) { | 299 | if (policy_node_match(last, node, data->valid_policy)) { |
300 | if (!level_add_node(curr, data, node, NULL)) | 300 | if (!level_add_node(curr, data, node, NULL, NULL)) |
301 | return 0; | 301 | return 0; |
302 | matched = 1; | 302 | matched = 1; |
303 | } | 303 | } |
304 | } | 304 | } |
305 | if (!matched && last->anyPolicy) { | 305 | if (!matched && last->anyPolicy) { |
306 | if (!level_add_node(curr, data, last->anyPolicy, NULL)) | 306 | if (!level_add_node(curr, data, last->anyPolicy, NULL, NULL)) |
307 | return 0; | 307 | return 0; |
308 | } | 308 | } |
309 | return 1; | 309 | return 1; |
@@ -352,7 +352,7 @@ tree_add_unmatched(X509_POLICY_LEVEL *curr, const X509_POLICY_CACHE *cache, | |||
352 | /* Curr may not have anyPolicy */ | 352 | /* Curr may not have anyPolicy */ |
353 | data->qualifier_set = cache->anyPolicy->qualifier_set; | 353 | data->qualifier_set = cache->anyPolicy->qualifier_set; |
354 | data->flags |= POLICY_DATA_FLAG_SHARED_QUALIFIERS; | 354 | data->flags |= POLICY_DATA_FLAG_SHARED_QUALIFIERS; |
355 | if (!level_add_node(curr, data, node, tree)) { | 355 | if (!level_add_node(curr, data, node, tree, NULL)) { |
356 | policy_data_free(data); | 356 | policy_data_free(data); |
357 | return 0; | 357 | return 0; |
358 | } | 358 | } |
@@ -410,7 +410,7 @@ tree_link_any(X509_POLICY_LEVEL *curr, const X509_POLICY_CACHE *cache, | |||
410 | /* Finally add link to anyPolicy */ | 410 | /* Finally add link to anyPolicy */ |
411 | if (last->anyPolicy) { | 411 | if (last->anyPolicy) { |
412 | if (!level_add_node(curr, cache->anyPolicy, | 412 | if (!level_add_node(curr, cache->anyPolicy, |
413 | last->anyPolicy, NULL)) | 413 | last->anyPolicy, NULL, NULL)) |
414 | return 0; | 414 | return 0; |
415 | } | 415 | } |
416 | return 1; | 416 | return 1; |
@@ -581,8 +581,8 @@ tree_calculate_user_set(X509_POLICY_TREE *tree, | |||
581 | extra->qualifier_set = anyPolicy->data->qualifier_set; | 581 | extra->qualifier_set = anyPolicy->data->qualifier_set; |
582 | extra->flags = POLICY_DATA_FLAG_SHARED_QUALIFIERS | | 582 | extra->flags = POLICY_DATA_FLAG_SHARED_QUALIFIERS | |
583 | POLICY_DATA_FLAG_EXTRA_NODE; | 583 | POLICY_DATA_FLAG_EXTRA_NODE; |
584 | node = level_add_node(NULL, extra, anyPolicy->parent, | 584 | (void) level_add_node(NULL, extra, anyPolicy->parent, |
585 | tree); | 585 | tree, &node); |
586 | } | 586 | } |
587 | if (!tree->user_policies) { | 587 | if (!tree->user_policies) { |
588 | tree->user_policies = sk_X509_POLICY_NODE_new_null(); | 588 | tree->user_policies = sk_X509_POLICY_NODE_new_null(); |
diff --git a/src/lib/libssl/src/crypto/x509v3/pcy_int.h b/src/lib/libssl/src/crypto/x509v3/pcy_int.h index 3f8a8316e2..50ed7cbfcf 100644 --- a/src/lib/libssl/src/crypto/x509v3/pcy_int.h +++ b/src/lib/libssl/src/crypto/x509v3/pcy_int.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: pcy_int.h,v 1.3 2014/06/12 15:49:31 deraadt Exp $ */ | 1 | /* $OpenBSD: pcy_int.h,v 1.4 2015/07/18 00:01:05 beck Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2004. | 3 | * project 2004. |
4 | */ | 4 | */ |
@@ -196,9 +196,9 @@ X509_POLICY_NODE *level_find_node(const X509_POLICY_LEVEL *level, | |||
196 | X509_POLICY_NODE *tree_find_sk(STACK_OF(X509_POLICY_NODE) *sk, | 196 | X509_POLICY_NODE *tree_find_sk(STACK_OF(X509_POLICY_NODE) *sk, |
197 | const ASN1_OBJECT *id); | 197 | const ASN1_OBJECT *id); |
198 | 198 | ||
199 | X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level, | 199 | int level_add_node(X509_POLICY_LEVEL *level, |
200 | const X509_POLICY_DATA *data, X509_POLICY_NODE *parent, | 200 | const X509_POLICY_DATA *data, X509_POLICY_NODE *parent, |
201 | X509_POLICY_TREE *tree); | 201 | X509_POLICY_TREE *tree, X509_POLICY_NODE **nodep); |
202 | void policy_node_free(X509_POLICY_NODE *node); | 202 | void policy_node_free(X509_POLICY_NODE *node); |
203 | int policy_node_match(const X509_POLICY_LEVEL *lvl, | 203 | int policy_node_match(const X509_POLICY_LEVEL *lvl, |
204 | const X509_POLICY_NODE *node, const ASN1_OBJECT *oid); | 204 | const X509_POLICY_NODE *node, const ASN1_OBJECT *oid); |
diff --git a/src/lib/libssl/src/crypto/x509v3/pcy_node.c b/src/lib/libssl/src/crypto/x509v3/pcy_node.c index 839113ea2f..ba22b267bf 100644 --- a/src/lib/libssl/src/crypto/x509v3/pcy_node.c +++ b/src/lib/libssl/src/crypto/x509v3/pcy_node.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: pcy_node.c,v 1.5 2014/07/23 20:49:52 miod Exp $ */ | 1 | /* $OpenBSD: pcy_node.c,v 1.6 2015/07/18 00:01:05 beck Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2004. | 3 | * project 2004. |
4 | */ | 4 | */ |
@@ -107,23 +107,26 @@ level_find_node(const X509_POLICY_LEVEL *level, const X509_POLICY_NODE *parent, | |||
107 | return NULL; | 107 | return NULL; |
108 | } | 108 | } |
109 | 109 | ||
110 | X509_POLICY_NODE * | 110 | |
111 | int | ||
111 | level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, | 112 | level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, |
112 | X509_POLICY_NODE *parent, X509_POLICY_TREE *tree) | 113 | X509_POLICY_NODE *parent, X509_POLICY_TREE *tree, X509_POLICY_NODE **nodep) |
113 | { | 114 | { |
114 | X509_POLICY_NODE *node; | 115 | X509_POLICY_NODE *node = NULL; |
115 | 116 | ||
116 | node = malloc(sizeof(X509_POLICY_NODE)); | ||
117 | if (!node) | ||
118 | return NULL; | ||
119 | node->data = data; | ||
120 | node->parent = parent; | ||
121 | node->nchild = 0; | ||
122 | if (level) { | 117 | if (level) { |
118 | node = malloc(sizeof(X509_POLICY_NODE)); | ||
119 | if (!node) | ||
120 | goto node_error; | ||
121 | node->data = data; | ||
122 | node->parent = parent; | ||
123 | node->nchild = 0; | ||
123 | if (OBJ_obj2nid(data->valid_policy) == NID_any_policy) { | 124 | if (OBJ_obj2nid(data->valid_policy) == NID_any_policy) { |
124 | if (level->anyPolicy) | 125 | if (level->anyPolicy) |
125 | goto node_error; | 126 | goto node_error; |
126 | level->anyPolicy = node; | 127 | level->anyPolicy = node; |
128 | if (parent) | ||
129 | parent->nchild++; | ||
127 | } else { | 130 | } else { |
128 | 131 | ||
129 | if (!level->nodes) | 132 | if (!level->nodes) |
@@ -132,6 +135,8 @@ level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, | |||
132 | goto node_error; | 135 | goto node_error; |
133 | if (!sk_X509_POLICY_NODE_push(level->nodes, node)) | 136 | if (!sk_X509_POLICY_NODE_push(level->nodes, node)) |
134 | goto node_error; | 137 | goto node_error; |
138 | if (parent) | ||
139 | parent->nchild++; | ||
135 | } | 140 | } |
136 | } | 141 | } |
137 | 142 | ||
@@ -144,17 +149,20 @@ level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, | |||
144 | goto node_error_cond; | 149 | goto node_error_cond; |
145 | } | 150 | } |
146 | 151 | ||
147 | if (parent) | 152 | if (nodep) |
148 | parent->nchild++; | 153 | *nodep = node; |
149 | 154 | ||
150 | return node; | 155 | return 1; |
151 | 156 | ||
152 | node_error_cond: | 157 | node_error_cond: |
153 | if (level) | 158 | if (level) |
154 | node = NULL; | 159 | node = NULL; |
155 | node_error: | 160 | node_error: |
156 | policy_node_free(node); | 161 | policy_node_free(node); |
157 | return NULL; | 162 | node = NULL; |
163 | if (nodep) | ||
164 | *nodep = node; | ||
165 | return 0; | ||
158 | } | 166 | } |
159 | 167 | ||
160 | void | 168 | void |
diff --git a/src/lib/libssl/src/crypto/x509v3/pcy_tree.c b/src/lib/libssl/src/crypto/x509v3/pcy_tree.c index 9e54f233ad..af9bf00c66 100644 --- a/src/lib/libssl/src/crypto/x509v3/pcy_tree.c +++ b/src/lib/libssl/src/crypto/x509v3/pcy_tree.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: pcy_tree.c,v 1.14 2015/07/15 17:02:03 miod Exp $ */ | 1 | /* $OpenBSD: pcy_tree.c,v 1.15 2015/07/18 00:01:05 beck Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2004. | 3 | * project 2004. |
4 | */ | 4 | */ |
@@ -233,7 +233,7 @@ tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs, unsigned int flags) | |||
233 | 233 | ||
234 | data = policy_data_new(NULL, OBJ_nid2obj(NID_any_policy), 0); | 234 | data = policy_data_new(NULL, OBJ_nid2obj(NID_any_policy), 0); |
235 | 235 | ||
236 | if (!data || !level_add_node(level, data, NULL, tree)) | 236 | if (!data || !level_add_node(level, data, NULL, tree, NULL)) |
237 | goto bad_tree; | 237 | goto bad_tree; |
238 | 238 | ||
239 | for (i = n - 2; i >= 0; i--) { | 239 | for (i = n - 2; i >= 0; i--) { |
@@ -297,13 +297,13 @@ tree_link_matching_nodes(X509_POLICY_LEVEL *curr, const X509_POLICY_DATA *data) | |||
297 | for (i = 0; i < sk_X509_POLICY_NODE_num(last->nodes); i++) { | 297 | for (i = 0; i < sk_X509_POLICY_NODE_num(last->nodes); i++) { |
298 | node = sk_X509_POLICY_NODE_value(last->nodes, i); | 298 | node = sk_X509_POLICY_NODE_value(last->nodes, i); |
299 | if (policy_node_match(last, node, data->valid_policy)) { | 299 | if (policy_node_match(last, node, data->valid_policy)) { |
300 | if (!level_add_node(curr, data, node, NULL)) | 300 | if (!level_add_node(curr, data, node, NULL, NULL)) |
301 | return 0; | 301 | return 0; |
302 | matched = 1; | 302 | matched = 1; |
303 | } | 303 | } |
304 | } | 304 | } |
305 | if (!matched && last->anyPolicy) { | 305 | if (!matched && last->anyPolicy) { |
306 | if (!level_add_node(curr, data, last->anyPolicy, NULL)) | 306 | if (!level_add_node(curr, data, last->anyPolicy, NULL, NULL)) |
307 | return 0; | 307 | return 0; |
308 | } | 308 | } |
309 | return 1; | 309 | return 1; |
@@ -352,7 +352,7 @@ tree_add_unmatched(X509_POLICY_LEVEL *curr, const X509_POLICY_CACHE *cache, | |||
352 | /* Curr may not have anyPolicy */ | 352 | /* Curr may not have anyPolicy */ |
353 | data->qualifier_set = cache->anyPolicy->qualifier_set; | 353 | data->qualifier_set = cache->anyPolicy->qualifier_set; |
354 | data->flags |= POLICY_DATA_FLAG_SHARED_QUALIFIERS; | 354 | data->flags |= POLICY_DATA_FLAG_SHARED_QUALIFIERS; |
355 | if (!level_add_node(curr, data, node, tree)) { | 355 | if (!level_add_node(curr, data, node, tree, NULL)) { |
356 | policy_data_free(data); | 356 | policy_data_free(data); |
357 | return 0; | 357 | return 0; |
358 | } | 358 | } |
@@ -410,7 +410,7 @@ tree_link_any(X509_POLICY_LEVEL *curr, const X509_POLICY_CACHE *cache, | |||
410 | /* Finally add link to anyPolicy */ | 410 | /* Finally add link to anyPolicy */ |
411 | if (last->anyPolicy) { | 411 | if (last->anyPolicy) { |
412 | if (!level_add_node(curr, cache->anyPolicy, | 412 | if (!level_add_node(curr, cache->anyPolicy, |
413 | last->anyPolicy, NULL)) | 413 | last->anyPolicy, NULL, NULL)) |
414 | return 0; | 414 | return 0; |
415 | } | 415 | } |
416 | return 1; | 416 | return 1; |
@@ -581,8 +581,8 @@ tree_calculate_user_set(X509_POLICY_TREE *tree, | |||
581 | extra->qualifier_set = anyPolicy->data->qualifier_set; | 581 | extra->qualifier_set = anyPolicy->data->qualifier_set; |
582 | extra->flags = POLICY_DATA_FLAG_SHARED_QUALIFIERS | | 582 | extra->flags = POLICY_DATA_FLAG_SHARED_QUALIFIERS | |
583 | POLICY_DATA_FLAG_EXTRA_NODE; | 583 | POLICY_DATA_FLAG_EXTRA_NODE; |
584 | node = level_add_node(NULL, extra, anyPolicy->parent, | 584 | (void) level_add_node(NULL, extra, anyPolicy->parent, |
585 | tree); | 585 | tree, &node); |
586 | } | 586 | } |
587 | if (!tree->user_policies) { | 587 | if (!tree->user_policies) { |
588 | tree->user_policies = sk_X509_POLICY_NODE_new_null(); | 588 | tree->user_policies = sk_X509_POLICY_NODE_new_null(); |