Fix a ** 0 mod 1 = 0 for real this time.
authorEmilia Kasper <emilia@openssl.org>
Mon, 14 Dec 2015 15:38:15 +0000 (16:38 +0100)
committerEmilia Kasper <emilia@openssl.org>
Mon, 14 Dec 2015 16:39:39 +0000 (17:39 +0100)
commitd911097d7c93e4cfeab624b34d73fe51da158b69
treefaf6956c8b1394033183f0e3422e42723aa6f305
parent81eae077ce679c1d7d29e19991bf055e4888a2fc
Fix a ** 0 mod 1 = 0 for real this time.

Commit 2b0180c37fa6ffc48ee40caa831ca398b828e680 attempted to do this but
only hit one of many BN_mod_exp codepaths. Fix remaining variants and add
a test for each method.

Thanks to Hanno Boeck for reporting this issue.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
crypto/bn/bn_exp.c
test/exptest.c