diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/x509/x509_lu.c | 25 | ||||
| -rw-r--r-- | src/lib/libcrypto/x509/x509_vfy.h | 19 |
2 files changed, 37 insertions, 7 deletions
diff --git a/src/lib/libcrypto/x509/x509_lu.c b/src/lib/libcrypto/x509/x509_lu.c index ca96edf221..9400aec320 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.53 2021/11/19 07:49:27 schwarze Exp $ */ | 1 | /* $OpenBSD: x509_lu.c,v 1.54 2022/01/05 20:18:19 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 | * |
| @@ -821,8 +821,25 @@ X509_STORE_get0_param(X509_STORE *ctx) | |||
| 821 | } | 821 | } |
| 822 | 822 | ||
| 823 | void | 823 | void |
| 824 | X509_STORE_set_verify_cb(X509_STORE *ctx, | 824 | X509_STORE_set_verify(X509_STORE *store, X509_STORE_CTX_verify_fn verify) |
| 825 | int (*verify_cb)(int, X509_STORE_CTX *)) | ||
| 826 | { | 825 | { |
| 827 | ctx->verify_cb = verify_cb; | 826 | store->verify = verify; |
| 827 | } | ||
| 828 | |||
| 829 | X509_STORE_CTX_verify_fn | ||
| 830 | X509_STORE_get_verify(X509_STORE *store) | ||
| 831 | { | ||
| 832 | return store->verify; | ||
| 833 | } | ||
| 834 | |||
| 835 | void | ||
| 836 | X509_STORE_set_verify_cb(X509_STORE *store, X509_STORE_CTX_verify_cb verify_cb) | ||
| 837 | { | ||
| 838 | store->verify_cb = verify_cb; | ||
| 839 | } | ||
| 840 | |||
| 841 | X509_STORE_CTX_verify_cb | ||
| 842 | X509_STORE_get_verify_cb(X509_STORE *store) | ||
| 843 | { | ||
| 844 | return store->verify_cb; | ||
| 828 | } | 845 | } |
diff --git a/src/lib/libcrypto/x509/x509_vfy.h b/src/lib/libcrypto/x509/x509_vfy.h index 34fb913350..a02ef94e2b 100644 --- a/src/lib/libcrypto/x509/x509_vfy.h +++ b/src/lib/libcrypto/x509/x509_vfy.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: x509_vfy.h,v 1.47 2021/11/19 16:35:10 schwarze Exp $ */ | 1 | /* $OpenBSD: x509_vfy.h,v 1.48 2022/01/05 20:18:19 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 | * |
| @@ -297,6 +297,12 @@ int X509_STORE_set_trust(X509_STORE *ctx, int trust); | |||
| 297 | int X509_STORE_set1_param(X509_STORE *ctx, X509_VERIFY_PARAM *pm); | 297 | int X509_STORE_set1_param(X509_STORE *ctx, X509_VERIFY_PARAM *pm); |
| 298 | X509_VERIFY_PARAM *X509_STORE_get0_param(X509_STORE *ctx); | 298 | X509_VERIFY_PARAM *X509_STORE_get0_param(X509_STORE *ctx); |
| 299 | 299 | ||
| 300 | #if defined(LIBRESSL_NEXT_API) || defined(LIBRESSL_CRYPTO_INTERNAL) | ||
| 301 | typedef int (*X509_STORE_CTX_verify_cb)(int, X509_STORE_CTX *); | ||
| 302 | |||
| 303 | X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(X509_STORE *); | ||
| 304 | #endif | ||
| 305 | |||
| 300 | void X509_STORE_set_verify_cb(X509_STORE *ctx, | 306 | void X509_STORE_set_verify_cb(X509_STORE *ctx, |
| 301 | int (*verify_cb)(int, X509_STORE_CTX *)); | 307 | int (*verify_cb)(int, X509_STORE_CTX *)); |
| 302 | #define X509_STORE_set_verify_cb_func(ctx, func) \ | 308 | #define X509_STORE_set_verify_cb_func(ctx, func) \ |
| @@ -388,12 +394,19 @@ void X509_STORE_CTX_set0_verified_chain(X509_STORE_CTX *ctx, STACK_OF(X509) *sk) | |||
| 388 | int (*X509_STORE_CTX_get_verify(X509_STORE_CTX *ctx))(X509_STORE_CTX *); | 394 | int (*X509_STORE_CTX_get_verify(X509_STORE_CTX *ctx))(X509_STORE_CTX *); |
| 389 | void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx, | 395 | void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx, |
| 390 | int (*verify)(X509_STORE_CTX *)); | 396 | int (*verify)(X509_STORE_CTX *)); |
| 391 | #define X509_STORE_set_verify_func(ctx, func) \ | ||
| 392 | X509_STORE_set_verify((ctx), (func)) | ||
| 393 | int (*X509_STORE_CTX_get_verify_cb(X509_STORE_CTX *ctx))(int, X509_STORE_CTX *); | 397 | int (*X509_STORE_CTX_get_verify_cb(X509_STORE_CTX *ctx))(int, X509_STORE_CTX *); |
| 394 | void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx, | 398 | void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx, |
| 395 | int (*verify_cb)(int, X509_STORE_CTX *)); | 399 | int (*verify_cb)(int, X509_STORE_CTX *)); |
| 396 | 400 | ||
| 401 | #if defined(LIBRESSL_NEXT_API) || defined(LIBRESSL_CRYPTO_INTERNAL) | ||
| 402 | typedef int (*X509_STORE_CTX_verify_fn)(X509_STORE_CTX *); | ||
| 403 | |||
| 404 | void X509_STORE_set_verify(X509_STORE *ctx, X509_STORE_CTX_verify_fn verify); | ||
| 405 | X509_STORE_CTX_verify_fn X509_STORE_get_verify(X509_STORE *ctx); | ||
| 406 | #endif | ||
| 407 | #define X509_STORE_set_verify_func(ctx, func) \ | ||
| 408 | X509_STORE_set_verify((ctx), (func)) | ||
| 409 | |||
| 397 | X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(X509_STORE_CTX *ctx); | 410 | X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(X509_STORE_CTX *ctx); |
| 398 | int X509_STORE_CTX_get_explicit_policy(X509_STORE_CTX *ctx); | 411 | int X509_STORE_CTX_get_explicit_policy(X509_STORE_CTX *ctx); |
| 399 | int X509_STORE_CTX_get_num_untrusted(X509_STORE_CTX *ctx); | 412 | int X509_STORE_CTX_get_num_untrusted(X509_STORE_CTX *ctx); |
