From: Niels Möller Date: Fri, 15 Nov 2002 23:23:04 +0000 (+0100) Subject: (nettle_mpz_set_sexp): In the first check against X-Git-Tag: nettle_1.7_release_20030311~123 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=093e19c07e1812f8dcd52eb4b18f48ab85778a69;p=thirdparty%2Fnettle.git (nettle_mpz_set_sexp): In the first check against limit, added some margin to allow for sign octets. Rev: src/nettle/sexp2bignum.c:1.3 --- diff --git a/sexp2bignum.c b/sexp2bignum.c index 69757cee..f7ef6884 100644 --- a/sexp2bignum.c +++ b/sexp2bignum.c @@ -38,10 +38,12 @@ nettle_mpz_set_sexp(mpz_t x, unsigned limit, const struct sexp_iterator *i) && i->atom_length && !i->display) { - if (limit && (8 * i->atom_length > limit)) + /* Allow some extra here, for leading sign octets. */ + if (limit && (8 * i->atom_length > (16 + limit))) return 0; nettle_mpz_set_str_256_s(x, i->atom_length, i->atom); + /* FIXME: How to interpret a limit for negative numbers? */ return !limit || mpz_sizeinbase(x, 2) <= limit; } else