]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
Fixed mpn_get_base256_le buffer overwrite.
authorNiels Möller <nisse@lysator.liu.se>
Wed, 17 Sep 2014 19:51:46 +0000 (21:51 +0200)
committerNiels Möller <nisse@lysator.liu.se>
Wed, 17 Sep 2014 19:51:46 +0000 (21:51 +0200)
ChangeLog
gmp-glue.c

index 01f6cab744b61cd5bd35f008bc9fd723fa480679..cb3edea5629acb23218ac153b42a892245c2bbfc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2014-09-17  Niels Möller  <nisse@lysator.liu.se>
 
+       * gmp-glue.c (mpn_get_base256_le): Fixed missing update of rn
+       counter, making the function clear some bytes beyond the end of
+       the output buffer. The bug triggered a make check failure on ARM.
+
        * testsuite/testutils.c (ecc_curves): Include curve25519 in list.
        (test_ecc_mul_a): Include reference points for curve25519 (with
        Edwards coordinates). Allow n == 0 and n == 1, comparing to zero
index 5de167eb87cca2920cb23b60301de2b998f294bd..f9a5e358c7de297a5c7a1e49d0c294142e3d1570 100644 (file)
@@ -293,6 +293,7 @@ mpn_get_base256_le (uint8_t *rp, size_t rn,
          in = *xp++;
          xn--;
          *rp++ = old | (in << bits);
+         rn--;
          in >>= (8 - bits);
          bits += GMP_NUMB_BITS - 8;
        }