diff options
| author | tb <> | 2024-12-28 19:07:24 +0000 |
|---|---|---|
| committer | tb <> | 2024-12-28 19:07:24 +0000 |
| commit | 4b77b1208d30ecc98cd3520620366c84fa5ec11d (patch) | |
| tree | 2811b55be563695dc99b1e14ae8a70efa30abf28 /src | |
| parent | 40ef9115554c7a9b98c5dd6d2c9e4f9f36b9142b (diff) | |
| download | openbsd-4b77b1208d30ecc98cd3520620366c84fa5ec11d.tar.gz openbsd-4b77b1208d30ecc98cd3520620366c84fa5ec11d.tar.bz2 openbsd-4b77b1208d30ecc98cd3520620366c84fa5ec11d.zip | |
Remove flags argument from obj_bsearch_ex()
The only caller passes in OBJ_BSEARCH_FIRST_VALUE_ON_MATCH, so the
condition involving this flag is always true. On the other hand,
while OBJ_BSEARCh_VALUE_ON_NOMATCH is left unset hence the condition
involving this flag is also true (since negated).
ok jsing
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/stack/stack.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/lib/libcrypto/stack/stack.c b/src/lib/libcrypto/stack/stack.c index 3967bedfe4..e50c1bcac0 100644 --- a/src/lib/libcrypto/stack/stack.c +++ b/src/lib/libcrypto/stack/stack.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: stack.c,v 1.29 2024/12/28 16:10:39 tb Exp $ */ | 1 | /* $OpenBSD: stack.c,v 1.30 2024/12/28 19:07:24 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 | * |
| @@ -68,9 +68,6 @@ | |||
| 68 | #undef MIN_NODES | 68 | #undef MIN_NODES |
| 69 | #define MIN_NODES 4 | 69 | #define MIN_NODES 4 |
| 70 | 70 | ||
| 71 | #define OBJ_BSEARCH_VALUE_ON_NOMATCH 0x01 | ||
| 72 | #define OBJ_BSEARCH_FIRST_VALUE_ON_MATCH 0x02 | ||
| 73 | |||
| 74 | int | 71 | int |
| 75 | (*sk_set_cmp_func(_STACK *sk, int (*c)(const void *, const void *)))( | 72 | (*sk_set_cmp_func(_STACK *sk, int (*c)(const void *, const void *)))( |
| 76 | const void *, const void *) | 73 | const void *, const void *) |
| @@ -202,7 +199,7 @@ LCRYPTO_ALIAS(sk_delete); | |||
| 202 | 199 | ||
| 203 | static const void * | 200 | static const void * |
| 204 | obj_bsearch_ex(const void *key, const void *base_, int num, int size, | 201 | obj_bsearch_ex(const void *key, const void *base_, int num, int size, |
| 205 | int (*cmp)(const void *, const void *), int flags) | 202 | int (*cmp)(const void *, const void *)) |
| 206 | { | 203 | { |
| 207 | const char *base = base_; | 204 | const char *base = base_; |
| 208 | int l, h, i = 0, c = 0; | 205 | int l, h, i = 0, c = 0; |
| @@ -223,9 +220,9 @@ obj_bsearch_ex(const void *key, const void *base_, int num, int size, | |||
| 223 | else | 220 | else |
| 224 | break; | 221 | break; |
| 225 | } | 222 | } |
| 226 | if (c != 0 && !(flags & OBJ_BSEARCH_VALUE_ON_NOMATCH)) | 223 | if (c != 0) |
| 227 | p = NULL; | 224 | p = NULL; |
| 228 | else if (c == 0 && (flags & OBJ_BSEARCH_FIRST_VALUE_ON_MATCH)) { | 225 | else if (c == 0) { |
| 229 | while (i > 0 && (*cmp)(key, &(base[(i - 1) * size])) == 0) | 226 | while (i > 0 && (*cmp)(key, &(base[(i - 1) * size])) == 0) |
| 230 | i--; | 227 | i--; |
| 231 | p = &(base[i * size]); | 228 | p = &(base[i * size]); |
| @@ -251,8 +248,7 @@ sk_find(_STACK *st, void *data) | |||
| 251 | sk_sort(st); | 248 | sk_sort(st); |
| 252 | if (data == NULL) | 249 | if (data == NULL) |
| 253 | return (-1); | 250 | return (-1); |
| 254 | r = obj_bsearch_ex(&data, st->data, st->num, sizeof(void *), st->comp, | 251 | r = obj_bsearch_ex(&data, st->data, st->num, sizeof(void *), st->comp); |
| 255 | OBJ_BSEARCH_FIRST_VALUE_ON_MATCH); | ||
| 256 | if (r == NULL) | 252 | if (r == NULL) |
| 257 | return (-1); | 253 | return (-1); |
| 258 | return (int)((char **)r - st->data); | 254 | return (int)((char **)r - st->data); |
