diff options
Diffstat (limited to 'src/lib/libcrypto/stack/stack.c')
-rw-r--r-- | src/lib/libcrypto/stack/stack.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/lib/libcrypto/stack/stack.c b/src/lib/libcrypto/stack/stack.c index b76a0d7271..c99941aa46 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.20 2018/04/01 00:36:28 schwarze Exp $ */ | 1 | /* $OpenBSD: stack.c,v 1.21 2022/11/11 19:18:55 beck 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 | * |
@@ -79,6 +79,7 @@ int | |||
79 | 79 | ||
80 | return old; | 80 | return old; |
81 | } | 81 | } |
82 | LCRYPTO_ALIAS(sk_set_cmp_func) | ||
82 | 83 | ||
83 | _STACK * | 84 | _STACK * |
84 | sk_dup(_STACK *sk) | 85 | sk_dup(_STACK *sk) |
@@ -105,12 +106,14 @@ err: | |||
105 | sk_free(ret); | 106 | sk_free(ret); |
106 | return (NULL); | 107 | return (NULL); |
107 | } | 108 | } |
109 | LCRYPTO_ALIAS(sk_dup) | ||
108 | 110 | ||
109 | _STACK * | 111 | _STACK * |
110 | sk_new_null(void) | 112 | sk_new_null(void) |
111 | { | 113 | { |
112 | return sk_new((int (*)(const void *, const void *))0); | 114 | return sk_new((int (*)(const void *, const void *))0); |
113 | } | 115 | } |
116 | LCRYPTO_ALIAS(sk_new_null) | ||
114 | 117 | ||
115 | _STACK * | 118 | _STACK * |
116 | sk_new(int (*c)(const void *, const void *)) | 119 | sk_new(int (*c)(const void *, const void *)) |
@@ -134,6 +137,7 @@ err: | |||
134 | free(ret); | 137 | free(ret); |
135 | return (NULL); | 138 | return (NULL); |
136 | } | 139 | } |
140 | LCRYPTO_ALIAS(sk_new) | ||
137 | 141 | ||
138 | int | 142 | int |
139 | sk_insert(_STACK *st, void *data, int loc) | 143 | sk_insert(_STACK *st, void *data, int loc) |
@@ -160,6 +164,7 @@ sk_insert(_STACK *st, void *data, int loc) | |||
160 | st->sorted = 0; | 164 | st->sorted = 0; |
161 | return (st->num); | 165 | return (st->num); |
162 | } | 166 | } |
167 | LCRYPTO_ALIAS(sk_insert) | ||
163 | 168 | ||
164 | void * | 169 | void * |
165 | sk_delete_ptr(_STACK *st, void *p) | 170 | sk_delete_ptr(_STACK *st, void *p) |
@@ -171,6 +176,7 @@ sk_delete_ptr(_STACK *st, void *p) | |||
171 | return (sk_delete(st, i)); | 176 | return (sk_delete(st, i)); |
172 | return (NULL); | 177 | return (NULL); |
173 | } | 178 | } |
179 | LCRYPTO_ALIAS(sk_delete_ptr) | ||
174 | 180 | ||
175 | void * | 181 | void * |
176 | sk_delete(_STACK *st, int loc) | 182 | sk_delete(_STACK *st, int loc) |
@@ -188,6 +194,7 @@ sk_delete(_STACK *st, int loc) | |||
188 | st->num--; | 194 | st->num--; |
189 | return (ret); | 195 | return (ret); |
190 | } | 196 | } |
197 | LCRYPTO_ALIAS(sk_delete) | ||
191 | 198 | ||
192 | static int | 199 | static int |
193 | internal_find(_STACK *st, void *data, int ret_val_options) | 200 | internal_find(_STACK *st, void *data, int ret_val_options) |
@@ -219,24 +226,28 @@ sk_find(_STACK *st, void *data) | |||
219 | { | 226 | { |
220 | return internal_find(st, data, OBJ_BSEARCH_FIRST_VALUE_ON_MATCH); | 227 | return internal_find(st, data, OBJ_BSEARCH_FIRST_VALUE_ON_MATCH); |
221 | } | 228 | } |
229 | LCRYPTO_ALIAS(sk_find) | ||
222 | 230 | ||
223 | int | 231 | int |
224 | sk_find_ex(_STACK *st, void *data) | 232 | sk_find_ex(_STACK *st, void *data) |
225 | { | 233 | { |
226 | return internal_find(st, data, OBJ_BSEARCH_VALUE_ON_NOMATCH); | 234 | return internal_find(st, data, OBJ_BSEARCH_VALUE_ON_NOMATCH); |
227 | } | 235 | } |
236 | LCRYPTO_ALIAS(sk_find_ex) | ||
228 | 237 | ||
229 | int | 238 | int |
230 | sk_push(_STACK *st, void *data) | 239 | sk_push(_STACK *st, void *data) |
231 | { | 240 | { |
232 | return (sk_insert(st, data, st->num)); | 241 | return (sk_insert(st, data, st->num)); |
233 | } | 242 | } |
243 | LCRYPTO_ALIAS(sk_push) | ||
234 | 244 | ||
235 | int | 245 | int |
236 | sk_unshift(_STACK *st, void *data) | 246 | sk_unshift(_STACK *st, void *data) |
237 | { | 247 | { |
238 | return (sk_insert(st, data, 0)); | 248 | return (sk_insert(st, data, 0)); |
239 | } | 249 | } |
250 | LCRYPTO_ALIAS(sk_unshift) | ||
240 | 251 | ||
241 | void * | 252 | void * |
242 | sk_shift(_STACK *st) | 253 | sk_shift(_STACK *st) |
@@ -247,6 +258,7 @@ sk_shift(_STACK *st) | |||
247 | return (NULL); | 258 | return (NULL); |
248 | return (sk_delete(st, 0)); | 259 | return (sk_delete(st, 0)); |
249 | } | 260 | } |
261 | LCRYPTO_ALIAS(sk_shift) | ||
250 | 262 | ||
251 | void * | 263 | void * |
252 | sk_pop(_STACK *st) | 264 | sk_pop(_STACK *st) |
@@ -257,6 +269,7 @@ sk_pop(_STACK *st) | |||
257 | return (NULL); | 269 | return (NULL); |
258 | return (sk_delete(st, st->num - 1)); | 270 | return (sk_delete(st, st->num - 1)); |
259 | } | 271 | } |
272 | LCRYPTO_ALIAS(sk_pop) | ||
260 | 273 | ||
261 | void | 274 | void |
262 | sk_zero(_STACK *st) | 275 | sk_zero(_STACK *st) |
@@ -268,6 +281,7 @@ sk_zero(_STACK *st) | |||
268 | memset(st->data, 0, sizeof(st->data)*st->num); | 281 | memset(st->data, 0, sizeof(st->data)*st->num); |
269 | st->num = 0; | 282 | st->num = 0; |
270 | } | 283 | } |
284 | LCRYPTO_ALIAS(sk_zero) | ||
271 | 285 | ||
272 | void | 286 | void |
273 | sk_pop_free(_STACK *st, void (*func)(void *)) | 287 | sk_pop_free(_STACK *st, void (*func)(void *)) |
@@ -281,6 +295,7 @@ sk_pop_free(_STACK *st, void (*func)(void *)) | |||
281 | func(st->data[i]); | 295 | func(st->data[i]); |
282 | sk_free(st); | 296 | sk_free(st); |
283 | } | 297 | } |
298 | LCRYPTO_ALIAS(sk_pop_free) | ||
284 | 299 | ||
285 | void | 300 | void |
286 | sk_free(_STACK *st) | 301 | sk_free(_STACK *st) |
@@ -290,6 +305,7 @@ sk_free(_STACK *st) | |||
290 | free(st->data); | 305 | free(st->data); |
291 | free(st); | 306 | free(st); |
292 | } | 307 | } |
308 | LCRYPTO_ALIAS(sk_free) | ||
293 | 309 | ||
294 | int | 310 | int |
295 | sk_num(const _STACK *st) | 311 | sk_num(const _STACK *st) |
@@ -298,6 +314,7 @@ sk_num(const _STACK *st) | |||
298 | return -1; | 314 | return -1; |
299 | return st->num; | 315 | return st->num; |
300 | } | 316 | } |
317 | LCRYPTO_ALIAS(sk_num) | ||
301 | 318 | ||
302 | void * | 319 | void * |
303 | sk_value(const _STACK *st, int i) | 320 | sk_value(const _STACK *st, int i) |
@@ -306,6 +323,7 @@ sk_value(const _STACK *st, int i) | |||
306 | return NULL; | 323 | return NULL; |
307 | return st->data[i]; | 324 | return st->data[i]; |
308 | } | 325 | } |
326 | LCRYPTO_ALIAS(sk_value) | ||
309 | 327 | ||
310 | void * | 328 | void * |
311 | sk_set(_STACK *st, int i, void *value) | 329 | sk_set(_STACK *st, int i, void *value) |
@@ -315,6 +333,7 @@ sk_set(_STACK *st, int i, void *value) | |||
315 | st->sorted = 0; | 333 | st->sorted = 0; |
316 | return (st->data[i] = value); | 334 | return (st->data[i] = value); |
317 | } | 335 | } |
336 | LCRYPTO_ALIAS(sk_set) | ||
318 | 337 | ||
319 | void | 338 | void |
320 | sk_sort(_STACK *st) | 339 | sk_sort(_STACK *st) |
@@ -332,6 +351,7 @@ sk_sort(_STACK *st) | |||
332 | st->sorted = 1; | 351 | st->sorted = 1; |
333 | } | 352 | } |
334 | } | 353 | } |
354 | LCRYPTO_ALIAS(sk_sort) | ||
335 | 355 | ||
336 | int | 356 | int |
337 | sk_is_sorted(const _STACK *st) | 357 | sk_is_sorted(const _STACK *st) |
@@ -340,3 +360,4 @@ sk_is_sorted(const _STACK *st) | |||
340 | return 1; | 360 | return 1; |
341 | return st->sorted; | 361 | return st->sorted; |
342 | } | 362 | } |
363 | LCRYPTO_ALIAS(sk_is_sorted) | ||