Simon Butcher
1c8b33ad19
Merge branch 'development'
2016-10-13 13:40:41 +01:00
Janos Follath
e709f7c9e0
Fix global variable shadowing
2016-10-13 13:20:12 +01:00
Simon Butcher
e019296ab7
Fix stdio redirection memory leak in test suites
2016-10-13 10:03:08 +01:00
Janos Follath
ef44178474
Restore P>Q in RSA key generation ( #558 )
...
The PKCS#1 standard says nothing about the relation between P and Q
but many libraries guarantee P>Q and mbed TLS did so too in earlier
versions.
This commit restores this behaviour.
2016-10-13 00:25:07 +01:00
Janos Follath
99d09d2747
Fix memory leaks in CMAC tests
2016-10-12 15:32:54 +01:00
Andres AG
c4424c0a69
Fix memory leak in test_suite_cmac.function
2016-10-12 15:32:53 +01:00
Janos Follath
d444358247
Fix memory leaks in CMAC tests
2016-10-12 14:31:01 +01:00
Andres AG
8abc6b86f9
Fix memory leak in test_suite_cmac.function
2016-10-12 00:40:16 +01:00
Andres AG
e0af995f12
Add test for bounds in X509 DER write funcs
2016-10-11 14:07:48 +01:00
Janos Follath
8ca53b51c5
Fix minor style issues in test framework
2016-10-11 12:25:34 +01:00
Simon Butcher
2573136fa8
Fix to test output in test suites
...
Fixes the test suites to consistently use mbedtls_fprintf to output to
stdout or stderr.
Also redirects output from the tests to /dev/null to avoid confusing
output if the test suite code or library outputs anything to stdout.
2016-10-11 12:25:34 +01:00
Simon Butcher
bd8d221920
Fix exit and formatting in CMAC test suite
...
Minor fixes following review.
2016-10-11 12:25:04 +01:00
Simon Butcher
33183fd408
Extend test coverage of CMAC
...
Expands tests to include NULL tests and successive calls to
mbedtls_cipher_cmac_update() and mbedtls_cipher_cmac_reset().
2016-10-11 12:25:04 +01:00
Simon Butcher
69283e51d5
Clean up and minor fixes following review
...
Minor fixes following review including:
* formatting changes including indentation and code style
* corrections
* removal of debug code
* clarification of code through variable renaming
* memory leak
* compiler warnings
2016-10-06 12:49:58 +01:00
Simon Butcher
d812fa69d9
Introduce a CMAC specific test suite
2016-10-05 14:19:18 +01:00
Andres AG
4b76aecaf3
Add check for validity of date in x509_get_time()
2016-09-28 14:32:54 +01:00
Andres AG
93012e8bce
Set selftest verbose flag to boost coverage
2016-09-27 17:29:22 +01:00
Simon Butcher
b7f45c54a7
Fixes for entropy test suite for some configurations
...
Changes to allow the entropy tests to work for configurations without an
entropy seed file (MBEDTLS_ENTROPY_NV_SEED), and with no entropy sources
configured (MBEDTLS_TEST_NULL_ENTROPY).
2016-09-15 18:42:26 +01:00
Simon Butcher
7dda0dd038
Fix typo in dependency in test_suite_debug.data
2016-09-04 15:14:38 +01:00
palaviv
f180df99a9
Added needed ECDSA dependencies to test_suite_x509parse.data
2016-09-04 15:14:38 +01:00
palaviv
00cb9c5c08
Added needed HASH dependencies to tests/suites/test_suite_pkparse.data
2016-09-04 15:14:38 +01:00
palaviv
1472f11608
Added needed HASH dependencies to test_suite_debug.data
2016-09-04 15:14:38 +01:00
palaviv
a07ecda04e
Added needed HASH dependencies to test_suite_x509parse.data
2016-09-04 15:14:38 +01:00
Andres AG
e7723ec284
Make entropy bias self test poll multiple times
...
Instead of polling the hardware entropy source a single time and
comparing the output with itself, the source is polled at least twice
and make sure that the separate outputs are different.
2016-08-30 16:50:48 +01:00
Andres AG
b34e42e69e
Add a new self test to entropy module
...
The self test is a quick way to check at startup whether the entropy
sources are functioning correctly. The self test only polls 8 bytes
from the default entropy source and performs the following checks:
- The bytes are not all 0x00 or 0xFF.
- The hardware does not return an error when polled.
- The entropy does not provide data in a patter. Only check pattern
at byte, word and long word sizes.
2016-08-30 16:50:48 +01:00
Andres AG
99b257ca19
Fix memory leak in test_suite_md.function
2016-08-26 17:21:14 +01:00
Paul Bakker
50157ff5ab
Add new timing test suite that runs the timing self test
2016-08-25 16:36:35 +01:00
Paul Bakker
81c60910e1
Run PKCS#5 selftest in test suites
2016-08-25 16:36:35 +01:00
Simon Butcher
80cd444978
Adds missing dependency to AES special case tests
...
Added MBEDTLS_AES_C to the AES cipher special behaviours test case.
2016-08-25 15:42:28 +01:00
Paul Bakker
5c57e02b1d
Fix style issues in test_suite_md.function
2016-08-25 15:42:28 +01:00
Paul Bakker
6a9c725652
Add Cipher layer corner case test coverage
2016-08-25 15:42:28 +01:00
Paul Bakker
185ccf7070
Add coverage for CTR-DRBG corner case function behaviours
2016-08-25 15:42:28 +01:00
Paul Bakker
ec5ceb65d6
Test invalid bit value in mbedtls_mpi_set_bit()
2016-08-25 15:42:28 +01:00
Paul Bakker
c7d6bd4b5f
Add mbedtls_asn1_write_len() support for 3 and 4 byte lengths
...
As a consequence also adds coverage for reading 3 and 4 byte lengths
(which were not covered before)
2016-08-25 15:42:27 +01:00
Paul Bakker
5e8b77cd8c
Test result of mbedtls_asn1_write_len() through mbedtls_asn1_get_len()
2016-08-25 15:42:27 +01:00
Paul Bakker
58bfb83bb0
Add buffer length tests for mbedtls_asn1_write_len()
2016-08-25 15:42:27 +01:00
Paul Bakker
e325db9055
Add explicit test coverage for mbedtls_asn1_write_len()
2016-08-25 15:42:27 +01:00
Paul Bakker
97c53c2867
Add coverage testing of mbedtls_md_clone() (and wraps)
...
+13 functions, +57 lines
2016-08-25 15:42:27 +01:00
Paul Bakker
e35afa28f7
Update *_multi tests in test_suite_md to do more than 1 step
2016-08-25 15:42:27 +01:00
Simon Butcher
905cef6c2c
Changed library version number to 2.3.0
2016-06-27 19:36:45 +01:00
Simon Butcher
ab069c6b46
Merge branch 'development' into development-restricted
2016-06-23 21:42:26 +01:00
Simon Butcher
02c4a38013
Corrects missing dependency for MBEDTLS_CIPHER_MODE_CBC in some tests
2016-06-23 02:41:31 +01:00
Janos Follath
15ab7ed0f3
Merge branch 'development' into development-restricted
...
Conflicts:
programs/pkey/rsa_decrypt.c
programs/pkey/rsa_encrypt.c
programs/test/selftest.c
2016-06-14 09:20:46 +01:00
Paul Bakker
c568762a5c
Fix dependency on MBEDTLS_ENTROPY_SHA512_ACCUMULATOR in test suite
2016-06-07 13:00:43 +01:00
Paul Bakker
b598c293ce
Fix dependency guard for test
2016-06-01 16:57:11 +01:00
Paul Bakker
4a6c6fc72d
Properly gate NV_SEED additions in test suite
2016-06-01 16:34:50 +01:00
Paul Bakker
ffbfb4c24c
Add test cases for NV seed functionality
...
A standard 'test' that writes a seed file is added so that regular tests
still can succeed. This is in lieu of a 'SUITE_PRE_CODE' kind of
arrangement where a suite can run code before (and after) all other code
runs.
A test is added that checks if we can read and write the standard NV
seed file
A test is added that actually checks if the entropy and seed file values
that are the result of just using the NV seed are the same as the manual
calculation.
2016-06-01 16:34:50 +01:00
Janos Follath
04b591ee79
Merge branch 'development' for weekly test report.
2016-05-31 10:18:41 +01:00
Simon Butcher
65b1fa6b07
Fixes warnings found by Clang static analyser
...
Also removes annotations in the code to avoid warnings which don't appear to
be needed.
2016-05-23 23:18:26 +01:00
Paul Bakker
774180e14e
Fix memory-leak in verbose test framework in case of unexpected input
2016-05-23 14:29:31 +01:00
Paul Bakker
26b60bf7d1
Fox verbose test framework not to duplicate strings if not verbose
2016-05-23 14:29:31 +01:00
Paul Bakker
a30a72f80f
Fix verbose test framework mote to use unmet_dep_count for index
2016-05-23 14:29:31 +01:00
Simon Butcher
a557cfb9ad
Widens test bounds on memory alloc tests
2016-05-23 14:29:30 +01:00
Simon Butcher
4ec1e8193e
Widens test parameters in memory alloc tests
2016-05-23 14:29:30 +01:00
SimonB
214f5c0af2
Additional tests to test stack buffer allocator
...
Adds additional tests to the test suite for
memory_buffer_alloc.c
2016-05-23 14:29:29 +01:00
SimonB
20273ddc4c
Adds reporting of file/line no. in failed tests
...
Tests in tests/suites will now report the file and line number of
failed test assertions.
2016-05-23 14:29:29 +01:00
Nicholas Wilson
b19bac4d82
Allow test suites to be run on Windows
...
For a start, they don't even compile with Visual Studio due to strcasecmp
being missing. Secondly, on Windows Perl scripts aren't executable and have
to be run using the Perl interpreter directly; thankfully CMake is able to
find cygwin Perl straight away without problems.
2016-05-23 14:29:28 +01:00
Simon Butcher
94bafdf834
Merge branch 'development'
2016-05-18 18:40:46 +01:00
Simon Butcher
edb7fd9d76
Fixes stdlib.h dependencies in test suites
...
Moved stdlib.h in test suites, so platforms that don't support
MBEDTLS_PLATFORM_C would build.
2016-05-17 13:35:51 +01:00
Simon Butcher
c21bec8af4
Merge branch 'development'
2016-05-16 16:15:20 +01:00
Paul Bakker
53f01199e2
Fix memory-leak in verbose test framework in case of unexpected input
2016-05-12 15:59:48 +01:00
Paul Bakker
2a259c63e3
Fox verbose test framework not to duplicate strings if not verbose
2016-05-12 15:55:37 +01:00
Paul Bakker
6e51915187
Fix verbose test framework mote to use unmet_dep_count for index
2016-05-12 15:52:48 +01:00
Paul Bakker
324258fdc8
Merge pull request #353 from NWilson/win-tests
...
Allow test suites to be run on Windows
2016-05-11 20:09:13 +02:00
Simon Butcher
938f65c452
Merge 'development' into development
2016-05-10 20:58:54 +01:00
Simon Butcher
e9f25c8a60
Widens test bounds on memory alloc tests
2016-05-10 20:57:03 +01:00
Simon Butcher
d96924de9c
Widens test parameters in memory alloc tests
2016-05-06 00:22:18 +01:00
SimonB
a0ed709f05
Additional tests to test stack buffer allocator
...
Adds additional tests to the test suite for
memory_buffer_alloc.c
2016-05-05 14:25:03 +01:00
SimonB
31a6c49139
Adds reporting of file/line no. in failed tests
...
Tests in tests/suites will now report the file and line number of
failed test assertions.
2016-05-05 14:25:03 +01:00
Simon Butcher
e4a46f696f
Merge branch 'development'
2016-04-27 18:44:37 +01:00
Simon Butcher
b2d5dd105d
Fixes X509 sample app and SSL test suite
...
Fixes the X.509 cert_app and the SSL test suite for the non-default
configs which don't build with if MBEDTLS_PLATFORM_C isn't defined.
2016-04-27 13:35:37 +01:00
SimonB
1594210a49
Adds better support to debug generated code
...
The commit adds to the generate_code.pl script support to add #line directives
to generated code to allow build breaks to be more easily found from the
generated code.
2016-04-26 14:46:56 +01:00
Simon Butcher
956420d6e6
Merge branch 'development'
2016-04-19 19:29:09 +01:00
Janos Follath
55abc21521
Fix ci break in builds without platform.h
2016-04-19 15:15:53 +01:00
Simon Butcher
2300776816
Merge branch 'development'
2016-04-19 10:39:36 +01:00
Janos Follath
f5e254a9ff
Remove unused code from PKCS1v15 test suite
2016-04-18 10:00:55 +01:00
SimonB
8ca7bc42d0
Adds verbose mode to the test suites
...
Added a verbose option to the generated test suites which can list the
dependencies not met for skipped test cases.
Also clarifies internal interfaces between the main_test.function and test code,
and fixed a bug on calculating available tests in run-test-suites.pl.
2016-04-17 23:24:50 +01:00
Simon Butcher
3f5c875654
Adds test for odd bit length RSA key size
...
Also tidy up ChangeLog following review.
2016-04-15 19:06:59 +01:00
Simon Butcher
0914ac47d2
Add missing config dependencies to PKCS1 V15 tests
2016-04-13 14:49:25 +01:00
Janos Follath
e6aef9fa70
Add tests to cover PKCS1 v1.5 signature functions.
...
The reported memory leak should have been spotted by
make memcheck
But it wasn't. Keeping the tests for better coverage.
2016-04-11 23:32:26 +01:00
Janos Follath
4c5dccf419
Fix the broken pkcs1 v1.5 test.
...
The random buffer handed over to the test function was too small
and the remaining bytes were generated by the default (platform
dependant) function.
2016-03-30 00:53:44 +01:00
Simon Butcher
184990c1d4
Merge development into development-restricted
2016-03-16 13:56:00 +00:00
Simon Butcher
4b852db299
Merge branch 'iotssl-629-der-trailing-bytes'
...
Fixes bug in mbedtls_x509_crt_parse that caused trailing extra data in the
buffer following DER certificates to be included in the raw representation.
2016-03-12 23:28:26 +00:00
Janos Follath
8a49a019b0
Add tests for the bug IOTSSL-619.
...
The main goal with these tests is to test the bug in question and
they are not meant to test the entire PKCS#1 v1.5 behaviour. To
achieve full test coverage, further test cases are needed.
2016-03-09 21:06:19 +00:00
Simon Butcher
fbe85fe4fa
Add missing dependencies to X509 Parse test suite for P-384 curve
...
The test script curves.pl was failing on testing dependencies for the P-384
curve on the new test cases introduced by ede75f0
and 884b4fc
.
2016-03-09 19:32:10 +00:00
Janos Follath
df4bca2029
X509: Future CA among trusted: add more tests
2016-03-09 19:32:10 +00:00
Janos Follath
12c868c5d6
X509: Future CA among trusted: add unit tests
2016-03-09 19:32:10 +00:00
SimonB
0269dad5e5
Refactored test suite template code
...
Restructed test suite helper and main code to support tests suite helper
functions, changed C++ comments to C-style, and made the generated
source code more navigable.
2016-03-09 19:32:10 +00:00
SimonB
152ea18037
Added support for per test suite helper functions
...
Added to generate_code.pl:
- support for per test suite helper functions
- description of the structure of the files the script uses to construct
the test suite file
- delimiters through the source code to make the machine generated code
easier to understand
2016-03-09 19:32:10 +00:00
Simon Butcher
aad787f1c7
Parameterised the test suite applications
...
All test suites can now take an arbitrary test file.
2016-03-09 19:32:09 +00:00
Janos Follath
e154f95e03
x509: trailing bytes in DER: correct a unit test
...
One of the unit test was failing, because it was testing behavior
that was part of the bug. Updated the return value to the correct one
2016-02-17 14:24:28 +00:00
Manuel Pégourié-Gonnard
e9c1b1a3bf
Merge remote-tracking branch 'yanesca/iss309' into development
...
* yanesca/iss309:
Improved on the previous fix and added a test case to cover both types of carries.
Removed recursion from fix #309 .
Improved on the fix of #309 and extended the test to cover subroutines.
Tests and fix added for #309 (inplace mpi doubling).
2016-01-07 13:22:27 +01:00
Simon Butcher
bfafadb45d
Change version number to 2.2.1
...
Changed version for library files and yotta module
2016-01-04 22:26:36 +00:00
Manuel Pégourié-Gonnard
8b4331aa56
Add test case for root with max_pathlen=0
...
This was already working but not tested so far
(Test case from previous commit still failing.)
Test certificates generated with:
programs/pkey/gen_key type=ec ec_curve=secp256r1 filename=cert91.key
programs/pkey/gen_key type=ec ec_curve=secp256r1 filename=cert92.key
programs/x509/cert_write serial=91 output_file=cert91.crt is_ca=1 \
issuer_key=cert91.key issuer_name="CN=Root 9,O=mbed TLS,C=UK" \
selfsign=1 max_pathlen=0
programs/x509/cert_write serial=92 output_file=cert92.crt \
issuer_key=cert91.key issuer_name="CN=Root 9,O=mbed TLS,C=UK" \
subject_key=cert92.key subject_name="CN=EE 92,O=mbed TLS,C=UK"
mv cert9?.crt tests/data_files/dir4
rm cert9?.key
2015-11-19 11:10:33 +01:00
Manuel Pégourié-Gonnard
a3aa43da5f
Add test case for first intermediate max_pathlen=0
...
!!! This test case is currently failing !!!
(See fix in next-next commit.)
Test certificates generated with the following script:
programs/pkey/gen_key type=ec ec_curve=secp256r1 filename=cert81.key
programs/pkey/gen_key type=ec ec_curve=secp256r1 filename=cert82.key
programs/pkey/gen_key type=ec ec_curve=secp256r1 filename=cert83.key
programs/x509/cert_write serial=81 output_file=cert81.crt is_ca=1 \
issuer_key=cert81.key issuer_name="CN=Root 8,O=mbed TLS,C=UK" \
selfsign=1
programs/x509/cert_write serial=82 output_file=cert82.crt is_ca=1 \
issuer_key=cert81.key issuer_name="CN=Root 8,O=mbed TLS,C=UK" \
subject_key=cert82.key subject_name="CN=Int 82,O=mbed TLS,C=UK" \
max_pathlen=0
programs/x509/cert_write serial=83 output_file=cert83.crt \
issuer_key=cert82.key issuer_name="CN=Int 82,O=mbed TLS,C=UK" \
subject_key=cert83.key subject_name="CN=EE 83,O=mbed TLS,C=UK"
mv cert8?.crt tests/data_files/dir4
rm cert8?.key
2015-11-19 10:56:30 +01:00
Nicholas Wilson
733676b978
Allow test suites to be run on Windows
...
For a start, they don't even compile with Visual Studio due to strcasecmp
being missing. Secondly, on Windows Perl scripts aren't executable and have
to be run using the Perl interpreter directly; thankfully CMake is able to
find cygwin Perl straight away without problems.
2015-11-14 13:09:01 +00:00
Simon Butcher
8254ed2a9f
Change version number to 2.2.0
...
Changed for library and yotta module
2015-11-04 19:55:40 +00:00
Manuel Pégourié-Gonnard
a8838af8e6
Use own implementation of strsep()
...
Not available on windows, and strtok() is not a good option
2015-11-02 06:44:24 +09:00
Manuel Pégourié-Gonnard
568f1e7cb3
Merge branch 'iotssl-515-max-pathlen' into development
...
* iotssl-515-max-pathlen:
Add Changelog entries for this branch
Fix a style issue
Fix whitespace at EOL issues
Use symbolic constants in test data
Fixed pathlen contraint enforcement.
Additional corner cases for testing pathlen constrains. Just in case.
Added test case for pathlen constrains in intermediate certificates
2015-11-02 05:49:08 +09:00
Janos Follath
6c92268093
Improved on the previous fix and added a test case to cover both types
...
of carries.
2015-10-30 17:50:12 +01:00