diff options
| author | tb <> | 2021-11-05 17:13:14 +0000 |
|---|---|---|
| committer | tb <> | 2021-11-05 17:13:14 +0000 |
| commit | a6ece9a5379927c4356acd958611604b45abd9fd (patch) | |
| tree | 6a878f396e72a3ba2baefc51ad29a1cad5eef823 /src | |
| parent | 5ea7cbad7201b7a66976e6d940ef97cb8f0572cf (diff) | |
| download | openbsd-a6ece9a5379927c4356acd958611604b45abd9fd.tar.gz openbsd-a6ece9a5379927c4356acd958611604b45abd9fd.tar.bz2 openbsd-a6ece9a5379927c4356acd958611604b45abd9fd.zip | |
Unify variable names in X509_STORE_{free,up_ref,add_lookup}().
simplify the flow of X509_add_lookup().
ok jsing
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/x509/x509_lu.c | 55 |
1 files changed, 26 insertions, 29 deletions
diff --git a/src/lib/libcrypto/x509/x509_lu.c b/src/lib/libcrypto/x509/x509_lu.c index 0d4f4ad2ff..7bcd5f64de 100644 --- a/src/lib/libcrypto/x509/x509_lu.c +++ b/src/lib/libcrypto/x509/x509_lu.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: x509_lu.c,v 1.44 2021/11/05 17:11:28 tb Exp $ */ | 1 | /* $OpenBSD: x509_lu.c,v 1.45 2021/11/05 17:13:14 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -237,67 +237,64 @@ X509_OBJECT_free(X509_OBJECT *a) | |||
| 237 | } | 237 | } |
| 238 | 238 | ||
| 239 | void | 239 | void |
| 240 | X509_STORE_free(X509_STORE *vfy) | 240 | X509_STORE_free(X509_STORE *store) |
| 241 | { | 241 | { |
| 242 | int i; | ||
| 243 | STACK_OF(X509_LOOKUP) *sk; | 242 | STACK_OF(X509_LOOKUP) *sk; |
| 244 | X509_LOOKUP *lu; | 243 | X509_LOOKUP *lu; |
| 244 | int i; | ||
| 245 | 245 | ||
| 246 | if (vfy == NULL) | 246 | if (store == NULL) |
| 247 | return; | 247 | return; |
| 248 | 248 | ||
| 249 | i = CRYPTO_add(&vfy->references, -1, CRYPTO_LOCK_X509_STORE); | 249 | if (CRYPTO_add(&store->references, -1, CRYPTO_LOCK_X509_STORE) > 0) |
| 250 | if (i > 0) | ||
| 251 | return; | 250 | return; |
| 252 | 251 | ||
| 253 | sk = vfy->get_cert_methods; | 252 | sk = store->get_cert_methods; |
| 254 | for (i = 0; i < sk_X509_LOOKUP_num(sk); i++) { | 253 | for (i = 0; i < sk_X509_LOOKUP_num(sk); i++) { |
| 255 | lu = sk_X509_LOOKUP_value(sk, i); | 254 | lu = sk_X509_LOOKUP_value(sk, i); |
| 256 | X509_LOOKUP_shutdown(lu); | 255 | X509_LOOKUP_shutdown(lu); |
| 257 | X509_LOOKUP_free(lu); | 256 | X509_LOOKUP_free(lu); |
| 258 | } | 257 | } |
| 259 | sk_X509_LOOKUP_free(sk); | 258 | sk_X509_LOOKUP_free(sk); |
| 260 | sk_X509_OBJECT_pop_free(vfy->objs, X509_OBJECT_free); | 259 | sk_X509_OBJECT_pop_free(store->objs, X509_OBJECT_free); |
| 261 | 260 | ||
| 262 | CRYPTO_free_ex_data(CRYPTO_EX_INDEX_X509_STORE, vfy, &vfy->ex_data); | 261 | CRYPTO_free_ex_data(CRYPTO_EX_INDEX_X509_STORE, store, &store->ex_data); |
| 263 | X509_VERIFY_PARAM_free(vfy->param); | 262 | X509_VERIFY_PARAM_free(store->param); |
| 264 | free(vfy); | 263 | free(store); |
| 265 | } | 264 | } |
| 266 | 265 | ||
| 267 | int | 266 | int |
| 268 | X509_STORE_up_ref(X509_STORE *x) | 267 | X509_STORE_up_ref(X509_STORE *store) |
| 269 | { | 268 | { |
| 270 | int refs = CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509_STORE); | 269 | return CRYPTO_add(&store->references, 1, CRYPTO_LOCK_X509_STORE) > 1; |
| 271 | return (refs > 1) ? 1 : 0; | ||
| 272 | } | 270 | } |
| 273 | 271 | ||
| 274 | X509_LOOKUP * | 272 | X509_LOOKUP * |
| 275 | X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m) | 273 | X509_STORE_add_lookup(X509_STORE *store, X509_LOOKUP_METHOD *method) |
| 276 | { | 274 | { |
| 277 | int i; | ||
| 278 | STACK_OF(X509_LOOKUP) *sk; | 275 | STACK_OF(X509_LOOKUP) *sk; |
| 279 | X509_LOOKUP *lu; | 276 | X509_LOOKUP *lu; |
| 277 | int i; | ||
| 280 | 278 | ||
| 281 | sk = v->get_cert_methods; | 279 | sk = store->get_cert_methods; |
| 282 | for (i = 0; i < sk_X509_LOOKUP_num(sk); i++) { | 280 | for (i = 0; i < sk_X509_LOOKUP_num(sk); i++) { |
| 283 | lu = sk_X509_LOOKUP_value(sk, i); | 281 | lu = sk_X509_LOOKUP_value(sk, i); |
| 284 | if (m == lu->method) { | 282 | if (method == lu->method) { |
| 285 | return lu; | 283 | return lu; |
| 286 | } | 284 | } |
| 287 | } | 285 | } |
| 288 | /* a new one */ | 286 | |
| 289 | lu = X509_LOOKUP_new(m); | 287 | if ((lu = X509_LOOKUP_new(method)) == NULL) |
| 290 | if (lu == NULL) | 288 | return NULL; |
| 289 | |||
| 290 | lu->store_ctx = store; | ||
| 291 | if (sk_X509_LOOKUP_push(store->get_cert_methods, lu) <= 0) { | ||
| 292 | X509error(ERR_R_MALLOC_FAILURE); | ||
| 293 | X509_LOOKUP_free(lu); | ||
| 291 | return NULL; | 294 | return NULL; |
| 292 | else { | ||
| 293 | lu->store_ctx = v; | ||
| 294 | if (sk_X509_LOOKUP_push(v->get_cert_methods, lu)) | ||
| 295 | return lu; | ||
| 296 | else { | ||
| 297 | X509_LOOKUP_free(lu); | ||
| 298 | return NULL; | ||
| 299 | } | ||
| 300 | } | 295 | } |
| 296 | |||
| 297 | return lu; | ||
| 301 | } | 298 | } |
| 302 | 299 | ||
| 303 | X509_OBJECT * | 300 | X509_OBJECT * |
