diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/a_int.c')
| -rw-r--r-- | src/lib/libcrypto/asn1/a_int.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/lib/libcrypto/asn1/a_int.c b/src/lib/libcrypto/asn1/a_int.c index 1f4778922d..643ad2e0f0 100644 --- a/src/lib/libcrypto/asn1/a_int.c +++ b/src/lib/libcrypto/asn1/a_int.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: a_int.c,v 1.46 2022/08/28 17:49:25 jsing Exp $ */ | 1 | /* $OpenBSD: a_int.c,v 1.47 2023/07/05 21:23:36 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 @@ ASN1_INTEGER_new(void) | |||
| 79 | { | 79 | { |
| 80 | return (ASN1_INTEGER *)ASN1_item_new(&ASN1_INTEGER_it); | 80 | return (ASN1_INTEGER *)ASN1_item_new(&ASN1_INTEGER_it); |
| 81 | } | 81 | } |
| 82 | LCRYPTO_ALIAS(ASN1_INTEGER_new); | ||
| 82 | 83 | ||
| 83 | static void | 84 | static void |
| 84 | asn1_aint_clear(ASN1_INTEGER *aint) | 85 | asn1_aint_clear(ASN1_INTEGER *aint) |
| @@ -95,6 +96,7 @@ ASN1_INTEGER_free(ASN1_INTEGER *a) | |||
| 95 | { | 96 | { |
| 96 | ASN1_item_free((ASN1_VALUE *)a, &ASN1_INTEGER_it); | 97 | ASN1_item_free((ASN1_VALUE *)a, &ASN1_INTEGER_it); |
| 97 | } | 98 | } |
| 99 | LCRYPTO_ALIAS(ASN1_INTEGER_free); | ||
| 98 | 100 | ||
| 99 | static int | 101 | static int |
| 100 | ASN1_INTEGER_valid(const ASN1_INTEGER *a) | 102 | ASN1_INTEGER_valid(const ASN1_INTEGER *a) |
| @@ -110,6 +112,7 @@ ASN1_INTEGER_dup(const ASN1_INTEGER *x) | |||
| 110 | 112 | ||
| 111 | return ASN1_STRING_dup(x); | 113 | return ASN1_STRING_dup(x); |
| 112 | } | 114 | } |
| 115 | LCRYPTO_ALIAS(ASN1_INTEGER_dup); | ||
| 113 | 116 | ||
| 114 | int | 117 | int |
| 115 | ASN1_INTEGER_cmp(const ASN1_INTEGER *a, const ASN1_INTEGER *b) | 118 | ASN1_INTEGER_cmp(const ASN1_INTEGER *a, const ASN1_INTEGER *b) |
| @@ -125,6 +128,7 @@ ASN1_INTEGER_cmp(const ASN1_INTEGER *a, const ASN1_INTEGER *b) | |||
| 125 | 128 | ||
| 126 | return ret; | 129 | return ret; |
| 127 | } | 130 | } |
| 131 | LCRYPTO_ALIAS(ASN1_INTEGER_cmp); | ||
| 128 | 132 | ||
| 129 | int | 133 | int |
| 130 | asn1_aint_get_uint64(CBS *cbs, uint64_t *out_val) | 134 | asn1_aint_get_uint64(CBS *cbs, uint64_t *out_val) |
| @@ -248,6 +252,7 @@ ASN1_INTEGER_get_uint64(uint64_t *out_val, const ASN1_INTEGER *aint) | |||
| 248 | 252 | ||
| 249 | return 1; | 253 | return 1; |
| 250 | } | 254 | } |
| 255 | LCRYPTO_ALIAS(ASN1_INTEGER_get_uint64); | ||
| 251 | 256 | ||
| 252 | int | 257 | int |
| 253 | ASN1_INTEGER_set_uint64(ASN1_INTEGER *aint, uint64_t val) | 258 | ASN1_INTEGER_set_uint64(ASN1_INTEGER *aint, uint64_t val) |
| @@ -256,6 +261,7 @@ ASN1_INTEGER_set_uint64(ASN1_INTEGER *aint, uint64_t val) | |||
| 256 | 261 | ||
| 257 | return asn1_aint_set_uint64(val, &aint->data, &aint->length); | 262 | return asn1_aint_set_uint64(val, &aint->data, &aint->length); |
| 258 | } | 263 | } |
| 264 | LCRYPTO_ALIAS(ASN1_INTEGER_set_uint64); | ||
| 259 | 265 | ||
| 260 | int | 266 | int |
| 261 | ASN1_INTEGER_get_int64(int64_t *out_val, const ASN1_INTEGER *aint) | 267 | ASN1_INTEGER_get_int64(int64_t *out_val, const ASN1_INTEGER *aint) |
| @@ -278,6 +284,7 @@ ASN1_INTEGER_get_int64(int64_t *out_val, const ASN1_INTEGER *aint) | |||
| 278 | return asn1_aint_get_int64(&cbs, (aint->type == V_ASN1_NEG_INTEGER), | 284 | return asn1_aint_get_int64(&cbs, (aint->type == V_ASN1_NEG_INTEGER), |
| 279 | out_val); | 285 | out_val); |
| 280 | } | 286 | } |
| 287 | LCRYPTO_ALIAS(ASN1_INTEGER_get_int64); | ||
| 281 | 288 | ||
| 282 | int | 289 | int |
| 283 | ASN1_INTEGER_set_int64(ASN1_INTEGER *aint, int64_t val) | 290 | ASN1_INTEGER_set_int64(ASN1_INTEGER *aint, int64_t val) |
| @@ -295,6 +302,7 @@ ASN1_INTEGER_set_int64(ASN1_INTEGER *aint, int64_t val) | |||
| 295 | 302 | ||
| 296 | return asn1_aint_set_uint64(uval, &aint->data, &aint->length); | 303 | return asn1_aint_set_uint64(uval, &aint->data, &aint->length); |
| 297 | } | 304 | } |
| 305 | LCRYPTO_ALIAS(ASN1_INTEGER_set_int64); | ||
| 298 | 306 | ||
| 299 | long | 307 | long |
| 300 | ASN1_INTEGER_get(const ASN1_INTEGER *aint) | 308 | ASN1_INTEGER_get(const ASN1_INTEGER *aint) |
| @@ -312,12 +320,14 @@ ASN1_INTEGER_get(const ASN1_INTEGER *aint) | |||
| 312 | 320 | ||
| 313 | return (long)val; | 321 | return (long)val; |
| 314 | } | 322 | } |
| 323 | LCRYPTO_ALIAS(ASN1_INTEGER_get); | ||
| 315 | 324 | ||
| 316 | int | 325 | int |
| 317 | ASN1_INTEGER_set(ASN1_INTEGER *aint, long val) | 326 | ASN1_INTEGER_set(ASN1_INTEGER *aint, long val) |
| 318 | { | 327 | { |
| 319 | return ASN1_INTEGER_set_int64(aint, val); | 328 | return ASN1_INTEGER_set_int64(aint, val); |
| 320 | } | 329 | } |
| 330 | LCRYPTO_ALIAS(ASN1_INTEGER_set); | ||
| 321 | 331 | ||
| 322 | ASN1_INTEGER * | 332 | ASN1_INTEGER * |
| 323 | BN_to_ASN1_INTEGER(const BIGNUM *bn, ASN1_INTEGER *ai) | 333 | BN_to_ASN1_INTEGER(const BIGNUM *bn, ASN1_INTEGER *ai) |
| @@ -365,6 +375,7 @@ BN_to_ASN1_INTEGER(const BIGNUM *bn, ASN1_INTEGER *ai) | |||
| 365 | ASN1_INTEGER_free(ret); | 375 | ASN1_INTEGER_free(ret); |
| 366 | return (NULL); | 376 | return (NULL); |
| 367 | } | 377 | } |
| 378 | LCRYPTO_ALIAS(BN_to_ASN1_INTEGER); | ||
| 368 | 379 | ||
| 369 | BIGNUM * | 380 | BIGNUM * |
| 370 | ASN1_INTEGER_to_BN(const ASN1_INTEGER *ai, BIGNUM *bn) | 381 | ASN1_INTEGER_to_BN(const ASN1_INTEGER *ai, BIGNUM *bn) |
| @@ -380,6 +391,7 @@ ASN1_INTEGER_to_BN(const ASN1_INTEGER *ai, BIGNUM *bn) | |||
| 380 | BN_set_negative(ret, 1); | 391 | BN_set_negative(ret, 1); |
| 381 | return (ret); | 392 | return (ret); |
| 382 | } | 393 | } |
| 394 | LCRYPTO_ALIAS(ASN1_INTEGER_to_BN); | ||
| 383 | 395 | ||
| 384 | int | 396 | int |
| 385 | i2a_ASN1_INTEGER(BIO *bp, const ASN1_INTEGER *a) | 397 | i2a_ASN1_INTEGER(BIO *bp, const ASN1_INTEGER *a) |
| @@ -420,6 +432,7 @@ i2a_ASN1_INTEGER(BIO *bp, const ASN1_INTEGER *a) | |||
| 420 | err: | 432 | err: |
| 421 | return (-1); | 433 | return (-1); |
| 422 | } | 434 | } |
| 435 | LCRYPTO_ALIAS(i2a_ASN1_INTEGER); | ||
| 423 | 436 | ||
| 424 | int | 437 | int |
| 425 | a2i_ASN1_INTEGER(BIO *bp, ASN1_INTEGER *bs, char *buf, int size) | 438 | a2i_ASN1_INTEGER(BIO *bp, ASN1_INTEGER *bs, char *buf, int size) |
| @@ -509,6 +522,7 @@ a2i_ASN1_INTEGER(BIO *bp, ASN1_INTEGER *bs, char *buf, int size) | |||
| 509 | free(s); | 522 | free(s); |
| 510 | return (ret); | 523 | return (ret); |
| 511 | } | 524 | } |
| 525 | LCRYPTO_ALIAS(a2i_ASN1_INTEGER); | ||
| 512 | 526 | ||
| 513 | static void | 527 | static void |
| 514 | asn1_aint_twos_complement(uint8_t *data, size_t data_len) | 528 | asn1_aint_twos_complement(uint8_t *data, size_t data_len) |
| @@ -757,6 +771,7 @@ i2d_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **out) | |||
| 757 | { | 771 | { |
| 758 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &ASN1_INTEGER_it); | 772 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &ASN1_INTEGER_it); |
| 759 | } | 773 | } |
| 774 | LCRYPTO_ALIAS(i2d_ASN1_INTEGER); | ||
| 760 | 775 | ||
| 761 | ASN1_INTEGER * | 776 | ASN1_INTEGER * |
| 762 | d2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **in, long len) | 777 | d2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **in, long len) |
| @@ -764,6 +779,7 @@ d2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **in, long len) | |||
| 764 | return (ASN1_INTEGER *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 779 | return (ASN1_INTEGER *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 765 | &ASN1_INTEGER_it); | 780 | &ASN1_INTEGER_it); |
| 766 | } | 781 | } |
| 782 | LCRYPTO_ALIAS(d2i_ASN1_INTEGER); | ||
| 767 | 783 | ||
| 768 | /* This is a version of d2i_ASN1_INTEGER that ignores the sign bit of | 784 | /* This is a version of d2i_ASN1_INTEGER that ignores the sign bit of |
| 769 | * ASN1 integers: some broken software can encode a positive INTEGER | 785 | * ASN1 integers: some broken software can encode a positive INTEGER |
| @@ -838,3 +854,4 @@ d2i_ASN1_UINTEGER(ASN1_INTEGER **a, const unsigned char **pp, long length) | |||
| 838 | ASN1_INTEGER_free(ret); | 854 | ASN1_INTEGER_free(ret); |
| 839 | return (NULL); | 855 | return (NULL); |
| 840 | } | 856 | } |
| 857 | LCRYPTO_ALIAS(d2i_ASN1_UINTEGER); | ||
