summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/stack
diff options
context:
space:
mode:
authortb <>2025-12-21 07:35:11 +0000
committertb <>2025-12-21 07:35:11 +0000
commitc58dfc9c3fb284d9e07336a2d910134ea05b7aea (patch)
treea2ec81694bd5b59216f8f56ff767a6136444f9f2 /src/lib/libcrypto/stack
parentf0030cb3d36507775af6db668b87cf6d9558fbfa (diff)
downloadopenbsd-c58dfc9c3fb284d9e07336a2d910134ea05b7aea.tar.gz
openbsd-c58dfc9c3fb284d9e07336a2d910134ea05b7aea.tar.bz2
openbsd-c58dfc9c3fb284d9e07336a2d910134ea05b7aea.zip
stack: switch data from char ** to void **
ok jsing kenjiro
Diffstat (limited to '')
-rw-r--r--src/lib/libcrypto/stack/stack.c26
-rw-r--r--src/lib/libcrypto/stack/stack_local.h4
2 files changed, 15 insertions, 15 deletions
diff --git a/src/lib/libcrypto/stack/stack.c b/src/lib/libcrypto/stack/stack.c
index 1424661879..ed18688a31 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.33 2025/01/03 08:04:16 tb Exp $ */ 1/* $OpenBSD: stack.c,v 1.34 2025/12/21 07:35:11 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 *
@@ -86,17 +86,17 @@ _STACK *
86sk_dup(_STACK *sk) 86sk_dup(_STACK *sk)
87{ 87{
88 _STACK *ret; 88 _STACK *ret;
89 char **s; 89 void **s;
90 90
91 if ((ret = sk_new(sk->comp)) == NULL) 91 if ((ret = sk_new(sk->comp)) == NULL)
92 goto err; 92 goto err;
93 s = reallocarray(ret->data, sk->num_alloc, sizeof(char *)); 93 s = reallocarray(ret->data, sk->num_alloc, sizeof(void *));
94 if (s == NULL) 94 if (s == NULL)
95 goto err; 95 goto err;
96 ret->data = s; 96 ret->data = s;
97 97
98 ret->num = sk->num; 98 ret->num = sk->num;
99 memcpy(ret->data, sk->data, sizeof(char *) * sk->num); 99 memcpy(ret->data, sk->data, sizeof(void *) * sk->num);
100 ret->sorted = sk->sorted; 100 ret->sorted = sk->sorted;
101 ret->num_alloc = sk->num_alloc; 101 ret->num_alloc = sk->num_alloc;
102 ret->comp = sk->comp; 102 ret->comp = sk->comp;
@@ -124,7 +124,7 @@ sk_new(int (*c)(const void *, const void *))
124 124
125 if ((ret = malloc(sizeof(_STACK))) == NULL) 125 if ((ret = malloc(sizeof(_STACK))) == NULL)
126 goto err; 126 goto err;
127 if ((ret->data = reallocarray(NULL, MIN_NODES, sizeof(char *))) == NULL) 127 if ((ret->data = reallocarray(NULL, MIN_NODES, sizeof(void *))) == NULL)
128 goto err; 128 goto err;
129 for (i = 0; i < MIN_NODES; i++) 129 for (i = 0; i < MIN_NODES; i++)
130 ret->data[i] = NULL; 130 ret->data[i] = NULL;
@@ -143,12 +143,12 @@ LCRYPTO_ALIAS(sk_new);
143int 143int
144sk_insert(_STACK *st, void *data, int loc) 144sk_insert(_STACK *st, void *data, int loc)
145{ 145{
146 char **s; 146 void **s;
147 147
148 if (st == NULL) 148 if (st == NULL)
149 return 0; 149 return 0;
150 if (st->num_alloc <= st->num + 1) { 150 if (st->num_alloc <= st->num + 1) {
151 s = reallocarray(st->data, st->num_alloc, 2 * sizeof(char *)); 151 s = reallocarray(st->data, st->num_alloc, 2 * sizeof(void *));
152 if (s == NULL) 152 if (s == NULL)
153 return (0); 153 return (0);
154 st->data = s; 154 st->data = s;
@@ -158,7 +158,7 @@ sk_insert(_STACK *st, void *data, int loc)
158 st->data[st->num] = data; 158 st->data[st->num] = data;
159 else { 159 else {
160 memmove(&(st->data[loc + 1]), &(st->data[loc]), 160 memmove(&(st->data[loc + 1]), &(st->data[loc]),
161 sizeof(char *)*(st->num - loc)); 161 sizeof(void *) * (st->num - loc));
162 st->data[loc] = data; 162 st->data[loc] = data;
163 } 163 }
164 st->num++; 164 st->num++;
@@ -182,7 +182,7 @@ LCRYPTO_ALIAS(sk_delete_ptr);
182void * 182void *
183sk_delete(_STACK *st, int loc) 183sk_delete(_STACK *st, int loc)
184{ 184{
185 char *ret; 185 void *ret;
186 186
187 if (!st || (loc < 0) || (loc >= st->num)) 187 if (!st || (loc < 0) || (loc >= st->num))
188 return NULL; 188 return NULL;
@@ -190,7 +190,7 @@ sk_delete(_STACK *st, int loc)
190 ret = st->data[loc]; 190 ret = st->data[loc];
191 if (loc != st->num - 1) { 191 if (loc != st->num - 1) {
192 memmove(&(st->data[loc]), &(st->data[loc + 1]), 192 memmove(&(st->data[loc]), &(st->data[loc + 1]),
193 sizeof(char *)*(st->num - 1 - loc)); 193 sizeof(void *) * (st->num - 1 - loc));
194 } 194 }
195 st->num--; 195 st->num--;
196 return (ret); 196 return (ret);
@@ -201,7 +201,7 @@ static const void *
201obj_bsearch_ex(const void *key, const void *base_, int num, int size, 201obj_bsearch_ex(const void *key, const void *base_, int num, int size,
202 int (*cmp)(const void *, const void *)) 202 int (*cmp)(const void *, const void *))
203{ 203{
204 const char *base = base_; 204 const void *base = base_;
205 int l, h, i, c; 205 int l, h, i, c;
206 206
207 l = 0; 207 l = 0;
@@ -244,7 +244,7 @@ sk_find(_STACK *st, void *data)
244 r = obj_bsearch_ex(&data, st->data, st->num, sizeof(void *), st->comp); 244 r = obj_bsearch_ex(&data, st->data, st->num, sizeof(void *), st->comp);
245 if (r == NULL) 245 if (r == NULL)
246 return (-1); 246 return (-1);
247 return (int)((char **)r - st->data); 247 return (int)((void **)r - st->data);
248} 248}
249LCRYPTO_ALIAS(sk_find); 249LCRYPTO_ALIAS(sk_find);
250 250
@@ -360,7 +360,7 @@ sk_sort(_STACK *st)
360 * type** with type**, so we leave the casting until absolutely 360 * type** with type**, so we leave the casting until absolutely
361 * necessary (ie. "now"). */ 361 * necessary (ie. "now"). */
362 comp_func = (int (*)(const void *, const void *))(st->comp); 362 comp_func = (int (*)(const void *, const void *))(st->comp);
363 qsort(st->data, st->num, sizeof(char *), comp_func); 363 qsort(st->data, st->num, sizeof(void *), comp_func);
364 st->sorted = 1; 364 st->sorted = 1;
365 } 365 }
366} 366}
diff --git a/src/lib/libcrypto/stack/stack_local.h b/src/lib/libcrypto/stack/stack_local.h
index a330707192..63d793303a 100644
--- a/src/lib/libcrypto/stack/stack_local.h
+++ b/src/lib/libcrypto/stack/stack_local.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: stack_local.h,v 1.1 2024/03/02 11:11:11 tb Exp $ */ 1/* $OpenBSD: stack_local.h,v 1.2 2025/12/21 07:35:11 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 *
@@ -61,7 +61,7 @@
61 61
62struct stack_st { 62struct stack_st {
63 int num; 63 int num;
64 char **data; 64 void **data;
65 int sorted; 65 int sorted;
66 66
67 int num_alloc; 67 int num_alloc;