diff options
author | tb <> | 2024-07-12 08:39:54 +0000 |
---|---|---|
committer | tb <> | 2024-07-12 08:39:54 +0000 |
commit | 20bb4336e5059954a5b909543bcf1225f083e31a (patch) | |
tree | 8f17436bf62b5b5264c5ba03fe5ae6bc815fbe56 /src | |
parent | 78396a0e25876766100f721572e3eab7f164d330 (diff) | |
download | openbsd-20bb4336e5059954a5b909543bcf1225f083e31a.tar.gz openbsd-20bb4336e5059954a5b909543bcf1225f083e31a.tar.bz2 openbsd-20bb4336e5059954a5b909543bcf1225f083e31a.zip |
Clean up X509v3_get_ext_by_OBJ()
Like most of its siblings, this function can be simplified significantly
by making proper use of the API that is being built. Drop unnecessary NULL
checks and other weirdness and add some const correctness.
ok jsing
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/x509/x509_v3.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/lib/libcrypto/x509/x509_v3.c b/src/lib/libcrypto/x509/x509_v3.c index fcc6897378..22fa7e1162 100644 --- a/src/lib/libcrypto/x509/x509_v3.c +++ b/src/lib/libcrypto/x509/x509_v3.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: x509_v3.c,v 1.30 2024/05/23 02:00:38 tb Exp $ */ | 1 | /* $OpenBSD: x509_v3.c,v 1.31 2024/07/12 08:39:54 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 | * |
@@ -94,20 +94,16 @@ int | |||
94 | X509v3_get_ext_by_OBJ(const STACK_OF(X509_EXTENSION) *sk, | 94 | X509v3_get_ext_by_OBJ(const STACK_OF(X509_EXTENSION) *sk, |
95 | const ASN1_OBJECT *obj, int lastpos) | 95 | const ASN1_OBJECT *obj, int lastpos) |
96 | { | 96 | { |
97 | int n; | 97 | if (++lastpos < 0) |
98 | X509_EXTENSION *ext; | ||
99 | |||
100 | if (sk == NULL) | ||
101 | return -1; | ||
102 | lastpos++; | ||
103 | if (lastpos < 0) | ||
104 | lastpos = 0; | 98 | lastpos = 0; |
105 | n = sk_X509_EXTENSION_num(sk); | 99 | |
106 | for (; lastpos < n; lastpos++) { | 100 | for (; lastpos < X509v3_get_ext_count(sk); lastpos++) { |
107 | ext = sk_X509_EXTENSION_value(sk, lastpos); | 101 | const X509_EXTENSION *ext = X509v3_get_ext(sk, lastpos); |
102 | |||
108 | if (OBJ_cmp(ext->object, obj) == 0) | 103 | if (OBJ_cmp(ext->object, obj) == 0) |
109 | return lastpos; | 104 | return lastpos; |
110 | } | 105 | } |
106 | |||
111 | return -1; | 107 | return -1; |
112 | } | 108 | } |
113 | LCRYPTO_ALIAS(X509v3_get_ext_by_OBJ); | 109 | LCRYPTO_ALIAS(X509v3_get_ext_by_OBJ); |