summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNIIBE Yutaka <gniibe@fsij.org>2017-08-23 11:11:17 +0900
committerNIIBE Yutaka <gniibe@fsij.org>2017-08-23 11:11:17 +0900
commit2b1ba75e108c90d69bbf7cf161def06763d22e48 (patch)
tree69d0d5639a04aa581c7229bc45d0616cb688563b
parentaeca1f0afc9091dab9fe1f018ea600064531ccf0 (diff)
downloadlibgcrypt-2b1ba75e108c90d69bbf7cf161def06763d22e48.tar.gz
ecc: Relax condition for 25519 computations.
* mpi/ec.c (ec_addm_25519, ec_subm_25519, ec_mulm_25519): Check number of limbs, allocated more is OK. Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
-rw-r--r--mpi/ec.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/mpi/ec.c b/mpi/ec.c
index 21cf78b4..c6419ba9 100644
--- a/mpi/ec.c
+++ b/mpi/ec.c
@@ -396,7 +396,7 @@ ec_addm_25519 (gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, mpi_ec_t ctx)
mpi_limb_t n[LIMB_SIZE_25519];
mpi_limb_t borrow;
- if (w->alloced != wsize || u->alloced != wsize || v->alloced != wsize)
+ if (w->nlimbs != wsize || u->nlimbs != wsize || v->nlimbs != wsize)
log_bug ("addm_25519: different sizes\n");
memset (n, 0, sizeof n);
@@ -419,7 +419,7 @@ ec_subm_25519 (gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, mpi_ec_t ctx)
mpi_limb_t n[LIMB_SIZE_25519];
mpi_limb_t borrow;
- if (w->alloced != wsize || u->alloced != wsize || v->alloced != wsize)
+ if (w->nlimbs != wsize || u->nlimbs != wsize || v->nlimbs != wsize)
log_bug ("subm_25519: different sizes\n");
memset (n, 0, sizeof n);
@@ -444,7 +444,7 @@ ec_mulm_25519 (gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, mpi_ec_t ctx)
int msb;
(void)ctx;
- if (w->alloced != wsize || u->alloced != wsize || v->alloced != wsize)
+ if (w->nlimbs != wsize || u->nlimbs != wsize || v->nlimbs != wsize)
log_bug ("mulm_25519: different sizes\n");
up = u->d;