diff options
| author | beck <> | 2023-07-08 12:21:58 +0000 |
|---|---|---|
| committer | beck <> | 2023-07-08 12:21:58 +0000 |
| commit | 4fff81a3a2e2fb3d68e73e2fcc951cee3548c554 (patch) | |
| tree | 789e1276988198ecf8411c8f5bb376e2ea404f91 /src | |
| parent | de1ea0d71a59536dfa9a5b0b755c13d3d6eddbeb (diff) | |
| download | openbsd-4fff81a3a2e2fb3d68e73e2fcc951cee3548c554.tar.gz openbsd-4fff81a3a2e2fb3d68e73e2fcc951cee3548c554.tar.bz2 openbsd-4fff81a3a2e2fb3d68e73e2fcc951cee3548c554.zip | |
Hide symbols in bn
ok tb@
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/Symbols.namespace | 134 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_add.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_blind.c | 13 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_const.c | 18 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_convert.c | 16 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_ctx.c | 7 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_err.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_exp.c | 7 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_kron.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_lib.c | 40 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_mod.c | 13 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_mod_sqrt.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_mont.c | 10 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_mul.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_prime.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_rand.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_shift.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_sqr.c | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/bn_word.c | 7 | ||||
| -rw-r--r-- | src/lib/libcrypto/hidden/openssl/bn.h | 163 |
20 files changed, 449 insertions, 18 deletions
diff --git a/src/lib/libcrypto/Symbols.namespace b/src/lib/libcrypto/Symbols.namespace index 2c5ec993c2..66de59acdb 100644 --- a/src/lib/libcrypto/Symbols.namespace +++ b/src/lib/libcrypto/Symbols.namespace | |||
| @@ -2255,3 +2255,137 @@ _libre_TXT_DB_create_index | |||
| 2255 | _libre_TXT_DB_free | 2255 | _libre_TXT_DB_free |
| 2256 | _libre_TXT_DB_get_by_index | 2256 | _libre_TXT_DB_get_by_index |
| 2257 | _libre_TXT_DB_insert | 2257 | _libre_TXT_DB_insert |
| 2258 | _libre_BN_set_flags | ||
| 2259 | _libre_BN_get_flags | ||
| 2260 | _libre_BN_with_flags | ||
| 2261 | _libre_BN_GENCB_new | ||
| 2262 | _libre_BN_GENCB_free | ||
| 2263 | _libre_BN_GENCB_call | ||
| 2264 | _libre_BN_GENCB_set_old | ||
| 2265 | _libre_BN_GENCB_set | ||
| 2266 | _libre_BN_GENCB_get_arg | ||
| 2267 | _libre_BN_abs_is_word | ||
| 2268 | _libre_BN_is_zero | ||
| 2269 | _libre_BN_is_one | ||
| 2270 | _libre_BN_is_word | ||
| 2271 | _libre_BN_is_odd | ||
| 2272 | _libre_BN_zero | ||
| 2273 | _libre_BN_one | ||
| 2274 | _libre_BN_value_one | ||
| 2275 | _libre_BN_options | ||
| 2276 | _libre_BN_CTX_new | ||
| 2277 | _libre_BN_CTX_free | ||
| 2278 | _libre_BN_CTX_start | ||
| 2279 | _libre_BN_CTX_get | ||
| 2280 | _libre_BN_CTX_end | ||
| 2281 | _libre_BN_rand | ||
| 2282 | _libre_BN_pseudo_rand | ||
| 2283 | _libre_BN_rand_range | ||
| 2284 | _libre_BN_pseudo_rand_range | ||
| 2285 | _libre_BN_num_bits | ||
| 2286 | _libre_BN_num_bits_word | ||
| 2287 | _libre_BN_new | ||
| 2288 | _libre_BN_clear_free | ||
| 2289 | _libre_BN_copy | ||
| 2290 | _libre_BN_swap | ||
| 2291 | _libre_BN_bin2bn | ||
| 2292 | _libre_BN_bn2bin | ||
| 2293 | _libre_BN_bn2binpad | ||
| 2294 | _libre_BN_lebin2bn | ||
| 2295 | _libre_BN_bn2lebinpad | ||
| 2296 | _libre_BN_mpi2bn | ||
| 2297 | _libre_BN_bn2mpi | ||
| 2298 | _libre_BN_sub | ||
| 2299 | _libre_BN_usub | ||
| 2300 | _libre_BN_uadd | ||
| 2301 | _libre_BN_add | ||
| 2302 | _libre_BN_mul | ||
| 2303 | _libre_BN_sqr | ||
| 2304 | _libre_BN_set_negative | ||
| 2305 | _libre_BN_is_negative | ||
| 2306 | _libre_BN_nnmod | ||
| 2307 | _libre_BN_mod_add | ||
| 2308 | _libre_BN_mod_add_quick | ||
| 2309 | _libre_BN_mod_sub | ||
| 2310 | _libre_BN_mod_sub_quick | ||
| 2311 | _libre_BN_mod_mul | ||
| 2312 | _libre_BN_mod_sqr | ||
| 2313 | _libre_BN_mod_lshift1 | ||
| 2314 | _libre_BN_mod_lshift1_quick | ||
| 2315 | _libre_BN_mod_lshift | ||
| 2316 | _libre_BN_mod_lshift_quick | ||
| 2317 | _libre_BN_mod_word | ||
| 2318 | _libre_BN_div_word | ||
| 2319 | _libre_BN_mul_word | ||
| 2320 | _libre_BN_add_word | ||
| 2321 | _libre_BN_sub_word | ||
| 2322 | _libre_BN_set_word | ||
| 2323 | _libre_BN_get_word | ||
| 2324 | _libre_BN_cmp | ||
| 2325 | _libre_BN_free | ||
| 2326 | _libre_BN_is_bit_set | ||
| 2327 | _libre_BN_lshift | ||
| 2328 | _libre_BN_lshift1 | ||
| 2329 | _libre_BN_exp | ||
| 2330 | _libre_BN_mod_exp_mont_consttime | ||
| 2331 | _libre_BN_mod_exp_mont_word | ||
| 2332 | _libre_BN_mod_exp2_mont | ||
| 2333 | _libre_BN_mod_exp_simple | ||
| 2334 | _libre_BN_mask_bits | ||
| 2335 | _libre_BN_print_fp | ||
| 2336 | _libre_BN_print | ||
| 2337 | _libre_BN_rshift | ||
| 2338 | _libre_BN_rshift1 | ||
| 2339 | _libre_BN_clear | ||
| 2340 | _libre_BN_dup | ||
| 2341 | _libre_BN_ucmp | ||
| 2342 | _libre_BN_set_bit | ||
| 2343 | _libre_BN_clear_bit | ||
| 2344 | _libre_BN_bn2hex | ||
| 2345 | _libre_BN_bn2dec | ||
| 2346 | _libre_BN_hex2bn | ||
| 2347 | _libre_BN_dec2bn | ||
| 2348 | _libre_BN_asc2bn | ||
| 2349 | _libre_BN_kronecker | ||
| 2350 | _libre_BN_mod_sqrt | ||
| 2351 | _libre_BN_consttime_swap | ||
| 2352 | _libre_BN_security_bits | ||
| 2353 | _libre_BN_generate_prime_ex | ||
| 2354 | _libre_BN_is_prime_ex | ||
| 2355 | _libre_BN_is_prime_fasttest_ex | ||
| 2356 | _libre_BN_MONT_CTX_new | ||
| 2357 | _libre_BN_mod_mul_montgomery | ||
| 2358 | _libre_BN_to_montgomery | ||
| 2359 | _libre_BN_from_montgomery | ||
| 2360 | _libre_BN_MONT_CTX_free | ||
| 2361 | _libre_BN_MONT_CTX_set | ||
| 2362 | _libre_BN_MONT_CTX_copy | ||
| 2363 | _libre_BN_MONT_CTX_set_locked | ||
| 2364 | _libre_BN_BLINDING_new | ||
| 2365 | _libre_BN_BLINDING_free | ||
| 2366 | _libre_BN_BLINDING_update | ||
| 2367 | _libre_BN_BLINDING_convert | ||
| 2368 | _libre_BN_BLINDING_invert | ||
| 2369 | _libre_BN_BLINDING_convert_ex | ||
| 2370 | _libre_BN_BLINDING_invert_ex | ||
| 2371 | _libre_BN_BLINDING_thread_id | ||
| 2372 | _libre_BN_BLINDING_get_flags | ||
| 2373 | _libre_BN_BLINDING_set_flags | ||
| 2374 | _libre_BN_BLINDING_create_param | ||
| 2375 | _libre_get_rfc2409_prime_768 | ||
| 2376 | _libre_get_rfc2409_prime_1024 | ||
| 2377 | _libre_BN_get_rfc2409_prime_768 | ||
| 2378 | _libre_BN_get_rfc2409_prime_1024 | ||
| 2379 | _libre_get_rfc3526_prime_1536 | ||
| 2380 | _libre_get_rfc3526_prime_2048 | ||
| 2381 | _libre_get_rfc3526_prime_3072 | ||
| 2382 | _libre_get_rfc3526_prime_4096 | ||
| 2383 | _libre_get_rfc3526_prime_6144 | ||
| 2384 | _libre_get_rfc3526_prime_8192 | ||
| 2385 | _libre_BN_get_rfc3526_prime_1536 | ||
| 2386 | _libre_BN_get_rfc3526_prime_2048 | ||
| 2387 | _libre_BN_get_rfc3526_prime_3072 | ||
| 2388 | _libre_BN_get_rfc3526_prime_4096 | ||
| 2389 | _libre_BN_get_rfc3526_prime_6144 | ||
| 2390 | _libre_BN_get_rfc3526_prime_8192 | ||
| 2391 | _libre_ERR_load_BN_strings | ||
diff --git a/src/lib/libcrypto/bn/bn_add.c b/src/lib/libcrypto/bn/bn_add.c index 36f160ab5f..86768a312a 100644 --- a/src/lib/libcrypto/bn/bn_add.c +++ b/src/lib/libcrypto/bn/bn_add.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_add.c,v 1.25 2023/06/12 16:17:24 jsing Exp $ */ | 1 | /* $OpenBSD: bn_add.c,v 1.26 2023/07/08 12:21:58 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 | * |
| @@ -248,6 +248,7 @@ BN_uadd(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | |||
| 248 | 248 | ||
| 249 | return 1; | 249 | return 1; |
| 250 | } | 250 | } |
| 251 | LCRYPTO_ALIAS(BN_uadd); | ||
| 251 | 252 | ||
| 252 | int | 253 | int |
| 253 | BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | 254 | BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) |
| @@ -277,6 +278,7 @@ BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | |||
| 277 | 278 | ||
| 278 | return 1; | 279 | return 1; |
| 279 | } | 280 | } |
| 281 | LCRYPTO_ALIAS(BN_usub); | ||
| 280 | 282 | ||
| 281 | int | 283 | int |
| 282 | BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | 284 | BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) |
| @@ -306,6 +308,7 @@ BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | |||
| 306 | 308 | ||
| 307 | return ret; | 309 | return ret; |
| 308 | } | 310 | } |
| 311 | LCRYPTO_ALIAS(BN_add); | ||
| 309 | 312 | ||
| 310 | int | 313 | int |
| 311 | BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | 314 | BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) |
| @@ -335,3 +338,4 @@ BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) | |||
| 335 | 338 | ||
| 336 | return ret; | 339 | return ret; |
| 337 | } | 340 | } |
| 341 | LCRYPTO_ALIAS(BN_sub); | ||
diff --git a/src/lib/libcrypto/bn/bn_blind.c b/src/lib/libcrypto/bn/bn_blind.c index 77ba691b6d..07cd359e7e 100644 --- a/src/lib/libcrypto/bn/bn_blind.c +++ b/src/lib/libcrypto/bn/bn_blind.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_blind.c,v 1.22 2023/04/25 19:57:59 tb Exp $ */ | 1 | /* $OpenBSD: bn_blind.c,v 1.23 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* ==================================================================== | 2 | /* ==================================================================== |
| 3 | * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. |
| 4 | * | 4 | * |
| @@ -169,6 +169,7 @@ err: | |||
| 169 | BN_BLINDING_free(ret); | 169 | BN_BLINDING_free(ret); |
| 170 | return (NULL); | 170 | return (NULL); |
| 171 | } | 171 | } |
| 172 | LCRYPTO_ALIAS(BN_BLINDING_new); | ||
| 172 | 173 | ||
| 173 | void | 174 | void |
| 174 | BN_BLINDING_free(BN_BLINDING *r) | 175 | BN_BLINDING_free(BN_BLINDING *r) |
| @@ -182,6 +183,7 @@ BN_BLINDING_free(BN_BLINDING *r) | |||
| 182 | BN_free(r->mod); | 183 | BN_free(r->mod); |
| 183 | free(r); | 184 | free(r); |
| 184 | } | 185 | } |
| 186 | LCRYPTO_ALIAS(BN_BLINDING_free); | ||
| 185 | 187 | ||
| 186 | int | 188 | int |
| 187 | BN_BLINDING_update(BN_BLINDING *b, BN_CTX *ctx) | 189 | BN_BLINDING_update(BN_BLINDING *b, BN_CTX *ctx) |
| @@ -215,12 +217,14 @@ err: | |||
| 215 | b->counter = 0; | 217 | b->counter = 0; |
| 216 | return (ret); | 218 | return (ret); |
| 217 | } | 219 | } |
| 220 | LCRYPTO_ALIAS(BN_BLINDING_update); | ||
| 218 | 221 | ||
| 219 | int | 222 | int |
| 220 | BN_BLINDING_convert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx) | 223 | BN_BLINDING_convert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx) |
| 221 | { | 224 | { |
| 222 | return BN_BLINDING_convert_ex(n, NULL, b, ctx); | 225 | return BN_BLINDING_convert_ex(n, NULL, b, ctx); |
| 223 | } | 226 | } |
| 227 | LCRYPTO_ALIAS(BN_BLINDING_convert); | ||
| 224 | 228 | ||
| 225 | int | 229 | int |
| 226 | BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) | 230 | BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) |
| @@ -249,12 +253,14 @@ BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) | |||
| 249 | 253 | ||
| 250 | return ret; | 254 | return ret; |
| 251 | } | 255 | } |
| 256 | LCRYPTO_ALIAS(BN_BLINDING_convert_ex); | ||
| 252 | 257 | ||
| 253 | int | 258 | int |
| 254 | BN_BLINDING_invert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx) | 259 | BN_BLINDING_invert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx) |
| 255 | { | 260 | { |
| 256 | return BN_BLINDING_invert_ex(n, NULL, b, ctx); | 261 | return BN_BLINDING_invert_ex(n, NULL, b, ctx); |
| 257 | } | 262 | } |
| 263 | LCRYPTO_ALIAS(BN_BLINDING_invert); | ||
| 258 | 264 | ||
| 259 | int | 265 | int |
| 260 | BN_BLINDING_invert_ex(BIGNUM *n, const BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) | 266 | BN_BLINDING_invert_ex(BIGNUM *n, const BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) |
| @@ -274,24 +280,28 @@ BN_BLINDING_invert_ex(BIGNUM *n, const BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) | |||
| 274 | 280 | ||
| 275 | return (ret); | 281 | return (ret); |
| 276 | } | 282 | } |
| 283 | LCRYPTO_ALIAS(BN_BLINDING_invert_ex); | ||
| 277 | 284 | ||
| 278 | CRYPTO_THREADID * | 285 | CRYPTO_THREADID * |
| 279 | BN_BLINDING_thread_id(BN_BLINDING *b) | 286 | BN_BLINDING_thread_id(BN_BLINDING *b) |
| 280 | { | 287 | { |
| 281 | return &b->tid; | 288 | return &b->tid; |
| 282 | } | 289 | } |
| 290 | LCRYPTO_ALIAS(BN_BLINDING_thread_id); | ||
| 283 | 291 | ||
| 284 | unsigned long | 292 | unsigned long |
| 285 | BN_BLINDING_get_flags(const BN_BLINDING *b) | 293 | BN_BLINDING_get_flags(const BN_BLINDING *b) |
| 286 | { | 294 | { |
| 287 | return b->flags; | 295 | return b->flags; |
| 288 | } | 296 | } |
| 297 | LCRYPTO_ALIAS(BN_BLINDING_get_flags); | ||
| 289 | 298 | ||
| 290 | void | 299 | void |
| 291 | BN_BLINDING_set_flags(BN_BLINDING *b, unsigned long flags) | 300 | BN_BLINDING_set_flags(BN_BLINDING *b, unsigned long flags) |
| 292 | { | 301 | { |
| 293 | b->flags = flags; | 302 | b->flags = flags; |
| 294 | } | 303 | } |
| 304 | LCRYPTO_ALIAS(BN_BLINDING_set_flags); | ||
| 295 | 305 | ||
| 296 | BN_BLINDING * | 306 | BN_BLINDING * |
| 297 | BN_BLINDING_create_param(BN_BLINDING *b, const BIGNUM *e, BIGNUM *m, | 307 | BN_BLINDING_create_param(BN_BLINDING *b, const BIGNUM *e, BIGNUM *m, |
| @@ -363,3 +373,4 @@ err: | |||
| 363 | 373 | ||
| 364 | return ret; | 374 | return ret; |
| 365 | } | 375 | } |
| 376 | LCRYPTO_ALIAS(BN_BLINDING_create_param); | ||
diff --git a/src/lib/libcrypto/bn/bn_const.c b/src/lib/libcrypto/bn/bn_const.c index 0ceff9160d..e0009b0be4 100644 --- a/src/lib/libcrypto/bn/bn_const.c +++ b/src/lib/libcrypto/bn/bn_const.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_const.c,v 1.5 2018/02/20 17:02:30 jsing Exp $ */ | 1 | /* $OpenBSD: bn_const.c,v 1.6 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* Insert boilerplate */ | 2 | /* Insert boilerplate */ |
| 3 | 3 | ||
| 4 | #include <openssl/bn.h> | 4 | #include <openssl/bn.h> |
| @@ -26,12 +26,14 @@ get_rfc2409_prime_768(BIGNUM *bn) | |||
| 26 | }; | 26 | }; |
| 27 | return BN_bin2bn(RFC2409_PRIME_768, sizeof(RFC2409_PRIME_768), bn); | 27 | return BN_bin2bn(RFC2409_PRIME_768, sizeof(RFC2409_PRIME_768), bn); |
| 28 | } | 28 | } |
| 29 | LCRYPTO_ALIAS(get_rfc2409_prime_768); | ||
| 29 | 30 | ||
| 30 | BIGNUM * | 31 | BIGNUM * |
| 31 | BN_get_rfc2409_prime_768(BIGNUM *bn) | 32 | BN_get_rfc2409_prime_768(BIGNUM *bn) |
| 32 | { | 33 | { |
| 33 | return get_rfc2409_prime_768(bn); | 34 | return get_rfc2409_prime_768(bn); |
| 34 | } | 35 | } |
| 36 | LCRYPTO_ALIAS(BN_get_rfc2409_prime_768); | ||
| 35 | 37 | ||
| 36 | /* "Second Oakley Default Group" from RFC2409, section 6.2. | 38 | /* "Second Oakley Default Group" from RFC2409, section 6.2. |
| 37 | * | 39 | * |
| @@ -59,12 +61,14 @@ get_rfc2409_prime_1024(BIGNUM *bn) | |||
| 59 | }; | 61 | }; |
| 60 | return BN_bin2bn(RFC2409_PRIME_1024, sizeof(RFC2409_PRIME_1024), bn); | 62 | return BN_bin2bn(RFC2409_PRIME_1024, sizeof(RFC2409_PRIME_1024), bn); |
| 61 | } | 63 | } |
| 64 | LCRYPTO_ALIAS(get_rfc2409_prime_1024); | ||
| 62 | 65 | ||
| 63 | BIGNUM * | 66 | BIGNUM * |
| 64 | BN_get_rfc2409_prime_1024(BIGNUM *bn) | 67 | BN_get_rfc2409_prime_1024(BIGNUM *bn) |
| 65 | { | 68 | { |
| 66 | return get_rfc2409_prime_1024(bn); | 69 | return get_rfc2409_prime_1024(bn); |
| 67 | } | 70 | } |
| 71 | LCRYPTO_ALIAS(BN_get_rfc2409_prime_1024); | ||
| 68 | 72 | ||
| 69 | /* "1536-bit MODP Group" from RFC3526, Section 2. | 73 | /* "1536-bit MODP Group" from RFC3526, Section 2. |
| 70 | * | 74 | * |
| @@ -97,12 +101,14 @@ get_rfc3526_prime_1536(BIGNUM *bn) | |||
| 97 | }; | 101 | }; |
| 98 | return BN_bin2bn(RFC3526_PRIME_1536, sizeof(RFC3526_PRIME_1536), bn); | 102 | return BN_bin2bn(RFC3526_PRIME_1536, sizeof(RFC3526_PRIME_1536), bn); |
| 99 | } | 103 | } |
| 104 | LCRYPTO_ALIAS(get_rfc3526_prime_1536); | ||
| 100 | 105 | ||
| 101 | BIGNUM * | 106 | BIGNUM * |
| 102 | BN_get_rfc3526_prime_1536(BIGNUM *bn) | 107 | BN_get_rfc3526_prime_1536(BIGNUM *bn) |
| 103 | { | 108 | { |
| 104 | return get_rfc3526_prime_1536(bn); | 109 | return get_rfc3526_prime_1536(bn); |
| 105 | } | 110 | } |
| 111 | LCRYPTO_ALIAS(BN_get_rfc3526_prime_1536); | ||
| 106 | 112 | ||
| 107 | /* "2048-bit MODP Group" from RFC3526, Section 3. | 113 | /* "2048-bit MODP Group" from RFC3526, Section 3. |
| 108 | * | 114 | * |
| @@ -140,12 +146,14 @@ get_rfc3526_prime_2048(BIGNUM *bn) | |||
| 140 | }; | 146 | }; |
| 141 | return BN_bin2bn(RFC3526_PRIME_2048, sizeof(RFC3526_PRIME_2048), bn); | 147 | return BN_bin2bn(RFC3526_PRIME_2048, sizeof(RFC3526_PRIME_2048), bn); |
| 142 | } | 148 | } |
| 149 | LCRYPTO_ALIAS(get_rfc3526_prime_2048); | ||
| 143 | 150 | ||
| 144 | BIGNUM * | 151 | BIGNUM * |
| 145 | BN_get_rfc3526_prime_2048(BIGNUM *bn) | 152 | BN_get_rfc3526_prime_2048(BIGNUM *bn) |
| 146 | { | 153 | { |
| 147 | return get_rfc3526_prime_2048(bn); | 154 | return get_rfc3526_prime_2048(bn); |
| 148 | } | 155 | } |
| 156 | LCRYPTO_ALIAS(BN_get_rfc3526_prime_2048); | ||
| 149 | 157 | ||
| 150 | /* "3072-bit MODP Group" from RFC3526, Section 4. | 158 | /* "3072-bit MODP Group" from RFC3526, Section 4. |
| 151 | * | 159 | * |
| @@ -193,12 +201,14 @@ get_rfc3526_prime_3072(BIGNUM *bn) | |||
| 193 | }; | 201 | }; |
| 194 | return BN_bin2bn(RFC3526_PRIME_3072, sizeof(RFC3526_PRIME_3072), bn); | 202 | return BN_bin2bn(RFC3526_PRIME_3072, sizeof(RFC3526_PRIME_3072), bn); |
| 195 | } | 203 | } |
| 204 | LCRYPTO_ALIAS(get_rfc3526_prime_3072); | ||
| 196 | 205 | ||
| 197 | BIGNUM * | 206 | BIGNUM * |
| 198 | BN_get_rfc3526_prime_3072(BIGNUM *bn) | 207 | BN_get_rfc3526_prime_3072(BIGNUM *bn) |
| 199 | { | 208 | { |
| 200 | return get_rfc3526_prime_3072(bn); | 209 | return get_rfc3526_prime_3072(bn); |
| 201 | } | 210 | } |
| 211 | LCRYPTO_ALIAS(BN_get_rfc3526_prime_3072); | ||
| 202 | 212 | ||
| 203 | /* "4096-bit MODP Group" from RFC3526, Section 5. | 213 | /* "4096-bit MODP Group" from RFC3526, Section 5. |
| 204 | * | 214 | * |
| @@ -257,12 +267,14 @@ get_rfc3526_prime_4096(BIGNUM *bn) | |||
| 257 | }; | 267 | }; |
| 258 | return BN_bin2bn(RFC3526_PRIME_4096, sizeof(RFC3526_PRIME_4096), bn); | 268 | return BN_bin2bn(RFC3526_PRIME_4096, sizeof(RFC3526_PRIME_4096), bn); |
| 259 | } | 269 | } |
| 270 | LCRYPTO_ALIAS(get_rfc3526_prime_4096); | ||
| 260 | 271 | ||
| 261 | BIGNUM * | 272 | BIGNUM * |
| 262 | BN_get_rfc3526_prime_4096(BIGNUM *bn) | 273 | BN_get_rfc3526_prime_4096(BIGNUM *bn) |
| 263 | { | 274 | { |
| 264 | return get_rfc3526_prime_4096(bn); | 275 | return get_rfc3526_prime_4096(bn); |
| 265 | } | 276 | } |
| 277 | LCRYPTO_ALIAS(BN_get_rfc3526_prime_4096); | ||
| 266 | 278 | ||
| 267 | /* "6144-bit MODP Group" from RFC3526, Section 6. | 279 | /* "6144-bit MODP Group" from RFC3526, Section 6. |
| 268 | * | 280 | * |
| @@ -342,12 +354,14 @@ get_rfc3526_prime_6144(BIGNUM *bn) | |||
| 342 | }; | 354 | }; |
| 343 | return BN_bin2bn(RFC3526_PRIME_6144, sizeof(RFC3526_PRIME_6144), bn); | 355 | return BN_bin2bn(RFC3526_PRIME_6144, sizeof(RFC3526_PRIME_6144), bn); |
| 344 | } | 356 | } |
| 357 | LCRYPTO_ALIAS(get_rfc3526_prime_6144); | ||
| 345 | 358 | ||
| 346 | BIGNUM * | 359 | BIGNUM * |
| 347 | BN_get_rfc3526_prime_6144(BIGNUM *bn) | 360 | BN_get_rfc3526_prime_6144(BIGNUM *bn) |
| 348 | { | 361 | { |
| 349 | return get_rfc3526_prime_6144(bn); | 362 | return get_rfc3526_prime_6144(bn); |
| 350 | } | 363 | } |
| 364 | LCRYPTO_ALIAS(BN_get_rfc3526_prime_6144); | ||
| 351 | 365 | ||
| 352 | /* "8192-bit MODP Group" from RFC3526, Section 7. | 366 | /* "8192-bit MODP Group" from RFC3526, Section 7. |
| 353 | * | 367 | * |
| @@ -449,9 +463,11 @@ get_rfc3526_prime_8192(BIGNUM *bn) | |||
| 449 | }; | 463 | }; |
| 450 | return BN_bin2bn(RFC3526_PRIME_8192, sizeof(RFC3526_PRIME_8192), bn); | 464 | return BN_bin2bn(RFC3526_PRIME_8192, sizeof(RFC3526_PRIME_8192), bn); |
| 451 | } | 465 | } |
| 466 | LCRYPTO_ALIAS(get_rfc3526_prime_8192); | ||
| 452 | 467 | ||
| 453 | BIGNUM * | 468 | BIGNUM * |
| 454 | BN_get_rfc3526_prime_8192(BIGNUM *bn) | 469 | BN_get_rfc3526_prime_8192(BIGNUM *bn) |
| 455 | { | 470 | { |
| 456 | return get_rfc3526_prime_8192(bn); | 471 | return get_rfc3526_prime_8192(bn); |
| 457 | } | 472 | } |
| 473 | LCRYPTO_ALIAS(BN_get_rfc3526_prime_8192); | ||
diff --git a/src/lib/libcrypto/bn/bn_convert.c b/src/lib/libcrypto/bn/bn_convert.c index 4736099cdc..cb0a23e010 100644 --- a/src/lib/libcrypto/bn/bn_convert.c +++ b/src/lib/libcrypto/bn/bn_convert.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_convert.c,v 1.12 2023/06/23 10:48:40 tb Exp $ */ | 1 | /* $OpenBSD: bn_convert.c,v 1.13 2023/07/08 12:21:58 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 | * |
| @@ -142,6 +142,7 @@ BN_bn2bin(const BIGNUM *a, unsigned char *to) | |||
| 142 | { | 142 | { |
| 143 | return bn2binpad(a, to, -1, big); | 143 | return bn2binpad(a, to, -1, big); |
| 144 | } | 144 | } |
| 145 | LCRYPTO_ALIAS(BN_bn2bin); | ||
| 145 | 146 | ||
| 146 | int | 147 | int |
| 147 | BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) | 148 | BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) |
| @@ -150,6 +151,7 @@ BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) | |||
| 150 | return -1; | 151 | return -1; |
| 151 | return bn2binpad(a, to, tolen, big); | 152 | return bn2binpad(a, to, tolen, big); |
| 152 | } | 153 | } |
| 154 | LCRYPTO_ALIAS(BN_bn2binpad); | ||
| 153 | 155 | ||
| 154 | BIGNUM * | 156 | BIGNUM * |
| 155 | BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret) | 157 | BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret) |
| @@ -192,6 +194,7 @@ BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret) | |||
| 192 | bn_correct_top(ret); | 194 | bn_correct_top(ret); |
| 193 | return (ret); | 195 | return (ret); |
| 194 | } | 196 | } |
| 197 | LCRYPTO_ALIAS(BN_bin2bn); | ||
| 195 | 198 | ||
| 196 | int | 199 | int |
| 197 | BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen) | 200 | BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen) |
| @@ -201,6 +204,7 @@ BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen) | |||
| 201 | 204 | ||
| 202 | return bn2binpad(a, to, tolen, little); | 205 | return bn2binpad(a, to, tolen, little); |
| 203 | } | 206 | } |
| 207 | LCRYPTO_ALIAS(BN_bn2lebinpad); | ||
| 204 | 208 | ||
| 205 | BIGNUM * | 209 | BIGNUM * |
| 206 | BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret) | 210 | BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret) |
| @@ -254,6 +258,7 @@ BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret) | |||
| 254 | 258 | ||
| 255 | return ret; | 259 | return ret; |
| 256 | } | 260 | } |
| 261 | LCRYPTO_ALIAS(BN_lebin2bn); | ||
| 257 | 262 | ||
| 258 | int | 263 | int |
| 259 | BN_asc2bn(BIGNUM **bnp, const char *s) | 264 | BN_asc2bn(BIGNUM **bnp, const char *s) |
| @@ -306,6 +311,7 @@ BN_asc2bn(BIGNUM **bnp, const char *s) | |||
| 306 | 311 | ||
| 307 | return 1; | 312 | return 1; |
| 308 | } | 313 | } |
| 314 | LCRYPTO_ALIAS(BN_asc2bn); | ||
| 309 | 315 | ||
| 310 | char * | 316 | char * |
| 311 | BN_bn2dec(const BIGNUM *bn) | 317 | BN_bn2dec(const BIGNUM *bn) |
| @@ -384,6 +390,7 @@ BN_bn2dec(const BIGNUM *bn) | |||
| 384 | 390 | ||
| 385 | return s; | 391 | return s; |
| 386 | } | 392 | } |
| 393 | LCRYPTO_ALIAS(BN_bn2dec); | ||
| 387 | 394 | ||
| 388 | static int | 395 | static int |
| 389 | bn_dec2bn_cbs(BIGNUM **bnp, CBS *cbs) | 396 | bn_dec2bn_cbs(BIGNUM **bnp, CBS *cbs) |
| @@ -488,6 +495,7 @@ BN_dec2bn(BIGNUM **bnp, const char *s) | |||
| 488 | 495 | ||
| 489 | return bn_dec2bn_cbs(bnp, &cbs); | 496 | return bn_dec2bn_cbs(bnp, &cbs); |
| 490 | } | 497 | } |
| 498 | LCRYPTO_ALIAS(BN_dec2bn); | ||
| 491 | 499 | ||
| 492 | char * | 500 | char * |
| 493 | BN_bn2hex(const BIGNUM *bn) | 501 | BN_bn2hex(const BIGNUM *bn) |
| @@ -533,6 +541,7 @@ BN_bn2hex(const BIGNUM *bn) | |||
| 533 | 541 | ||
| 534 | return s; | 542 | return s; |
| 535 | } | 543 | } |
| 544 | LCRYPTO_ALIAS(BN_bn2hex); | ||
| 536 | 545 | ||
| 537 | static int | 546 | static int |
| 538 | bn_hex2bn_cbs(BIGNUM **bnp, CBS *cbs) | 547 | bn_hex2bn_cbs(BIGNUM **bnp, CBS *cbs) |
| @@ -641,6 +650,7 @@ BN_hex2bn(BIGNUM **bnp, const char *s) | |||
| 641 | 650 | ||
| 642 | return bn_hex2bn_cbs(bnp, &cbs); | 651 | return bn_hex2bn_cbs(bnp, &cbs); |
| 643 | } | 652 | } |
| 653 | LCRYPTO_ALIAS(BN_hex2bn); | ||
| 644 | 654 | ||
| 645 | int | 655 | int |
| 646 | BN_bn2mpi(const BIGNUM *a, unsigned char *d) | 656 | BN_bn2mpi(const BIGNUM *a, unsigned char *d) |
| @@ -670,6 +680,7 @@ BN_bn2mpi(const BIGNUM *a, unsigned char *d) | |||
| 670 | d[4] |= 0x80; | 680 | d[4] |= 0x80; |
| 671 | return (num + 4 + ext); | 681 | return (num + 4 + ext); |
| 672 | } | 682 | } |
| 683 | LCRYPTO_ALIAS(BN_bn2mpi); | ||
| 673 | 684 | ||
| 674 | BIGNUM * | 685 | BIGNUM * |
| 675 | BN_mpi2bn(const unsigned char *d, int n, BIGNUM *ain) | 686 | BN_mpi2bn(const unsigned char *d, int n, BIGNUM *ain) |
| @@ -713,6 +724,7 @@ BN_mpi2bn(const unsigned char *d, int n, BIGNUM *ain) | |||
| 713 | } | 724 | } |
| 714 | return (a); | 725 | return (a); |
| 715 | } | 726 | } |
| 727 | LCRYPTO_ALIAS(BN_mpi2bn); | ||
| 716 | 728 | ||
| 717 | #ifndef OPENSSL_NO_BIO | 729 | #ifndef OPENSSL_NO_BIO |
| 718 | int | 730 | int |
| @@ -728,6 +740,7 @@ BN_print_fp(FILE *fp, const BIGNUM *a) | |||
| 728 | BIO_free(b); | 740 | BIO_free(b); |
| 729 | return (ret); | 741 | return (ret); |
| 730 | } | 742 | } |
| 743 | LCRYPTO_ALIAS(BN_print_fp); | ||
| 731 | 744 | ||
| 732 | int | 745 | int |
| 733 | BN_print(BIO *bp, const BIGNUM *a) | 746 | BN_print(BIO *bp, const BIGNUM *a) |
| @@ -755,4 +768,5 @@ BN_print(BIO *bp, const BIGNUM *a) | |||
| 755 | end: | 768 | end: |
| 756 | return (ret); | 769 | return (ret); |
| 757 | } | 770 | } |
| 771 | LCRYPTO_ALIAS(BN_print); | ||
| 758 | #endif | 772 | #endif |
diff --git a/src/lib/libcrypto/bn/bn_ctx.c b/src/lib/libcrypto/bn/bn_ctx.c index 357eda1783..129b9c9781 100644 --- a/src/lib/libcrypto/bn/bn_ctx.c +++ b/src/lib/libcrypto/bn/bn_ctx.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_ctx.c,v 1.21 2023/04/25 16:41:29 tb Exp $ */ | 1 | /* $OpenBSD: bn_ctx.c,v 1.22 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2023 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2023 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -70,6 +70,7 @@ BN_CTX_new(void) | |||
| 70 | { | 70 | { |
| 71 | return calloc(1, sizeof(struct bignum_ctx)); | 71 | return calloc(1, sizeof(struct bignum_ctx)); |
| 72 | } | 72 | } |
| 73 | LCRYPTO_ALIAS(BN_CTX_new); | ||
| 73 | 74 | ||
| 74 | void | 75 | void |
| 75 | BN_CTX_free(BN_CTX *bctx) | 76 | BN_CTX_free(BN_CTX *bctx) |
| @@ -89,6 +90,7 @@ BN_CTX_free(BN_CTX *bctx) | |||
| 89 | 90 | ||
| 90 | freezero(bctx, sizeof(*bctx)); | 91 | freezero(bctx, sizeof(*bctx)); |
| 91 | } | 92 | } |
| 93 | LCRYPTO_ALIAS(BN_CTX_free); | ||
| 92 | 94 | ||
| 93 | void | 95 | void |
| 94 | BN_CTX_start(BN_CTX *bctx) | 96 | BN_CTX_start(BN_CTX *bctx) |
| @@ -101,6 +103,7 @@ BN_CTX_start(BN_CTX *bctx) | |||
| 101 | return; | 103 | return; |
| 102 | } | 104 | } |
| 103 | } | 105 | } |
| 106 | LCRYPTO_ALIAS(BN_CTX_start); | ||
| 104 | 107 | ||
| 105 | BIGNUM * | 108 | BIGNUM * |
| 106 | BN_CTX_get(BN_CTX *bctx) | 109 | BN_CTX_get(BN_CTX *bctx) |
| @@ -139,6 +142,7 @@ BN_CTX_get(BN_CTX *bctx) | |||
| 139 | 142 | ||
| 140 | return bn; | 143 | return bn; |
| 141 | } | 144 | } |
| 145 | LCRYPTO_ALIAS(BN_CTX_get); | ||
| 142 | 146 | ||
| 143 | void | 147 | void |
| 144 | BN_CTX_end(BN_CTX *bctx) | 148 | BN_CTX_end(BN_CTX *bctx) |
| @@ -154,3 +158,4 @@ BN_CTX_end(BN_CTX *bctx) | |||
| 154 | 158 | ||
| 155 | bctx->group--; | 159 | bctx->group--; |
| 156 | } | 160 | } |
| 161 | LCRYPTO_ALIAS(BN_CTX_end); | ||
diff --git a/src/lib/libcrypto/bn/bn_err.c b/src/lib/libcrypto/bn/bn_err.c index b861ea9374..6fd6030a0c 100644 --- a/src/lib/libcrypto/bn/bn_err.c +++ b/src/lib/libcrypto/bn/bn_err.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_err.c,v 1.16 2023/06/13 09:12:22 tb Exp $ */ | 1 | /* $OpenBSD: bn_err.c,v 1.17 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* ==================================================================== | 2 | /* ==================================================================== |
| 3 | * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. |
| 4 | * | 4 | * |
| @@ -105,3 +105,4 @@ ERR_load_BN_strings(void) | |||
| 105 | } | 105 | } |
| 106 | #endif | 106 | #endif |
| 107 | } | 107 | } |
| 108 | LCRYPTO_ALIAS(ERR_load_BN_strings); | ||
diff --git a/src/lib/libcrypto/bn/bn_exp.c b/src/lib/libcrypto/bn/bn_exp.c index 9e5d1fd26d..a50fa5953c 100644 --- a/src/lib/libcrypto/bn/bn_exp.c +++ b/src/lib/libcrypto/bn/bn_exp.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_exp.c,v 1.46 2023/05/09 05:38:11 tb Exp $ */ | 1 | /* $OpenBSD: bn_exp.c,v 1.47 2023/07/08 12:21:58 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 | * |
| @@ -173,6 +173,7 @@ BN_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) | |||
| 173 | 173 | ||
| 174 | return ret; | 174 | return ret; |
| 175 | } | 175 | } |
| 176 | LCRYPTO_ALIAS(BN_exp); | ||
| 176 | 177 | ||
| 177 | /* The old fallback, simple version :-) */ | 178 | /* The old fallback, simple version :-) */ |
| 178 | int | 179 | int |
| @@ -291,6 +292,7 @@ err: | |||
| 291 | BN_CTX_end(ctx); | 292 | BN_CTX_end(ctx); |
| 292 | return (ret); | 293 | return (ret); |
| 293 | } | 294 | } |
| 295 | LCRYPTO_ALIAS(BN_mod_exp_simple); | ||
| 294 | 296 | ||
| 295 | /* BN_mod_exp_mont_consttime() stores the precomputed powers in a specific layout | 297 | /* BN_mod_exp_mont_consttime() stores the precomputed powers in a specific layout |
| 296 | * so that accessing any of these table values shows the same access pattern as far | 298 | * so that accessing any of these table values shows the same access pattern as far |
| @@ -632,6 +634,7 @@ err: | |||
| 632 | BN_CTX_end(ctx); | 634 | BN_CTX_end(ctx); |
| 633 | return (ret); | 635 | return (ret); |
| 634 | } | 636 | } |
| 637 | LCRYPTO_ALIAS(BN_mod_exp_mont_consttime); | ||
| 635 | 638 | ||
| 636 | static int | 639 | static int |
| 637 | BN_mod_exp_mont_internal(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, | 640 | BN_mod_exp_mont_internal(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, |
| @@ -947,6 +950,7 @@ err: | |||
| 947 | BN_CTX_end(ctx); | 950 | BN_CTX_end(ctx); |
| 948 | return (ret); | 951 | return (ret); |
| 949 | } | 952 | } |
| 953 | LCRYPTO_ALIAS(BN_mod_exp_mont_word); | ||
| 950 | 954 | ||
| 951 | int | 955 | int |
| 952 | BN_mod_exp_recp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, | 956 | BN_mod_exp_recp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, |
| @@ -1331,3 +1335,4 @@ err: | |||
| 1331 | BN_CTX_end(ctx); | 1335 | BN_CTX_end(ctx); |
| 1332 | return (ret); | 1336 | return (ret); |
| 1333 | } | 1337 | } |
| 1338 | LCRYPTO_ALIAS(BN_mod_exp2_mont); | ||
diff --git a/src/lib/libcrypto/bn/bn_kron.c b/src/lib/libcrypto/bn/bn_kron.c index f48823acab..a170d688e9 100644 --- a/src/lib/libcrypto/bn/bn_kron.c +++ b/src/lib/libcrypto/bn/bn_kron.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_kron.c,v 1.14 2023/03/27 10:21:23 tb Exp $ */ | 1 | /* $OpenBSD: bn_kron.c,v 1.15 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* ==================================================================== | 2 | /* ==================================================================== |
| 3 | * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. |
| 4 | * | 4 | * |
| @@ -192,3 +192,4 @@ BN_kronecker(const BIGNUM *A, const BIGNUM *B, BN_CTX *ctx) | |||
| 192 | 192 | ||
| 193 | return ret; | 193 | return ret; |
| 194 | } | 194 | } |
| 195 | LCRYPTO_ALIAS(BN_kronecker); | ||
diff --git a/src/lib/libcrypto/bn/bn_lib.c b/src/lib/libcrypto/bn/bn_lib.c index bac0290efa..74359dab37 100644 --- a/src/lib/libcrypto/bn/bn_lib.c +++ b/src/lib/libcrypto/bn/bn_lib.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_lib.c,v 1.88 2023/06/21 07:48:41 jsing Exp $ */ | 1 | /* $OpenBSD: bn_lib.c,v 1.89 2023/07/08 12:21:58 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 | * |
| @@ -81,6 +81,7 @@ BN_new(void) | |||
| 81 | 81 | ||
| 82 | return bn; | 82 | return bn; |
| 83 | } | 83 | } |
| 84 | LCRYPTO_ALIAS(BN_new); | ||
| 84 | 85 | ||
| 85 | void | 86 | void |
| 86 | BN_init(BIGNUM *a) | 87 | BN_init(BIGNUM *a) |
| @@ -96,6 +97,7 @@ BN_clear(BIGNUM *a) | |||
| 96 | a->top = 0; | 97 | a->top = 0; |
| 97 | a->neg = 0; | 98 | a->neg = 0; |
| 98 | } | 99 | } |
| 100 | LCRYPTO_ALIAS(BN_clear); | ||
| 99 | 101 | ||
| 100 | void | 102 | void |
| 101 | BN_free(BIGNUM *bn) | 103 | BN_free(BIGNUM *bn) |
| @@ -113,24 +115,28 @@ BN_free(BIGNUM *bn) | |||
| 113 | 115 | ||
| 114 | freezero(bn, sizeof(*bn)); | 116 | freezero(bn, sizeof(*bn)); |
| 115 | } | 117 | } |
| 118 | LCRYPTO_ALIAS(BN_free); | ||
| 116 | 119 | ||
| 117 | void | 120 | void |
| 118 | BN_clear_free(BIGNUM *bn) | 121 | BN_clear_free(BIGNUM *bn) |
| 119 | { | 122 | { |
| 120 | BN_free(bn); | 123 | BN_free(bn); |
| 121 | } | 124 | } |
| 125 | LCRYPTO_ALIAS(BN_clear_free); | ||
| 122 | 126 | ||
| 123 | void | 127 | void |
| 124 | BN_set_flags(BIGNUM *b, int n) | 128 | BN_set_flags(BIGNUM *b, int n) |
| 125 | { | 129 | { |
| 126 | b->flags |= n; | 130 | b->flags |= n; |
| 127 | } | 131 | } |
| 132 | LCRYPTO_ALIAS(BN_set_flags); | ||
| 128 | 133 | ||
| 129 | int | 134 | int |
| 130 | BN_get_flags(const BIGNUM *b, int n) | 135 | BN_get_flags(const BIGNUM *b, int n) |
| 131 | { | 136 | { |
| 132 | return b->flags & n; | 137 | return b->flags & n; |
| 133 | } | 138 | } |
| 139 | LCRYPTO_ALIAS(BN_get_flags); | ||
| 134 | 140 | ||
| 135 | void | 141 | void |
| 136 | BN_with_flags(BIGNUM *dest, const BIGNUM *b, int flags) | 142 | BN_with_flags(BIGNUM *dest, const BIGNUM *b, int flags) |
| @@ -143,6 +149,7 @@ BN_with_flags(BIGNUM *dest, const BIGNUM *b, int flags) | |||
| 143 | *dest = *b; | 149 | *dest = *b; |
| 144 | dest->flags = dest_flags; | 150 | dest->flags = dest_flags; |
| 145 | } | 151 | } |
| 152 | LCRYPTO_ALIAS(BN_with_flags); | ||
| 146 | 153 | ||
| 147 | static const BN_ULONG bn_value_one_data = 1; | 154 | static const BN_ULONG bn_value_one_data = 1; |
| 148 | static const BIGNUM bn_value_one = { | 155 | static const BIGNUM bn_value_one = { |
| @@ -158,18 +165,21 @@ BN_value_one(void) | |||
| 158 | { | 165 | { |
| 159 | return &bn_value_one; | 166 | return &bn_value_one; |
| 160 | } | 167 | } |
| 168 | LCRYPTO_ALIAS(BN_value_one); | ||
| 161 | 169 | ||
| 162 | int | 170 | int |
| 163 | BN_num_bits_word(BN_ULONG w) | 171 | BN_num_bits_word(BN_ULONG w) |
| 164 | { | 172 | { |
| 165 | return BN_BITS2 - bn_clzw(w); | 173 | return BN_BITS2 - bn_clzw(w); |
| 166 | } | 174 | } |
| 175 | LCRYPTO_ALIAS(BN_num_bits_word); | ||
| 167 | 176 | ||
| 168 | int | 177 | int |
| 169 | BN_num_bits(const BIGNUM *bn) | 178 | BN_num_bits(const BIGNUM *bn) |
| 170 | { | 179 | { |
| 171 | return bn_bitsize(bn); | 180 | return bn_bitsize(bn); |
| 172 | } | 181 | } |
| 182 | LCRYPTO_ALIAS(BN_num_bits); | ||
| 173 | 183 | ||
| 174 | void | 184 | void |
| 175 | bn_correct_top(BIGNUM *a) | 185 | bn_correct_top(BIGNUM *a) |
| @@ -253,6 +263,7 @@ BN_dup(const BIGNUM *a) | |||
| 253 | } | 263 | } |
| 254 | return t; | 264 | return t; |
| 255 | } | 265 | } |
| 266 | LCRYPTO_ALIAS(BN_dup); | ||
| 256 | 267 | ||
| 257 | static inline void | 268 | static inline void |
| 258 | bn_copy_words(BN_ULONG *ap, const BN_ULONG *bp, int n) | 269 | bn_copy_words(BN_ULONG *ap, const BN_ULONG *bp, int n) |
| @@ -284,6 +295,7 @@ BN_copy(BIGNUM *a, const BIGNUM *b) | |||
| 284 | 295 | ||
| 285 | return (a); | 296 | return (a); |
| 286 | } | 297 | } |
| 298 | LCRYPTO_ALIAS(BN_copy); | ||
| 287 | 299 | ||
| 288 | int | 300 | int |
| 289 | bn_copy(BIGNUM *dst, const BIGNUM *src) | 301 | bn_copy(BIGNUM *dst, const BIGNUM *src) |
| @@ -322,6 +334,7 @@ BN_swap(BIGNUM *a, BIGNUM *b) | |||
| 322 | b->flags = (flags_old_b & BN_FLG_MALLOCED) | | 334 | b->flags = (flags_old_b & BN_FLG_MALLOCED) | |
| 323 | (flags_old_a & BN_FLG_STATIC_DATA); | 335 | (flags_old_a & BN_FLG_STATIC_DATA); |
| 324 | } | 336 | } |
| 337 | LCRYPTO_ALIAS(BN_swap); | ||
| 325 | 338 | ||
| 326 | BN_ULONG | 339 | BN_ULONG |
| 327 | BN_get_word(const BIGNUM *a) | 340 | BN_get_word(const BIGNUM *a) |
| @@ -333,6 +346,7 @@ BN_get_word(const BIGNUM *a) | |||
| 333 | /* a->top == 0 */ | 346 | /* a->top == 0 */ |
| 334 | return 0; | 347 | return 0; |
| 335 | } | 348 | } |
| 349 | LCRYPTO_ALIAS(BN_get_word); | ||
| 336 | 350 | ||
| 337 | int | 351 | int |
| 338 | BN_set_word(BIGNUM *a, BN_ULONG w) | 352 | BN_set_word(BIGNUM *a, BN_ULONG w) |
| @@ -344,6 +358,7 @@ BN_set_word(BIGNUM *a, BN_ULONG w) | |||
| 344 | a->top = (w ? 1 : 0); | 358 | a->top = (w ? 1 : 0); |
| 345 | return (1); | 359 | return (1); |
| 346 | } | 360 | } |
| 361 | LCRYPTO_ALIAS(BN_set_word); | ||
| 347 | 362 | ||
| 348 | int | 363 | int |
| 349 | BN_ucmp(const BIGNUM *a, const BIGNUM *b) | 364 | BN_ucmp(const BIGNUM *a, const BIGNUM *b) |
| @@ -362,6 +377,7 @@ BN_ucmp(const BIGNUM *a, const BIGNUM *b) | |||
| 362 | 377 | ||
| 363 | return 0; | 378 | return 0; |
| 364 | } | 379 | } |
| 380 | LCRYPTO_ALIAS(BN_ucmp); | ||
| 365 | 381 | ||
| 366 | int | 382 | int |
| 367 | BN_cmp(const BIGNUM *a, const BIGNUM *b) | 383 | BN_cmp(const BIGNUM *a, const BIGNUM *b) |
| @@ -382,6 +398,7 @@ BN_cmp(const BIGNUM *a, const BIGNUM *b) | |||
| 382 | 398 | ||
| 383 | return BN_ucmp(a, b); | 399 | return BN_ucmp(a, b); |
| 384 | } | 400 | } |
| 401 | LCRYPTO_ALIAS(BN_cmp); | ||
| 385 | 402 | ||
| 386 | int | 403 | int |
| 387 | BN_set_bit(BIGNUM *a, int n) | 404 | BN_set_bit(BIGNUM *a, int n) |
| @@ -404,6 +421,7 @@ BN_set_bit(BIGNUM *a, int n) | |||
| 404 | a->d[i] |= (((BN_ULONG)1) << j); | 421 | a->d[i] |= (((BN_ULONG)1) << j); |
| 405 | return (1); | 422 | return (1); |
| 406 | } | 423 | } |
| 424 | LCRYPTO_ALIAS(BN_set_bit); | ||
| 407 | 425 | ||
| 408 | int | 426 | int |
| 409 | BN_clear_bit(BIGNUM *a, int n) | 427 | BN_clear_bit(BIGNUM *a, int n) |
| @@ -422,6 +440,7 @@ BN_clear_bit(BIGNUM *a, int n) | |||
| 422 | bn_correct_top(a); | 440 | bn_correct_top(a); |
| 423 | return (1); | 441 | return (1); |
| 424 | } | 442 | } |
| 443 | LCRYPTO_ALIAS(BN_clear_bit); | ||
| 425 | 444 | ||
| 426 | int | 445 | int |
| 427 | BN_is_bit_set(const BIGNUM *a, int n) | 446 | BN_is_bit_set(const BIGNUM *a, int n) |
| @@ -436,6 +455,7 @@ BN_is_bit_set(const BIGNUM *a, int n) | |||
| 436 | return 0; | 455 | return 0; |
| 437 | return (int)(((a->d[i]) >> j) & ((BN_ULONG)1)); | 456 | return (int)(((a->d[i]) >> j) & ((BN_ULONG)1)); |
| 438 | } | 457 | } |
| 458 | LCRYPTO_ALIAS(BN_is_bit_set); | ||
| 439 | 459 | ||
| 440 | int | 460 | int |
| 441 | BN_mask_bits(BIGNUM *a, int n) | 461 | BN_mask_bits(BIGNUM *a, int n) |
| @@ -458,12 +478,14 @@ BN_mask_bits(BIGNUM *a, int n) | |||
| 458 | bn_correct_top(a); | 478 | bn_correct_top(a); |
| 459 | return (1); | 479 | return (1); |
| 460 | } | 480 | } |
| 481 | LCRYPTO_ALIAS(BN_mask_bits); | ||
| 461 | 482 | ||
| 462 | void | 483 | void |
| 463 | BN_set_negative(BIGNUM *bn, int neg) | 484 | BN_set_negative(BIGNUM *bn, int neg) |
| 464 | { | 485 | { |
| 465 | bn->neg = ~BN_is_zero(bn) & bn_ct_ne_zero(neg); | 486 | bn->neg = ~BN_is_zero(bn) & bn_ct_ne_zero(neg); |
| 466 | } | 487 | } |
| 488 | LCRYPTO_ALIAS(BN_set_negative); | ||
| 467 | 489 | ||
| 468 | /* | 490 | /* |
| 469 | * Constant-time conditional swap of a and b. | 491 | * Constant-time conditional swap of a and b. |
| @@ -517,6 +539,7 @@ BN_consttime_swap(BN_ULONG condition, BIGNUM *a, BIGNUM *b, int nwords) | |||
| 517 | } | 539 | } |
| 518 | #undef BN_CONSTTIME_SWAP | 540 | #undef BN_CONSTTIME_SWAP |
| 519 | } | 541 | } |
| 542 | LCRYPTO_ALIAS(BN_consttime_swap); | ||
| 520 | 543 | ||
| 521 | /* | 544 | /* |
| 522 | * Constant-time conditional swap of a and b. | 545 | * Constant-time conditional swap of a and b. |
| @@ -575,18 +598,21 @@ BN_zero(BIGNUM *a) | |||
| 575 | a->neg = 0; | 598 | a->neg = 0; |
| 576 | a->top = 0; | 599 | a->top = 0; |
| 577 | } | 600 | } |
| 601 | LCRYPTO_ALIAS(BN_zero); | ||
| 578 | 602 | ||
| 579 | int | 603 | int |
| 580 | BN_one(BIGNUM *a) | 604 | BN_one(BIGNUM *a) |
| 581 | { | 605 | { |
| 582 | return BN_set_word(a, 1); | 606 | return BN_set_word(a, 1); |
| 583 | } | 607 | } |
| 608 | LCRYPTO_ALIAS(BN_one); | ||
| 584 | 609 | ||
| 585 | int | 610 | int |
| 586 | BN_abs_is_word(const BIGNUM *a, const BN_ULONG w) | 611 | BN_abs_is_word(const BIGNUM *a, const BN_ULONG w) |
| 587 | { | 612 | { |
| 588 | return (a->top == 1 && a->d[0] == w) || (w == 0 && a->top == 0); | 613 | return (a->top == 1 && a->d[0] == w) || (w == 0 && a->top == 0); |
| 589 | } | 614 | } |
| 615 | LCRYPTO_ALIAS(BN_abs_is_word); | ||
| 590 | 616 | ||
| 591 | int | 617 | int |
| 592 | BN_is_zero(const BIGNUM *bn) | 618 | BN_is_zero(const BIGNUM *bn) |
| @@ -599,30 +625,35 @@ BN_is_zero(const BIGNUM *bn) | |||
| 599 | 625 | ||
| 600 | return bits == 0; | 626 | return bits == 0; |
| 601 | } | 627 | } |
| 628 | LCRYPTO_ALIAS(BN_is_zero); | ||
| 602 | 629 | ||
| 603 | int | 630 | int |
| 604 | BN_is_one(const BIGNUM *a) | 631 | BN_is_one(const BIGNUM *a) |
| 605 | { | 632 | { |
| 606 | return BN_abs_is_word(a, 1) && !a->neg; | 633 | return BN_abs_is_word(a, 1) && !a->neg; |
| 607 | } | 634 | } |
| 635 | LCRYPTO_ALIAS(BN_is_one); | ||
| 608 | 636 | ||
| 609 | int | 637 | int |
| 610 | BN_is_word(const BIGNUM *a, const BN_ULONG w) | 638 | BN_is_word(const BIGNUM *a, const BN_ULONG w) |
| 611 | { | 639 | { |
| 612 | return BN_abs_is_word(a, w) && (w == 0 || !a->neg); | 640 | return BN_abs_is_word(a, w) && (w == 0 || !a->neg); |
| 613 | } | 641 | } |
| 642 | LCRYPTO_ALIAS(BN_is_word); | ||
| 614 | 643 | ||
| 615 | int | 644 | int |
| 616 | BN_is_odd(const BIGNUM *a) | 645 | BN_is_odd(const BIGNUM *a) |
| 617 | { | 646 | { |
| 618 | return a->top > 0 && (a->d[0] & 1); | 647 | return a->top > 0 && (a->d[0] & 1); |
| 619 | } | 648 | } |
| 649 | LCRYPTO_ALIAS(BN_is_odd); | ||
| 620 | 650 | ||
| 621 | int | 651 | int |
| 622 | BN_is_negative(const BIGNUM *a) | 652 | BN_is_negative(const BIGNUM *a) |
| 623 | { | 653 | { |
| 624 | return a->neg != 0; | 654 | return a->neg != 0; |
| 625 | } | 655 | } |
| 656 | LCRYPTO_ALIAS(BN_is_negative); | ||
| 626 | 657 | ||
| 627 | char * | 658 | char * |
| 628 | BN_options(void) | 659 | BN_options(void) |
| @@ -642,6 +673,7 @@ BN_options(void) | |||
| 642 | } | 673 | } |
| 643 | return (data); | 674 | return (data); |
| 644 | } | 675 | } |
| 676 | LCRYPTO_ALIAS(BN_options); | ||
| 645 | 677 | ||
| 646 | /* | 678 | /* |
| 647 | * Bits of security, see SP800-57, section 5.6.11, table 2. | 679 | * Bits of security, see SP800-57, section 5.6.11, table 2. |
| @@ -673,6 +705,7 @@ BN_security_bits(int L, int N) | |||
| 673 | 705 | ||
| 674 | return bits >= secbits ? secbits : bits; | 706 | return bits >= secbits ? secbits : bits; |
| 675 | } | 707 | } |
| 708 | LCRYPTO_ALIAS(BN_security_bits); | ||
| 676 | 709 | ||
| 677 | BN_GENCB * | 710 | BN_GENCB * |
| 678 | BN_GENCB_new(void) | 711 | BN_GENCB_new(void) |
| @@ -684,6 +717,7 @@ BN_GENCB_new(void) | |||
| 684 | 717 | ||
| 685 | return cb; | 718 | return cb; |
| 686 | } | 719 | } |
| 720 | LCRYPTO_ALIAS(BN_GENCB_new); | ||
| 687 | 721 | ||
| 688 | void | 722 | void |
| 689 | BN_GENCB_free(BN_GENCB *cb) | 723 | BN_GENCB_free(BN_GENCB *cb) |
| @@ -692,6 +726,7 @@ BN_GENCB_free(BN_GENCB *cb) | |||
| 692 | return; | 726 | return; |
| 693 | free(cb); | 727 | free(cb); |
| 694 | } | 728 | } |
| 729 | LCRYPTO_ALIAS(BN_GENCB_free); | ||
| 695 | 730 | ||
| 696 | /* Populate a BN_GENCB structure with an "old"-style callback */ | 731 | /* Populate a BN_GENCB structure with an "old"-style callback */ |
| 697 | void | 732 | void |
| @@ -701,6 +736,7 @@ BN_GENCB_set_old(BN_GENCB *gencb, void (*cb)(int, int, void *), void *cb_arg) | |||
| 701 | gencb->cb.cb_1 = cb; | 736 | gencb->cb.cb_1 = cb; |
| 702 | gencb->arg = cb_arg; | 737 | gencb->arg = cb_arg; |
| 703 | } | 738 | } |
| 739 | LCRYPTO_ALIAS(BN_GENCB_set_old); | ||
| 704 | 740 | ||
| 705 | /* Populate a BN_GENCB structure with a "new"-style callback */ | 741 | /* Populate a BN_GENCB structure with a "new"-style callback */ |
| 706 | void | 742 | void |
| @@ -710,9 +746,11 @@ BN_GENCB_set(BN_GENCB *gencb, int (*cb)(int, int, BN_GENCB *), void *cb_arg) | |||
| 710 | gencb->cb.cb_2 = cb; | 746 | gencb->cb.cb_2 = cb; |
| 711 | gencb->arg = cb_arg; | 747 | gencb->arg = cb_arg; |
| 712 | } | 748 | } |
| 749 | LCRYPTO_ALIAS(BN_GENCB_set); | ||
| 713 | 750 | ||
| 714 | void * | 751 | void * |
| 715 | BN_GENCB_get_arg(BN_GENCB *cb) | 752 | BN_GENCB_get_arg(BN_GENCB *cb) |
| 716 | { | 753 | { |
| 717 | return cb->arg; | 754 | return cb->arg; |
| 718 | } | 755 | } |
| 756 | LCRYPTO_ALIAS(BN_GENCB_get_arg); | ||
diff --git a/src/lib/libcrypto/bn/bn_mod.c b/src/lib/libcrypto/bn/bn_mod.c index 79766d0036..365f6fcf03 100644 --- a/src/lib/libcrypto/bn/bn_mod.c +++ b/src/lib/libcrypto/bn/bn_mod.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_mod.c,v 1.21 2023/06/13 09:28:13 tb Exp $ */ | 1 | /* $OpenBSD: bn_mod.c,v 1.22 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* Includes code written by Lenka Fibikova <fibikova@exp-math.uni-essen.de> | 2 | /* Includes code written by Lenka Fibikova <fibikova@exp-math.uni-essen.de> |
| 3 | * for the OpenSSL project. */ | 3 | * for the OpenSSL project. */ |
| 4 | /* ==================================================================== | 4 | /* ==================================================================== |
| @@ -146,6 +146,7 @@ BN_nnmod(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) | |||
| 146 | return BN_usub(r, m, r); | 146 | return BN_usub(r, m, r); |
| 147 | return 1; | 147 | return 1; |
| 148 | } | 148 | } |
| 149 | LCRYPTO_ALIAS(BN_nnmod); | ||
| 149 | 150 | ||
| 150 | int | 151 | int |
| 151 | BN_mod_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, | 152 | BN_mod_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, |
| @@ -159,6 +160,7 @@ BN_mod_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, | |||
| 159 | return 0; | 160 | return 0; |
| 160 | return BN_nnmod(r, r, m, ctx); | 161 | return BN_nnmod(r, r, m, ctx); |
| 161 | } | 162 | } |
| 163 | LCRYPTO_ALIAS(BN_mod_add); | ||
| 162 | 164 | ||
| 163 | /* | 165 | /* |
| 164 | * BN_mod_add() variant that may only be used if both a and b are non-negative | 166 | * BN_mod_add() variant that may only be used if both a and b are non-negative |
| @@ -177,6 +179,7 @@ BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m) | |||
| 177 | return BN_usub(r, r, m); | 179 | return BN_usub(r, r, m); |
| 178 | return 1; | 180 | return 1; |
| 179 | } | 181 | } |
| 182 | LCRYPTO_ALIAS(BN_mod_add_quick); | ||
| 180 | 183 | ||
| 181 | int | 184 | int |
| 182 | BN_mod_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, | 185 | BN_mod_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, |
| @@ -190,6 +193,7 @@ BN_mod_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, | |||
| 190 | return 0; | 193 | return 0; |
| 191 | return BN_nnmod(r, r, m, ctx); | 194 | return BN_nnmod(r, r, m, ctx); |
| 192 | } | 195 | } |
| 196 | LCRYPTO_ALIAS(BN_mod_sub); | ||
| 193 | 197 | ||
| 194 | /* | 198 | /* |
| 195 | * BN_mod_sub() variant that may only be used if both a and b are non-negative | 199 | * BN_mod_sub() variant that may only be used if both a and b are non-negative |
| @@ -208,6 +212,7 @@ BN_mod_sub_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m) | |||
| 208 | return 0; | 212 | return 0; |
| 209 | return BN_usub(r, m, r); | 213 | return BN_usub(r, m, r); |
| 210 | } | 214 | } |
| 215 | LCRYPTO_ALIAS(BN_mod_sub_quick); | ||
| 211 | 216 | ||
| 212 | int | 217 | int |
| 213 | BN_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, | 218 | BN_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, |
| @@ -246,12 +251,14 @@ BN_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, | |||
| 246 | 251 | ||
| 247 | return ret; | 252 | return ret; |
| 248 | } | 253 | } |
| 254 | LCRYPTO_ALIAS(BN_mod_mul); | ||
| 249 | 255 | ||
| 250 | int | 256 | int |
| 251 | BN_mod_sqr(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) | 257 | BN_mod_sqr(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) |
| 252 | { | 258 | { |
| 253 | return BN_mod_mul(r, a, a, m, ctx); | 259 | return BN_mod_mul(r, a, a, m, ctx); |
| 254 | } | 260 | } |
| 261 | LCRYPTO_ALIAS(BN_mod_sqr); | ||
| 255 | 262 | ||
| 256 | int | 263 | int |
| 257 | BN_mod_lshift1(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) | 264 | BN_mod_lshift1(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) |
| @@ -264,6 +271,7 @@ BN_mod_lshift1(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) | |||
| 264 | return 0; | 271 | return 0; |
| 265 | return BN_nnmod(r, r, m, ctx); | 272 | return BN_nnmod(r, r, m, ctx); |
| 266 | } | 273 | } |
| 274 | LCRYPTO_ALIAS(BN_mod_lshift1); | ||
| 267 | 275 | ||
| 268 | /* | 276 | /* |
| 269 | * BN_mod_lshift1() variant that may be used if a is non-negative | 277 | * BN_mod_lshift1() variant that may be used if a is non-negative |
| @@ -282,6 +290,7 @@ BN_mod_lshift1_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *m) | |||
| 282 | return BN_usub(r, r, m); | 290 | return BN_usub(r, r, m); |
| 283 | return 1; | 291 | return 1; |
| 284 | } | 292 | } |
| 293 | LCRYPTO_ALIAS(BN_mod_lshift1_quick); | ||
| 285 | 294 | ||
| 286 | int | 295 | int |
| 287 | BN_mod_lshift(BIGNUM *r, const BIGNUM *a, int n, const BIGNUM *m, BN_CTX *ctx) | 296 | BN_mod_lshift(BIGNUM *r, const BIGNUM *a, int n, const BIGNUM *m, BN_CTX *ctx) |
| @@ -316,6 +325,7 @@ BN_mod_lshift(BIGNUM *r, const BIGNUM *a, int n, const BIGNUM *m, BN_CTX *ctx) | |||
| 316 | 325 | ||
| 317 | return ret; | 326 | return ret; |
| 318 | } | 327 | } |
| 328 | LCRYPTO_ALIAS(BN_mod_lshift); | ||
| 319 | 329 | ||
| 320 | /* | 330 | /* |
| 321 | * BN_mod_lshift() variant that may be used if a is non-negative | 331 | * BN_mod_lshift() variant that may be used if a is non-negative |
| @@ -356,3 +366,4 @@ BN_mod_lshift_quick(BIGNUM *r, const BIGNUM *a, int n, const BIGNUM *m) | |||
| 356 | 366 | ||
| 357 | return 1; | 367 | return 1; |
| 358 | } | 368 | } |
| 369 | LCRYPTO_ALIAS(BN_mod_lshift_quick); | ||
diff --git a/src/lib/libcrypto/bn/bn_mod_sqrt.c b/src/lib/libcrypto/bn/bn_mod_sqrt.c index acca540e25..bdd5b2cdba 100644 --- a/src/lib/libcrypto/bn/bn_mod_sqrt.c +++ b/src/lib/libcrypto/bn/bn_mod_sqrt.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_mod_sqrt.c,v 1.1 2023/04/11 10:08:44 tb Exp $ */ | 1 | /* $OpenBSD: bn_mod_sqrt.c,v 1.2 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * Copyright (c) 2022 Theo Buehler <tb@openbsd.org> | 4 | * Copyright (c) 2022 Theo Buehler <tb@openbsd.org> |
| @@ -724,3 +724,4 @@ BN_mod_sqrt(BIGNUM *in, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) | |||
| 724 | 724 | ||
| 725 | return NULL; | 725 | return NULL; |
| 726 | } | 726 | } |
| 727 | LCRYPTO_ALIAS(BN_mod_sqrt); | ||
diff --git a/src/lib/libcrypto/bn/bn_mont.c b/src/lib/libcrypto/bn/bn_mont.c index b44246e070..12fea44c5a 100644 --- a/src/lib/libcrypto/bn/bn_mont.c +++ b/src/lib/libcrypto/bn/bn_mont.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_mont.c,v 1.60 2023/06/17 14:43:50 jsing Exp $ */ | 1 | /* $OpenBSD: bn_mont.c,v 1.61 2023/07/08 12:21:58 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 | * |
| @@ -137,6 +137,7 @@ BN_MONT_CTX_new(void) | |||
| 137 | 137 | ||
| 138 | return mctx; | 138 | return mctx; |
| 139 | } | 139 | } |
| 140 | LCRYPTO_ALIAS(BN_MONT_CTX_new); | ||
| 140 | 141 | ||
| 141 | void | 142 | void |
| 142 | BN_MONT_CTX_free(BN_MONT_CTX *mctx) | 143 | BN_MONT_CTX_free(BN_MONT_CTX *mctx) |
| @@ -150,6 +151,7 @@ BN_MONT_CTX_free(BN_MONT_CTX *mctx) | |||
| 150 | if (mctx->flags & BN_FLG_MALLOCED) | 151 | if (mctx->flags & BN_FLG_MALLOCED) |
| 151 | free(mctx); | 152 | free(mctx); |
| 152 | } | 153 | } |
| 154 | LCRYPTO_ALIAS(BN_MONT_CTX_free); | ||
| 153 | 155 | ||
| 154 | BN_MONT_CTX * | 156 | BN_MONT_CTX * |
| 155 | BN_MONT_CTX_copy(BN_MONT_CTX *dst, BN_MONT_CTX *src) | 157 | BN_MONT_CTX_copy(BN_MONT_CTX *dst, BN_MONT_CTX *src) |
| @@ -168,6 +170,7 @@ BN_MONT_CTX_copy(BN_MONT_CTX *dst, BN_MONT_CTX *src) | |||
| 168 | 170 | ||
| 169 | return dst; | 171 | return dst; |
| 170 | } | 172 | } |
| 173 | LCRYPTO_ALIAS(BN_MONT_CTX_copy); | ||
| 171 | 174 | ||
| 172 | int | 175 | int |
| 173 | BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) | 176 | BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) |
| @@ -257,6 +260,7 @@ BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) | |||
| 257 | 260 | ||
| 258 | return ret; | 261 | return ret; |
| 259 | } | 262 | } |
| 263 | LCRYPTO_ALIAS(BN_MONT_CTX_set); | ||
| 260 | 264 | ||
| 261 | BN_MONT_CTX * | 265 | BN_MONT_CTX * |
| 262 | BN_MONT_CTX_set_locked(BN_MONT_CTX **pmctx, int lock, const BIGNUM *mod, | 266 | BN_MONT_CTX_set_locked(BN_MONT_CTX **pmctx, int lock, const BIGNUM *mod, |
| @@ -293,6 +297,7 @@ BN_MONT_CTX_set_locked(BN_MONT_CTX **pmctx, int lock, const BIGNUM *mod, | |||
| 293 | done: | 297 | done: |
| 294 | return mctx; | 298 | return mctx; |
| 295 | } | 299 | } |
| 300 | LCRYPTO_ALIAS(BN_MONT_CTX_set_locked); | ||
| 296 | 301 | ||
| 297 | static int bn_montgomery_reduce(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mctx); | 302 | static int bn_montgomery_reduce(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mctx); |
| 298 | 303 | ||
| @@ -497,6 +502,7 @@ BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, | |||
| 497 | /* Compute r = aR * bR * R^-1 mod N = abR mod N */ | 502 | /* Compute r = aR * bR * R^-1 mod N = abR mod N */ |
| 498 | return bn_mod_mul_montgomery(r, a, b, mctx, ctx); | 503 | return bn_mod_mul_montgomery(r, a, b, mctx, ctx); |
| 499 | } | 504 | } |
| 505 | LCRYPTO_ALIAS(BN_mod_mul_montgomery); | ||
| 500 | 506 | ||
| 501 | int | 507 | int |
| 502 | BN_to_montgomery(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mctx, BN_CTX *ctx) | 508 | BN_to_montgomery(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mctx, BN_CTX *ctx) |
| @@ -504,6 +510,7 @@ BN_to_montgomery(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mctx, BN_CTX *ctx) | |||
| 504 | /* Compute r = a * R * R * R^-1 mod N = aR mod N */ | 510 | /* Compute r = a * R * R * R^-1 mod N = aR mod N */ |
| 505 | return bn_mod_mul_montgomery(r, a, &mctx->RR, mctx, ctx); | 511 | return bn_mod_mul_montgomery(r, a, &mctx->RR, mctx, ctx); |
| 506 | } | 512 | } |
| 513 | LCRYPTO_ALIAS(BN_to_montgomery); | ||
| 507 | 514 | ||
| 508 | /* | 515 | /* |
| 509 | * bn_montgomery_reduce() performs Montgomery reduction, reducing the input | 516 | * bn_montgomery_reduce() performs Montgomery reduction, reducing the input |
| @@ -597,3 +604,4 @@ BN_from_montgomery(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mctx, BN_CTX *ctx) | |||
| 597 | 604 | ||
| 598 | return ret; | 605 | return ret; |
| 599 | } | 606 | } |
| 607 | LCRYPTO_ALIAS(BN_from_montgomery); | ||
diff --git a/src/lib/libcrypto/bn/bn_mul.c b/src/lib/libcrypto/bn/bn_mul.c index 65088cc5c4..bdeb9b0fe8 100644 --- a/src/lib/libcrypto/bn/bn_mul.c +++ b/src/lib/libcrypto/bn/bn_mul.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_mul.c,v 1.38 2023/06/12 16:17:24 jsing Exp $ */ | 1 | /* $OpenBSD: bn_mul.c,v 1.39 2023/07/08 12:21:58 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 | * |
| @@ -367,3 +367,4 @@ BN_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx) | |||
| 367 | 367 | ||
| 368 | return ret; | 368 | return ret; |
| 369 | } | 369 | } |
| 370 | LCRYPTO_ALIAS(BN_mul); | ||
diff --git a/src/lib/libcrypto/bn/bn_prime.c b/src/lib/libcrypto/bn/bn_prime.c index b8f0eb69ce..a09bac4ae9 100644 --- a/src/lib/libcrypto/bn/bn_prime.c +++ b/src/lib/libcrypto/bn/bn_prime.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_prime.c,v 1.32 2023/05/10 12:21:55 tb Exp $ */ | 1 | /* $OpenBSD: bn_prime.c,v 1.33 2023/07/08 12:21:58 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 | * |
| @@ -150,6 +150,7 @@ BN_GENCB_call(BN_GENCB *cb, int a, int b) | |||
| 150 | /* Unrecognised callback type */ | 150 | /* Unrecognised callback type */ |
| 151 | return 0; | 151 | return 0; |
| 152 | } | 152 | } |
| 153 | LCRYPTO_ALIAS(BN_GENCB_call); | ||
| 153 | 154 | ||
| 154 | int | 155 | int |
| 155 | BN_generate_prime_ex(BIGNUM *ret, int bits, int safe, const BIGNUM *add, | 156 | BN_generate_prime_ex(BIGNUM *ret, int bits, int safe, const BIGNUM *add, |
| @@ -230,12 +231,14 @@ BN_generate_prime_ex(BIGNUM *ret, int bits, int safe, const BIGNUM *add, | |||
| 230 | 231 | ||
| 231 | return found; | 232 | return found; |
| 232 | } | 233 | } |
| 234 | LCRYPTO_ALIAS(BN_generate_prime_ex); | ||
| 233 | 235 | ||
| 234 | int | 236 | int |
| 235 | BN_is_prime_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, BN_GENCB *cb) | 237 | BN_is_prime_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, BN_GENCB *cb) |
| 236 | { | 238 | { |
| 237 | return BN_is_prime_fasttest_ex(a, checks, ctx_passed, 0, cb); | 239 | return BN_is_prime_fasttest_ex(a, checks, ctx_passed, 0, cb); |
| 238 | } | 240 | } |
| 241 | LCRYPTO_ALIAS(BN_is_prime_ex); | ||
| 239 | 242 | ||
| 240 | int | 243 | int |
| 241 | BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, | 244 | BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, |
| @@ -255,6 +258,7 @@ BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, | |||
| 255 | 258 | ||
| 256 | return is_prime; | 259 | return is_prime; |
| 257 | } | 260 | } |
| 261 | LCRYPTO_ALIAS(BN_is_prime_fasttest_ex); | ||
| 258 | 262 | ||
| 259 | static int | 263 | static int |
| 260 | probable_prime(BIGNUM *rnd, int bits) | 264 | probable_prime(BIGNUM *rnd, int bits) |
diff --git a/src/lib/libcrypto/bn/bn_rand.c b/src/lib/libcrypto/bn/bn_rand.c index a03d70053b..f68913473f 100644 --- a/src/lib/libcrypto/bn/bn_rand.c +++ b/src/lib/libcrypto/bn/bn_rand.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_rand.c,v 1.27 2022/11/26 16:08:51 tb Exp $ */ | 1 | /* $OpenBSD: bn_rand.c,v 1.28 2023/07/08 12:21:58 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 | * |
| @@ -198,12 +198,14 @@ BN_rand(BIGNUM *rnd, int bits, int top, int bottom) | |||
| 198 | { | 198 | { |
| 199 | return bnrand(0, rnd, bits, top, bottom); | 199 | return bnrand(0, rnd, bits, top, bottom); |
| 200 | } | 200 | } |
| 201 | LCRYPTO_ALIAS(BN_rand); | ||
| 201 | 202 | ||
| 202 | int | 203 | int |
| 203 | BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom) | 204 | BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom) |
| 204 | { | 205 | { |
| 205 | return bnrand(1, rnd, bits, top, bottom); | 206 | return bnrand(1, rnd, bits, top, bottom); |
| 206 | } | 207 | } |
| 208 | LCRYPTO_ALIAS(BN_pseudo_rand); | ||
| 207 | 209 | ||
| 208 | #if 1 | 210 | #if 1 |
| 209 | int | 211 | int |
| @@ -279,6 +281,7 @@ BN_rand_range(BIGNUM *r, const BIGNUM *range) | |||
| 279 | { | 281 | { |
| 280 | return bn_rand_range(0, r, range); | 282 | return bn_rand_range(0, r, range); |
| 281 | } | 283 | } |
| 284 | LCRYPTO_ALIAS(BN_rand_range); | ||
| 282 | 285 | ||
| 283 | int | 286 | int |
| 284 | bn_rand_interval(BIGNUM *rnd, const BIGNUM *lower_inc, const BIGNUM *upper_exc) | 287 | bn_rand_interval(BIGNUM *rnd, const BIGNUM *lower_inc, const BIGNUM *upper_exc) |
| @@ -312,3 +315,4 @@ BN_pseudo_rand_range(BIGNUM *r, const BIGNUM *range) | |||
| 312 | { | 315 | { |
| 313 | return bn_rand_range(1, r, range); | 316 | return bn_rand_range(1, r, range); |
| 314 | } | 317 | } |
| 318 | LCRYPTO_ALIAS(BN_pseudo_rand_range); | ||
diff --git a/src/lib/libcrypto/bn/bn_shift.c b/src/lib/libcrypto/bn/bn_shift.c index eee3436702..12edc7c0a0 100644 --- a/src/lib/libcrypto/bn/bn_shift.c +++ b/src/lib/libcrypto/bn/bn_shift.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_shift.c,v 1.21 2023/02/13 04:25:37 jsing Exp $ */ | 1 | /* $OpenBSD: bn_shift.c,v 1.22 2023/07/08 12:21:58 beck Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2022, 2023 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2022, 2023 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -151,21 +151,25 @@ BN_lshift1(BIGNUM *r, const BIGNUM *a) | |||
| 151 | { | 151 | { |
| 152 | return bn_lshift(r, a, 1); | 152 | return bn_lshift(r, a, 1); |
| 153 | } | 153 | } |
| 154 | LCRYPTO_ALIAS(BN_lshift1); | ||
| 154 | 155 | ||
| 155 | int | 156 | int |
| 156 | BN_lshift(BIGNUM *r, const BIGNUM *a, int n) | 157 | BN_lshift(BIGNUM *r, const BIGNUM *a, int n) |
| 157 | { | 158 | { |
| 158 | return bn_lshift(r, a, n); | 159 | return bn_lshift(r, a, n); |
| 159 | } | 160 | } |
| 161 | LCRYPTO_ALIAS(BN_lshift); | ||
| 160 | 162 | ||
| 161 | int | 163 | int |
| 162 | BN_rshift1(BIGNUM *r, const BIGNUM *a) | 164 | BN_rshift1(BIGNUM *r, const BIGNUM *a) |
| 163 | { | 165 | { |
| 164 | return bn_rshift(r, a, 1); | 166 | return bn_rshift(r, a, 1); |
| 165 | } | 167 | } |
| 168 | LCRYPTO_ALIAS(BN_rshift1); | ||
| 166 | 169 | ||
| 167 | int | 170 | int |
| 168 | BN_rshift(BIGNUM *r, const BIGNUM *a, int n) | 171 | BN_rshift(BIGNUM *r, const BIGNUM *a, int n) |
| 169 | { | 172 | { |
| 170 | return bn_rshift(r, a, n); | 173 | return bn_rshift(r, a, n); |
| 171 | } | 174 | } |
| 175 | LCRYPTO_ALIAS(BN_rshift); | ||
diff --git a/src/lib/libcrypto/bn/bn_sqr.c b/src/lib/libcrypto/bn/bn_sqr.c index 2879d34c0e..0dbccbf85d 100644 --- a/src/lib/libcrypto/bn/bn_sqr.c +++ b/src/lib/libcrypto/bn/bn_sqr.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_sqr.c,v 1.35 2023/07/02 13:11:23 jsing Exp $ */ | 1 | /* $OpenBSD: bn_sqr.c,v 1.36 2023/07/08 12:21:58 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 | * |
| @@ -302,3 +302,4 @@ BN_sqr(BIGNUM *r, const BIGNUM *a, BN_CTX *ctx) | |||
| 302 | 302 | ||
| 303 | return ret; | 303 | return ret; |
| 304 | } | 304 | } |
| 305 | LCRYPTO_ALIAS(BN_sqr); | ||
diff --git a/src/lib/libcrypto/bn/bn_word.c b/src/lib/libcrypto/bn/bn_word.c index 68d5c2a4b4..a82b911e67 100644 --- a/src/lib/libcrypto/bn/bn_word.c +++ b/src/lib/libcrypto/bn/bn_word.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: bn_word.c,v 1.20 2023/03/11 14:14:54 jsing Exp $ */ | 1 | /* $OpenBSD: bn_word.c,v 1.21 2023/07/08 12:21:58 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 | * |
| @@ -100,6 +100,7 @@ BN_mod_word(const BIGNUM *a, BN_ULONG w) | |||
| 100 | } | 100 | } |
| 101 | return ((BN_ULONG)ret); | 101 | return ((BN_ULONG)ret); |
| 102 | } | 102 | } |
| 103 | LCRYPTO_ALIAS(BN_mod_word); | ||
| 103 | 104 | ||
| 104 | BN_ULONG | 105 | BN_ULONG |
| 105 | BN_div_word(BIGNUM *a, BN_ULONG w) | 106 | BN_div_word(BIGNUM *a, BN_ULONG w) |
| @@ -137,6 +138,7 @@ BN_div_word(BIGNUM *a, BN_ULONG w) | |||
| 137 | 138 | ||
| 138 | return (ret); | 139 | return (ret); |
| 139 | } | 140 | } |
| 141 | LCRYPTO_ALIAS(BN_div_word); | ||
| 140 | 142 | ||
| 141 | int | 143 | int |
| 142 | BN_add_word(BIGNUM *a, BN_ULONG w) | 144 | BN_add_word(BIGNUM *a, BN_ULONG w) |
| @@ -171,6 +173,7 @@ BN_add_word(BIGNUM *a, BN_ULONG w) | |||
| 171 | } | 173 | } |
| 172 | return (1); | 174 | return (1); |
| 173 | } | 175 | } |
| 176 | LCRYPTO_ALIAS(BN_add_word); | ||
| 174 | 177 | ||
| 175 | int | 178 | int |
| 176 | BN_sub_word(BIGNUM *a, BN_ULONG w) | 179 | BN_sub_word(BIGNUM *a, BN_ULONG w) |
| @@ -217,6 +220,7 @@ BN_sub_word(BIGNUM *a, BN_ULONG w) | |||
| 217 | a->top--; | 220 | a->top--; |
| 218 | return (1); | 221 | return (1); |
| 219 | } | 222 | } |
| 223 | LCRYPTO_ALIAS(BN_sub_word); | ||
| 220 | 224 | ||
| 221 | int | 225 | int |
| 222 | BN_mul_word(BIGNUM *a, BN_ULONG w) | 226 | BN_mul_word(BIGNUM *a, BN_ULONG w) |
| @@ -238,3 +242,4 @@ BN_mul_word(BIGNUM *a, BN_ULONG w) | |||
| 238 | } | 242 | } |
| 239 | return (1); | 243 | return (1); |
| 240 | } | 244 | } |
| 245 | LCRYPTO_ALIAS(BN_mul_word); | ||
diff --git a/src/lib/libcrypto/hidden/openssl/bn.h b/src/lib/libcrypto/hidden/openssl/bn.h new file mode 100644 index 0000000000..6c23a5c6d8 --- /dev/null +++ b/src/lib/libcrypto/hidden/openssl/bn.h | |||
| @@ -0,0 +1,163 @@ | |||
| 1 | /* $OpenBSD: bn.h,v 1.1 2023/07/08 12:21:58 beck Exp $ */ | ||
| 2 | /* | ||
| 3 | * Copyright (c) 2023 Bob Beck <beck@openbsd.org> | ||
| 4 | * | ||
| 5 | * Permission to use, copy, modify, and distribute this software for any | ||
| 6 | * purpose with or without fee is hereby granted, provided that the above | ||
| 7 | * copyright notice and this permission notice appear in all copies. | ||
| 8 | * | ||
| 9 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
| 10 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
| 11 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||
| 12 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
| 13 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
| 14 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||
| 15 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
| 16 | */ | ||
| 17 | |||
| 18 | #ifndef _LIBCRYPTO_BN_H | ||
| 19 | #define _LIBCRYPTO_BN_H | ||
| 20 | |||
| 21 | #ifndef _MSC_VER | ||
| 22 | #include_next <openssl/bn.h> | ||
| 23 | #else | ||
| 24 | #include "../include/openssl/bn.h" | ||
| 25 | #endif | ||
| 26 | #include "crypto_namespace.h" | ||
| 27 | |||
| 28 | LCRYPTO_USED(BN_set_flags); | ||
| 29 | LCRYPTO_USED(BN_get_flags); | ||
| 30 | LCRYPTO_USED(BN_with_flags); | ||
| 31 | LCRYPTO_USED(BN_GENCB_new); | ||
| 32 | LCRYPTO_USED(BN_GENCB_free); | ||
| 33 | LCRYPTO_USED(BN_GENCB_call); | ||
| 34 | LCRYPTO_USED(BN_GENCB_set_old); | ||
| 35 | LCRYPTO_USED(BN_GENCB_set); | ||
| 36 | LCRYPTO_USED(BN_GENCB_get_arg); | ||
| 37 | LCRYPTO_USED(BN_abs_is_word); | ||
| 38 | LCRYPTO_USED(BN_is_zero); | ||
| 39 | LCRYPTO_USED(BN_is_one); | ||
| 40 | LCRYPTO_USED(BN_is_word); | ||
| 41 | LCRYPTO_USED(BN_is_odd); | ||
| 42 | LCRYPTO_USED(BN_zero); | ||
| 43 | LCRYPTO_USED(BN_one); | ||
| 44 | LCRYPTO_USED(BN_value_one); | ||
| 45 | LCRYPTO_USED(BN_options); | ||
| 46 | LCRYPTO_USED(BN_CTX_new); | ||
| 47 | LCRYPTO_USED(BN_CTX_free); | ||
| 48 | LCRYPTO_USED(BN_CTX_start); | ||
| 49 | LCRYPTO_USED(BN_CTX_get); | ||
| 50 | LCRYPTO_USED(BN_CTX_end); | ||
| 51 | LCRYPTO_USED(BN_rand); | ||
| 52 | LCRYPTO_USED(BN_pseudo_rand); | ||
| 53 | LCRYPTO_USED(BN_rand_range); | ||
| 54 | LCRYPTO_USED(BN_pseudo_rand_range); | ||
| 55 | LCRYPTO_USED(BN_num_bits); | ||
| 56 | LCRYPTO_USED(BN_num_bits_word); | ||
| 57 | LCRYPTO_USED(BN_new); | ||
| 58 | LCRYPTO_USED(BN_clear_free); | ||
| 59 | LCRYPTO_USED(BN_copy); | ||
| 60 | LCRYPTO_USED(BN_swap); | ||
| 61 | LCRYPTO_USED(BN_bin2bn); | ||
| 62 | LCRYPTO_USED(BN_bn2bin); | ||
| 63 | LCRYPTO_USED(BN_bn2binpad); | ||
| 64 | LCRYPTO_USED(BN_lebin2bn); | ||
| 65 | LCRYPTO_USED(BN_bn2lebinpad); | ||
| 66 | LCRYPTO_USED(BN_mpi2bn); | ||
| 67 | LCRYPTO_USED(BN_bn2mpi); | ||
| 68 | LCRYPTO_USED(BN_sub); | ||
| 69 | LCRYPTO_USED(BN_usub); | ||
| 70 | LCRYPTO_USED(BN_uadd); | ||
| 71 | LCRYPTO_USED(BN_add); | ||
| 72 | LCRYPTO_USED(BN_mul); | ||
| 73 | LCRYPTO_USED(BN_sqr); | ||
| 74 | LCRYPTO_USED(BN_set_negative); | ||
| 75 | LCRYPTO_USED(BN_is_negative); | ||
| 76 | LCRYPTO_USED(BN_nnmod); | ||
| 77 | LCRYPTO_USED(BN_mod_add); | ||
| 78 | LCRYPTO_USED(BN_mod_add_quick); | ||
| 79 | LCRYPTO_USED(BN_mod_sub); | ||
| 80 | LCRYPTO_USED(BN_mod_sub_quick); | ||
| 81 | LCRYPTO_USED(BN_mod_mul); | ||
| 82 | LCRYPTO_USED(BN_mod_sqr); | ||
| 83 | LCRYPTO_USED(BN_mod_lshift1); | ||
| 84 | LCRYPTO_USED(BN_mod_lshift1_quick); | ||
| 85 | LCRYPTO_USED(BN_mod_lshift); | ||
| 86 | LCRYPTO_USED(BN_mod_lshift_quick); | ||
| 87 | LCRYPTO_USED(BN_mod_word); | ||
| 88 | LCRYPTO_USED(BN_div_word); | ||
| 89 | LCRYPTO_USED(BN_mul_word); | ||
| 90 | LCRYPTO_USED(BN_add_word); | ||
| 91 | LCRYPTO_USED(BN_sub_word); | ||
| 92 | LCRYPTO_USED(BN_set_word); | ||
| 93 | LCRYPTO_USED(BN_get_word); | ||
| 94 | LCRYPTO_USED(BN_cmp); | ||
| 95 | LCRYPTO_USED(BN_free); | ||
| 96 | LCRYPTO_USED(BN_is_bit_set); | ||
| 97 | LCRYPTO_USED(BN_lshift); | ||
| 98 | LCRYPTO_USED(BN_lshift1); | ||
| 99 | LCRYPTO_USED(BN_exp); | ||
| 100 | LCRYPTO_USED(BN_mod_exp_mont_consttime); | ||
| 101 | LCRYPTO_USED(BN_mod_exp_mont_word); | ||
| 102 | LCRYPTO_USED(BN_mod_exp2_mont); | ||
| 103 | LCRYPTO_USED(BN_mod_exp_simple); | ||
| 104 | LCRYPTO_USED(BN_mask_bits); | ||
| 105 | LCRYPTO_USED(BN_print_fp); | ||
| 106 | LCRYPTO_USED(BN_print); | ||
| 107 | LCRYPTO_USED(BN_rshift); | ||
| 108 | LCRYPTO_USED(BN_rshift1); | ||
| 109 | LCRYPTO_USED(BN_clear); | ||
| 110 | LCRYPTO_USED(BN_dup); | ||
| 111 | LCRYPTO_USED(BN_ucmp); | ||
| 112 | LCRYPTO_USED(BN_set_bit); | ||
| 113 | LCRYPTO_USED(BN_clear_bit); | ||
| 114 | LCRYPTO_USED(BN_bn2hex); | ||
| 115 | LCRYPTO_USED(BN_bn2dec); | ||
| 116 | LCRYPTO_USED(BN_hex2bn); | ||
| 117 | LCRYPTO_USED(BN_dec2bn); | ||
| 118 | LCRYPTO_USED(BN_asc2bn); | ||
| 119 | LCRYPTO_USED(BN_kronecker); | ||
| 120 | LCRYPTO_USED(BN_mod_sqrt); | ||
| 121 | LCRYPTO_USED(BN_consttime_swap); | ||
| 122 | LCRYPTO_USED(BN_security_bits); | ||
| 123 | LCRYPTO_USED(BN_generate_prime_ex); | ||
| 124 | LCRYPTO_USED(BN_is_prime_ex); | ||
| 125 | LCRYPTO_USED(BN_is_prime_fasttest_ex); | ||
| 126 | LCRYPTO_USED(BN_MONT_CTX_new); | ||
| 127 | LCRYPTO_USED(BN_mod_mul_montgomery); | ||
| 128 | LCRYPTO_USED(BN_to_montgomery); | ||
| 129 | LCRYPTO_USED(BN_from_montgomery); | ||
| 130 | LCRYPTO_USED(BN_MONT_CTX_free); | ||
| 131 | LCRYPTO_USED(BN_MONT_CTX_set); | ||
| 132 | LCRYPTO_USED(BN_MONT_CTX_copy); | ||
| 133 | LCRYPTO_USED(BN_MONT_CTX_set_locked); | ||
| 134 | LCRYPTO_USED(BN_BLINDING_new); | ||
| 135 | LCRYPTO_USED(BN_BLINDING_free); | ||
| 136 | LCRYPTO_USED(BN_BLINDING_update); | ||
| 137 | LCRYPTO_USED(BN_BLINDING_convert); | ||
| 138 | LCRYPTO_USED(BN_BLINDING_invert); | ||
| 139 | LCRYPTO_USED(BN_BLINDING_convert_ex); | ||
| 140 | LCRYPTO_USED(BN_BLINDING_invert_ex); | ||
| 141 | LCRYPTO_USED(BN_BLINDING_thread_id); | ||
| 142 | LCRYPTO_USED(BN_BLINDING_get_flags); | ||
| 143 | LCRYPTO_USED(BN_BLINDING_set_flags); | ||
| 144 | LCRYPTO_USED(BN_BLINDING_create_param); | ||
| 145 | LCRYPTO_USED(get_rfc2409_prime_768); | ||
| 146 | LCRYPTO_USED(get_rfc2409_prime_1024); | ||
| 147 | LCRYPTO_USED(BN_get_rfc2409_prime_768); | ||
| 148 | LCRYPTO_USED(BN_get_rfc2409_prime_1024); | ||
| 149 | LCRYPTO_USED(get_rfc3526_prime_1536); | ||
| 150 | LCRYPTO_USED(get_rfc3526_prime_2048); | ||
| 151 | LCRYPTO_USED(get_rfc3526_prime_3072); | ||
| 152 | LCRYPTO_USED(get_rfc3526_prime_4096); | ||
| 153 | LCRYPTO_USED(get_rfc3526_prime_6144); | ||
| 154 | LCRYPTO_USED(get_rfc3526_prime_8192); | ||
| 155 | LCRYPTO_USED(BN_get_rfc3526_prime_1536); | ||
| 156 | LCRYPTO_USED(BN_get_rfc3526_prime_2048); | ||
| 157 | LCRYPTO_USED(BN_get_rfc3526_prime_3072); | ||
| 158 | LCRYPTO_USED(BN_get_rfc3526_prime_4096); | ||
| 159 | LCRYPTO_USED(BN_get_rfc3526_prime_6144); | ||
| 160 | LCRYPTO_USED(BN_get_rfc3526_prime_8192); | ||
| 161 | LCRYPTO_USED(ERR_load_BN_strings); | ||
| 162 | |||
| 163 | #endif /* _LIBCRYPTO_BN_H */ | ||
