Simon Butcher
25635f2288
Merge remote-tracking branch 'public/pr/1643' into development
2018-12-19 08:06:22 +00:00
Gilles Peskine
78438e4109
Test parameter validation for pk, pkparse and pkwrite
2018-12-19 00:55:47 +01:00
Gilles Peskine
e97dc60b42
Implement parameter validation in pk, pkparse and pkwrite
...
Add checks for null pointers under MBEDTLS_CHECK_PARAMS.
In functions that perform operations with a context, only check if the
context pointer is non-null under MBEDTLS_CHECK_PARAMS. In the default
configuration, unconditionally dereference the context pointer.
In functions that query a context, support NULL as a
pointer-to-context argument, and return the same value as for a
context which has been initialized but not set up.
2018-12-19 00:55:36 +01:00
Gilles Peskine
a310b41ebe
Add null-pointer support information to init/free
2018-12-19 00:51:21 +01:00
Hanno Becker
035c6baefe
Fix documentation bug in ECDSA module
2018-12-18 23:35:53 +00:00
Hanno Becker
c81cfece8f
Minor fixes to parameter validation in ECDH module
2018-12-18 23:32:42 +00:00
Hanno Becker
59274d43cb
Remove unnecessary call to mbedtls_mpi_free() in MPI tests
2018-12-18 23:27:03 +00:00
Hanno Becker
b48e1aa846
Add separate test for mbedtls_mpi_free() accepting NULL
2018-12-18 23:25:01 +00:00
Hanno Becker
3f1f4ad9bd
Weaken preconditions on mbedtls_[internal_]sha256_process()
2018-12-18 23:19:37 +00:00
Hanno Becker
79b9e39732
Weaken preconditions for mbedtls[_internal]_sha1_process()
2018-12-18 23:17:49 +00:00
Hanno Becker
d01ff493e5
Minor improvements in bignum documentation
2018-12-18 23:10:28 +00:00
Jaeden Amero
ee427b26d4
tests: Backup config.h before modifying it
...
It's good to make a backup of config.h before modifying it, so that when
"cleanup" runs the next test has a clean default config.h to start from.
Fixes 840af0a9ae
("Add tests to all.sh for CHECK_PARAMS edge cases")
2018-12-18 21:14:28 +00:00
Hanno Becker
a7634e8347
Fix wrong invocation of parameter validation macro in ECDH module
2018-12-18 18:45:00 +00:00
Hanno Becker
3f2d1ef169
Fix typo in SHA512 documentation
2018-12-18 18:41:40 +00:00
Hanno Becker
42f783d3b7
Fix minor issues in SHA1 documentation
2018-12-18 18:39:32 +00:00
Hanno Becker
d73101266d
Don't promise that passing a NULL to mbedtls_mpi_read_string works
2018-12-18 18:12:13 +00:00
Hanno Becker
01c3c10640
Fix typos in documentation of bignum module
...
Found by doxygen.sh
2018-12-18 18:12:13 +00:00
Hanno Becker
e118504a5f
Numerous minor improvements to bignum documentation
2018-12-18 18:12:13 +00:00
Hanno Becker
56b661cbf8
Add test that mbedtls_mpi_free() accepts NULL parameter
2018-12-18 18:12:13 +00:00
Hanno Becker
54c91dd235
Remove double semicolon from bignum.c
2018-12-18 18:12:13 +00:00
Hanno Becker
8282c2f070
Minor improvements to bignum documentation
2018-12-18 18:12:13 +00:00
Hanno Becker
afb607b9db
Add tests for parameter validation in MPI module
2018-12-18 18:12:13 +00:00
Hanno Becker
73d7d79bc1
Implement parameter validation for MPI module
2018-12-18 18:12:13 +00:00
Hanno Becker
c23483ed8c
Document preconditions on parameters in public bignum API
2018-12-18 18:12:13 +00:00
Hanno Becker
974ca0d947
Fix documentation bug on necessity of RNG in RSA PKCS v1.5
2018-12-18 18:03:24 +00:00
Hanno Becker
38e15d49f3
Don't declare MBEDTLS-namespace identifiers in sha512.c
2018-12-18 17:54:00 +00:00
Hanno Becker
8d215e7130
Don't define MBEDTLS-namespace macros in sha256.c
2018-12-18 17:53:21 +00:00
Hanno Becker
039ccab243
Don't declare MBEDTLS-namespace macros in sha1.c
2018-12-18 17:52:14 +00:00
Hanno Becker
2f660d047d
Forbid passing NULL input buffers to RSA encryption routines
2018-12-18 17:07:30 +00:00
Hanno Becker
d22df58a56
Add missing guards around SHA-1 tests
2018-12-18 17:02:03 +00:00
Hanno Becker
9171c6e9ec
Leave behaviour on NULL buffers to SHA-1 unspecified for now
...
We deal correctly with NULL being passed alongside a zero length
argument, but don't have tests for it, so we shouldn't promise
that it works.
2018-12-18 17:01:58 +00:00
Hanno Becker
adc9b178ca
Minor improvements to DHM module
2018-12-18 16:59:09 +00:00
Hanno Becker
8c8a93c574
Test parameter validation for DHM module
2018-12-18 16:59:09 +00:00
Hanno Becker
5c14ed6f86
Implement parameter validation for DHM module
2018-12-18 16:59:09 +00:00
Hanno Becker
6c5c45f400
Document parameter preconditions in DHM module
2018-12-18 16:59:09 +00:00
Hanno Becker
4fbd4bf442
Fix guard in SHA-512 tests
2018-12-18 16:37:43 +00:00
Hanno Becker
ca6f4585c7
Fix parameter validation in SHA-512 module
2018-12-18 16:36:26 +00:00
Hanno Becker
fc2a0b2e67
Minor SHA-256 documentation improvement
2018-12-18 16:32:50 +00:00
Hanno Becker
596e014a06
Add validation is is224
argument in mbedtls_sha256_starts_ret()
2018-12-18 16:31:06 +00:00
Hanno Becker
230b4f4159
Fix definition of MBEDTLS_SHA256_VALIDATE[_RET] in sha256.c
2018-12-18 16:31:06 +00:00
Hanno Becker
36beb04fd5
Add tests or SHA-256 parameter validation
2018-12-18 16:31:06 +00:00
Hanno Becker
77886af63e
Improve SHA-256 documentation on parameter preconditions
2018-12-18 16:30:36 +00:00
Hanno Becker
686c9a0e8d
Test SHA-512 parameter validation
2018-12-18 15:33:14 +00:00
Hanno Becker
ad7581fac5
Minor improvements to ChaCha20/Poly1305/ChaChaPoly documentation
2018-12-18 15:30:30 +00:00
Hanno Becker
a994b2379f
Test that xxx_free() functions accept NULL parameter
2018-12-18 15:30:30 +00:00
Hanno Becker
236ea16c01
Fix wrong conditional in free() functions
2018-12-18 15:30:30 +00:00
Hanno Becker
e463c42902
Minor improvements
2018-12-18 15:30:30 +00:00
Hanno Becker
ae2ff02ff1
Add tests for ChaChaPoly parameter validation
...
Parameter validation was previously performed and tested unconditionally
for the ChaCha/Poly modules. This commit therefore only needs go guard the
existing tests accordingly and use the appropriate test macros for parameter
validation.
2018-12-18 15:30:30 +00:00
Hanno Becker
305e4e4f32
Implement parameter validation for ChaCha/Poly modules
2018-12-18 15:30:30 +00:00
Hanno Becker
b3c10b348b
Add documentation on parameter preconditions to ChaChaPoly modules
2018-12-18 15:30:30 +00:00