summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/ecdsa/ecdsa.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/ecdsa/ecdsa.c')
-rw-r--r--src/lib/libcrypto/ecdsa/ecdsa.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/lib/libcrypto/ecdsa/ecdsa.c b/src/lib/libcrypto/ecdsa/ecdsa.c
index b9c7ea6381..5a93b84637 100644
--- a/src/lib/libcrypto/ecdsa/ecdsa.c
+++ b/src/lib/libcrypto/ecdsa/ecdsa.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ecdsa.c,v 1.10 2023/07/05 17:10:10 tb Exp $ */ 1/* $OpenBSD: ecdsa.c,v 1.11 2023/07/07 13:54:45 beck Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -104,24 +104,28 @@ d2i_ECDSA_SIG(ECDSA_SIG **a, const unsigned char **in, long len)
104 return (ECDSA_SIG *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, 104 return (ECDSA_SIG *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
105 &ECDSA_SIG_it); 105 &ECDSA_SIG_it);
106} 106}
107LCRYPTO_ALIAS(d2i_ECDSA_SIG);
107 108
108int 109int
109i2d_ECDSA_SIG(const ECDSA_SIG *a, unsigned char **out) 110i2d_ECDSA_SIG(const ECDSA_SIG *a, unsigned char **out)
110{ 111{
111 return ASN1_item_i2d((ASN1_VALUE *)a, out, &ECDSA_SIG_it); 112 return ASN1_item_i2d((ASN1_VALUE *)a, out, &ECDSA_SIG_it);
112} 113}
114LCRYPTO_ALIAS(i2d_ECDSA_SIG);
113 115
114ECDSA_SIG * 116ECDSA_SIG *
115ECDSA_SIG_new(void) 117ECDSA_SIG_new(void)
116{ 118{
117 return (ECDSA_SIG *)ASN1_item_new(&ECDSA_SIG_it); 119 return (ECDSA_SIG *)ASN1_item_new(&ECDSA_SIG_it);
118} 120}
121LCRYPTO_ALIAS(ECDSA_SIG_new);
119 122
120void 123void
121ECDSA_SIG_free(ECDSA_SIG *a) 124ECDSA_SIG_free(ECDSA_SIG *a)
122{ 125{
123 ASN1_item_free((ASN1_VALUE *)a, &ECDSA_SIG_it); 126 ASN1_item_free((ASN1_VALUE *)a, &ECDSA_SIG_it);
124} 127}
128LCRYPTO_ALIAS(ECDSA_SIG_free);
125 129
126void 130void
127ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) 131ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps)
@@ -131,18 +135,21 @@ ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps)
131 if (ps != NULL) 135 if (ps != NULL)
132 *ps = sig->s; 136 *ps = sig->s;
133} 137}
138LCRYPTO_ALIAS(ECDSA_SIG_get0);
134 139
135const BIGNUM * 140const BIGNUM *
136ECDSA_SIG_get0_r(const ECDSA_SIG *sig) 141ECDSA_SIG_get0_r(const ECDSA_SIG *sig)
137{ 142{
138 return sig->r; 143 return sig->r;
139} 144}
145LCRYPTO_ALIAS(ECDSA_SIG_get0_r);
140 146
141const BIGNUM * 147const BIGNUM *
142ECDSA_SIG_get0_s(const ECDSA_SIG *sig) 148ECDSA_SIG_get0_s(const ECDSA_SIG *sig)
143{ 149{
144 return sig->s; 150 return sig->s;
145} 151}
152LCRYPTO_ALIAS(ECDSA_SIG_get0_s);
146 153
147int 154int
148ECDSA_SIG_set0(ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s) 155ECDSA_SIG_set0(ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s)
@@ -156,6 +163,7 @@ ECDSA_SIG_set0(ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s)
156 sig->s = s; 163 sig->s = s;
157 return 1; 164 return 1;
158} 165}
166LCRYPTO_ALIAS(ECDSA_SIG_set0);
159 167
160int 168int
161ECDSA_size(const EC_KEY *r) 169ECDSA_size(const EC_KEY *r)
@@ -183,6 +191,7 @@ ECDSA_size(const EC_KEY *r)
183 err: 191 err:
184 return ret; 192 return ret;
185} 193}
194LCRYPTO_ALIAS(ECDSA_size);
186 195
187/* 196/*
188 * FIPS 186-5, section 6.4.1, step 2: convert hashed message into an integer. 197 * FIPS 186-5, section 6.4.1, step 2: convert hashed message into an integer.
@@ -751,6 +760,7 @@ ECDSA_do_sign(const unsigned char *digest, int digest_len, EC_KEY *key)
751{ 760{
752 return ECDSA_do_sign_ex(digest, digest_len, NULL, NULL, key); 761 return ECDSA_do_sign_ex(digest, digest_len, NULL, NULL, key);
753} 762}
763LCRYPTO_ALIAS(ECDSA_do_sign);
754 764
755ECDSA_SIG * 765ECDSA_SIG *
756ECDSA_do_sign_ex(const unsigned char *digest, int digest_len, 766ECDSA_do_sign_ex(const unsigned char *digest, int digest_len,
@@ -762,6 +772,7 @@ ECDSA_do_sign_ex(const unsigned char *digest, int digest_len,
762 } 772 }
763 return key->meth->sign_sig(digest, digest_len, kinv, out_r, key); 773 return key->meth->sign_sig(digest, digest_len, kinv, out_r, key);
764} 774}
775LCRYPTO_ALIAS(ECDSA_do_sign_ex);
765 776
766int 777int
767ECDSA_sign(int type, const unsigned char *digest, int digest_len, 778ECDSA_sign(int type, const unsigned char *digest, int digest_len,
@@ -770,6 +781,7 @@ ECDSA_sign(int type, const unsigned char *digest, int digest_len,
770 return ECDSA_sign_ex(type, digest, digest_len, signature, signature_len, 781 return ECDSA_sign_ex(type, digest, digest_len, signature, signature_len,
771 NULL, NULL, key); 782 NULL, NULL, key);
772} 783}
784LCRYPTO_ALIAS(ECDSA_sign);
773 785
774int 786int
775ECDSA_sign_ex(int type, const unsigned char *digest, int digest_len, 787ECDSA_sign_ex(int type, const unsigned char *digest, int digest_len,
@@ -783,6 +795,7 @@ ECDSA_sign_ex(int type, const unsigned char *digest, int digest_len,
783 return key->meth->sign(type, digest, digest_len, signature, 795 return key->meth->sign(type, digest, digest_len, signature,
784 signature_len, kinv, r, key); 796 signature_len, kinv, r, key);
785} 797}
798LCRYPTO_ALIAS(ECDSA_sign_ex);
786 799
787int 800int
788ECDSA_sign_setup(EC_KEY *key, BN_CTX *in_ctx, BIGNUM **out_kinv, 801ECDSA_sign_setup(EC_KEY *key, BN_CTX *in_ctx, BIGNUM **out_kinv,
@@ -794,6 +807,7 @@ ECDSA_sign_setup(EC_KEY *key, BN_CTX *in_ctx, BIGNUM **out_kinv,
794 } 807 }
795 return key->meth->sign_setup(key, in_ctx, out_kinv, out_r); 808 return key->meth->sign_setup(key, in_ctx, out_kinv, out_r);
796} 809}
810LCRYPTO_ALIAS(ECDSA_sign_setup);
797 811
798int 812int
799ECDSA_do_verify(const unsigned char *digest, int digest_len, 813ECDSA_do_verify(const unsigned char *digest, int digest_len,
@@ -805,6 +819,7 @@ ECDSA_do_verify(const unsigned char *digest, int digest_len,
805 } 819 }
806 return key->meth->verify_sig(digest, digest_len, sig, key); 820 return key->meth->verify_sig(digest, digest_len, sig, key);
807} 821}
822LCRYPTO_ALIAS(ECDSA_do_verify);
808 823
809int 824int
810ECDSA_verify(int type, const unsigned char *digest, int digest_len, 825ECDSA_verify(int type, const unsigned char *digest, int digest_len,
@@ -816,3 +831,4 @@ ECDSA_verify(int type, const unsigned char *digest, int digest_len,
816 } 831 }
817 return key->meth->verify(type, digest, digest_len, sigbuf, sig_len, key); 832 return key->meth->verify(type, digest, digest_len, sigbuf, sig_len, key);
818} 833}
834LCRYPTO_ALIAS(ECDSA_verify);