diff options
Diffstat (limited to 'src/lib/libcrypto/x509v3')
-rw-r--r-- | src/lib/libcrypto/x509v3/v3_lib.c | 24 | ||||
-rw-r--r-- | src/lib/libcrypto/x509v3/v3_purp.c | 22 |
2 files changed, 38 insertions, 8 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_lib.c b/src/lib/libcrypto/x509v3/v3_lib.c index 2e92747d43..946ef1d54e 100644 --- a/src/lib/libcrypto/x509v3/v3_lib.c +++ b/src/lib/libcrypto/x509v3/v3_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: v3_lib.c,v 1.15 2016/12/30 15:54:49 jsing Exp $ */ | 1 | /* $OpenBSD: v3_lib.c,v 1.16 2017/01/21 04:42:16 jsing 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 1999. | 3 | * project 1999. |
4 | */ | 4 | */ |
@@ -91,10 +91,24 @@ ext_cmp(const X509V3_EXT_METHOD * const *a, const X509V3_EXT_METHOD * const *b) | |||
91 | return ((*a)->ext_nid - (*b)->ext_nid); | 91 | return ((*a)->ext_nid - (*b)->ext_nid); |
92 | } | 92 | } |
93 | 93 | ||
94 | DECLARE_OBJ_BSEARCH_CMP_FN(const X509V3_EXT_METHOD *, | 94 | static int ext_cmp_BSEARCH_CMP_FN(const void *, const void *); |
95 | const X509V3_EXT_METHOD *, ext); | 95 | static int ext_cmp(const X509V3_EXT_METHOD * const *, const X509V3_EXT_METHOD * const *); |
96 | IMPLEMENT_OBJ_BSEARCH_CMP_FN(const X509V3_EXT_METHOD *, | 96 | static const X509V3_EXT_METHOD * *OBJ_bsearch_ext(const X509V3_EXT_METHOD * *key, const X509V3_EXT_METHOD * const *base, int num); |
97 | const X509V3_EXT_METHOD *, ext); | 97 | |
98 | static int | ||
99 | ext_cmp_BSEARCH_CMP_FN(const void *a_, const void *b_) | ||
100 | { | ||
101 | const X509V3_EXT_METHOD * const *a = a_; | ||
102 | const X509V3_EXT_METHOD * const *b = b_; | ||
103 | return ext_cmp(a, b); | ||
104 | } | ||
105 | |||
106 | static const X509V3_EXT_METHOD * * | ||
107 | OBJ_bsearch_ext(const X509V3_EXT_METHOD * *key, const X509V3_EXT_METHOD * const *base, int num) | ||
108 | { | ||
109 | return (const X509V3_EXT_METHOD * *)OBJ_bsearch_(key, base, num, sizeof(const X509V3_EXT_METHOD *), | ||
110 | ext_cmp_BSEARCH_CMP_FN); | ||
111 | } | ||
98 | 112 | ||
99 | const X509V3_EXT_METHOD * | 113 | const X509V3_EXT_METHOD * |
100 | X509V3_EXT_get_nid(int nid) | 114 | X509V3_EXT_get_nid(int nid) |
diff --git a/src/lib/libcrypto/x509v3/v3_purp.c b/src/lib/libcrypto/x509v3/v3_purp.c index a091a7f425..d8ab679304 100644 --- a/src/lib/libcrypto/x509v3/v3_purp.c +++ b/src/lib/libcrypto/x509v3/v3_purp.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: v3_purp.c,v 1.27 2016/11/08 20:01:06 miod Exp $ */ | 1 | /* $OpenBSD: v3_purp.c,v 1.28 2017/01/21 04:42:16 jsing 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 2001. | 3 | * project 2001. |
4 | */ | 4 | */ |
@@ -325,8 +325,24 @@ nid_cmp(const int *a, const int *b) | |||
325 | return *a - *b; | 325 | return *a - *b; |
326 | } | 326 | } |
327 | 327 | ||
328 | DECLARE_OBJ_BSEARCH_CMP_FN(int, int, nid); | 328 | static int nid_cmp_BSEARCH_CMP_FN(const void *, const void *); |
329 | IMPLEMENT_OBJ_BSEARCH_CMP_FN(int, int, nid); | 329 | static int nid_cmp(int const *, int const *); |
330 | static int *OBJ_bsearch_nid(int *key, int const *base, int num); | ||
331 | |||
332 | static int | ||
333 | nid_cmp_BSEARCH_CMP_FN(const void *a_, const void *b_) | ||
334 | { | ||
335 | int const *a = a_; | ||
336 | int const *b = b_; | ||
337 | return nid_cmp(a, b); | ||
338 | } | ||
339 | |||
340 | static int * | ||
341 | OBJ_bsearch_nid(int *key, int const *base, int num) | ||
342 | { | ||
343 | return (int *)OBJ_bsearch_(key, base, num, sizeof(int), | ||
344 | nid_cmp_BSEARCH_CMP_FN); | ||
345 | } | ||
330 | 346 | ||
331 | int | 347 | int |
332 | X509_supported_extension(X509_EXTENSION *ex) | 348 | X509_supported_extension(X509_EXTENSION *ex) |