boringssl/crypto
David Benjamin 5148345282 BN_mod_exp_mont_consttime: check for zero modulus.
Don't dereference |d| when |top| is zero. Also test that various BIGNUM
methods behave correctly on zero/even inputs.

(Imported from upstream's cf633fa00244e39eea2f2c0b623f7d5bbefa904e.)

We already had the BN_div and BN_MONT_CTX_set tests, but align them with
upstream's for consistency.

Change-Id: Ice5d04f559b4d5672e23c400637c07d8ee401727
Reviewed-on: https://boringssl-review.googlesource.com/5783
Reviewed-by: Adam Langley <agl@google.com>
2015-09-01 19:12:28 +00:00
..
aes Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
asn1 Fix the type of ASN1_i2d_bio's last argument. 2015-08-28 22:03:54 +00:00
base64 Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
bio fread returns a size_t, not int. 2015-08-28 22:46:40 +00:00
bn BN_mod_exp_mont_consttime: check for zero modulus. 2015-09-01 19:12:28 +00:00
buf Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
bytestring Factor out the buffering and low-level record code. 2015-08-28 22:01:02 +00:00
chacha Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
cipher Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
cmac Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
conf Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
des Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
dh Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
digest Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
dsa Fix dsa keygen for too-short seed 2015-09-01 19:09:22 +00:00
ec Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
ecdh Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
ecdsa Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
engine Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
err Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
evp Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
hkdf Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
hmac Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
lhash Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
md4 Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
md5 Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
modes Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
obj Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
pem Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
perlasm Emit #if guards for ARM assembly files. 2015-06-23 21:00:32 +00:00
pkcs8 pkcs8.c: Add PBES2 to list of password-based encryption methods. 2015-08-28 20:33:33 +00:00
poly1305 Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
rand Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
rc4 Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
rsa Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
sha Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
stack Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
test pkcs8.c: Add PBES2 to list of password-based encryption methods. 2015-08-28 20:33:33 +00:00
x509 Fix memory leaks on error in x_x509a.c. 2015-08-31 18:54:17 +00:00
x509v3 Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
CMakeLists.txt Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
constant_time_test.c
cpu-arm-asm.S
cpu-arm.c Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
cpu-intel.c Surround immintrin.h includes with warning pragmas. 2015-07-20 20:08:26 +00:00
crypto.c Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
directory_posix.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
directory_win.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
directory.h
ex_data.c Reserve ex_data index zero for app_data. 2015-07-20 16:56:34 +00:00
header_removed.h
internal.h Reserve ex_data index zero for app_data. 2015-07-20 16:56:34 +00:00
mem.c Fix some typos in license headers. 2015-07-29 19:23:51 +00:00
refcount_c11.c Cast refcounts to _Atomic before use. 2015-05-20 13:39:22 -07:00
refcount_lock.c Add infrastructure for reference counts. 2015-05-20 19:14:59 +00:00
refcount_test.c Specify argc and argv arguments to refcount_test:main. 2015-05-20 13:49:41 -07:00
thread_none.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread_pthread.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread_test.c Use the correct case for Windows headers. 2015-06-09 21:38:04 +00:00
thread_win.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread.c Remove leftovers of the old-style locks. 2015-05-20 19:18:44 +00:00
time_support.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00