summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortb <>2023-06-25 19:33:39 +0000
committertb <>2023-06-25 19:33:39 +0000
commitf9b83075010aefbd7b3db67c575c77e1a95f508a (patch)
tree55c4136825cbab3bbbf8d2441631d43d270f75d5
parentcf1c8770e1d3c36b47d2247e3815b5409c4316e5 (diff)
downloadopenbsd-f9b83075010aefbd7b3db67c575c77e1a95f508a.tar.gz
openbsd-f9b83075010aefbd7b3db67c575c77e1a95f508a.tar.bz2
openbsd-f9b83075010aefbd7b3db67c575c77e1a95f508a.zip
Move ECDSA_size() to ecs_ossl.c to match what was done in ecdh
-rw-r--r--src/lib/libcrypto/ecdsa/ecs_lib.c34
-rw-r--r--src/lib/libcrypto/ecdsa/ecs_ossl.c34
2 files changed, 34 insertions, 34 deletions
diff --git a/src/lib/libcrypto/ecdsa/ecs_lib.c b/src/lib/libcrypto/ecdsa/ecs_lib.c
index 477f49a6c2..743d517165 100644
--- a/src/lib/libcrypto/ecdsa/ecs_lib.c
+++ b/src/lib/libcrypto/ecdsa/ecs_lib.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ecs_lib.c,v 1.21 2023/06/25 19:04:35 tb Exp $ */ 1/* $OpenBSD: ecs_lib.c,v 1.22 2023/06/25 19:33:39 tb Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -103,38 +103,6 @@ ECDSA_set_method(EC_KEY *eckey, const ECDSA_METHOD *meth)
103} 103}
104 104
105int 105int
106ECDSA_size(const EC_KEY *r)
107{
108 BIGNUM *order = NULL;
109 const EC_GROUP *group;
110 ECDSA_SIG signature;
111 int ret = 0;
112
113 if (r == NULL)
114 goto err;
115
116 if ((group = EC_KEY_get0_group(r)) == NULL)
117 goto err;
118
119 if ((order = BN_new()) == NULL)
120 goto err;
121
122 if (!EC_GROUP_get_order(group, order, NULL))
123 goto err;
124
125 signature.r = order;
126 signature.s = order;
127
128 if ((ret = i2d_ECDSA_SIG(&signature, NULL)) < 0)
129 ret = 0;
130
131 err:
132 BN_free(order);
133
134 return ret;
135}
136
137int
138ECDSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, 106ECDSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
139 CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func) 107 CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func)
140{ 108{
diff --git a/src/lib/libcrypto/ecdsa/ecs_ossl.c b/src/lib/libcrypto/ecdsa/ecs_ossl.c
index 547d3b59e1..251a938e2d 100644
--- a/src/lib/libcrypto/ecdsa/ecs_ossl.c
+++ b/src/lib/libcrypto/ecdsa/ecs_ossl.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ecs_ossl.c,v 1.36 2023/06/25 19:04:35 tb Exp $ */ 1/* $OpenBSD: ecs_ossl.c,v 1.37 2023/06/25 19:33:39 tb Exp $ */
2/* 2/*
3 * Written by Nils Larsch for the OpenSSL project 3 * Written by Nils Larsch for the OpenSSL project
4 */ 4 */
@@ -580,3 +580,35 @@ ECDSA_verify(int type, const unsigned char *dgst, int dgst_len,
580 ECDSAerror(EVP_R_METHOD_NOT_SUPPORTED); 580 ECDSAerror(EVP_R_METHOD_NOT_SUPPORTED);
581 return 0; 581 return 0;
582} 582}
583
584int
585ECDSA_size(const EC_KEY *r)
586{
587 BIGNUM *order = NULL;
588 const EC_GROUP *group;
589 ECDSA_SIG signature;
590 int ret = 0;
591
592 if (r == NULL)
593 goto err;
594
595 if ((group = EC_KEY_get0_group(r)) == NULL)
596 goto err;
597
598 if ((order = BN_new()) == NULL)
599 goto err;
600
601 if (!EC_GROUP_get_order(group, order, NULL))
602 goto err;
603
604 signature.r = order;
605 signature.s = order;
606
607 if ((ret = i2d_ECDSA_SIG(&signature, NULL)) < 0)
608 ret = 0;
609
610 err:
611 BN_free(order);
612
613 return ret;
614}