Arto Kinnunen
6e3f09b431
Review corrections
...
-Fix compiler warnings by typecast
-Add missing brackets to few places
-Remove additional line change
2019-09-09 17:21:18 +03:00
Arto Kinnunen
ee9bfca823
Update signature of BE conversion functions
2019-09-09 17:21:18 +03:00
Arto Kinnunen
0b62ce8ed4
Use function for 16/24/32-bit BE conversion
...
Use functions for 16/24/32-bit big endian conversion to save ROM.
2019-09-09 17:21:18 +03:00
Manuel Pégourié-Gonnard
505be8be4d
Remove unnecessary depends in a test case
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
d6ac3308cd
Adjust depends-hashes.pl to test NO_SHA224 as well
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
7f2c3e4034
Remove dependency of ssl_cookie on SHA-224
...
Cookies are fully opaque so we can change the hash used at any time, it's not
part of the API.
The cookie module handles truncation, so it's simpler to always use SHA-256
rather than check if SHA-224 is available.
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
81ed9fb277
Exclude SHA-224 from some reduced config examples
...
Besides the value as an example, this is usefull for testing the option, via
test-ref-configs.pl (which is included in all.sh).
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
efd344894d
Completely ignore is224 if SHA-224 is disabled
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
0956e3ebed
Exclude NO_SHA224 option from scripts/config.pl
...
As a negative option that removes a feature it should be excluded.
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
e06cc3109c
Add MBEDTLS_SHA256_NO_SHA224 to baremetal.h
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
394c5fb24b
Implement NO_SHA224 in MD layer as well
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
5a26ff3cf9
Declare dependencies on !NO_SHA224 in test suites
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
abebdd16ef
Adapt SHA-256 selftest to NO_SHA224
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
8463d29156
Implement MBEDTLS_SHA256_NO_SHA224
2019-09-09 10:21:30 +02:00
Manuel Pégourié-Gonnard
9b781b2880
Add MBEDTLS_SHA256_NO_SHA244 option (unimplemented)
2019-09-09 09:06:56 +02:00
Simon Butcher
0e895727be
Merge remote-tracking branch 'origin/pr/656' into baremetal
2019-09-07 12:48:28 +01:00
Simon Butcher
d82db9d48c
Merge remote-tracking branch 'origin/pr/649' into baremetal
2019-09-07 12:46:12 +01:00
Simon Butcher
d91adcf7f5
Merge remote-tracking branch 'origin/pr/624' into baremetal
2019-09-07 12:44:42 +01:00
Simon Butcher
2da461e657
Merge remote-tracking branch 'origin/pr/655' into baremetal
2019-09-07 12:35:54 +01:00
Simon Butcher
e501c8d308
Merge remote-tracking branch 'origin/pr/644' into baremetal
2019-09-07 12:34:46 +01:00
Teppo Järvelin
c3e5716aaf
Some minor struct optimizations.
2019-09-06 07:58:36 +03:00
Hanno Becker
963d49f79a
ssl-opt.sh: Remove now-redundant explicit DTLS dependencies
...
Dependencies on DTLS are now auto-detected from the command line.
2019-09-05 14:55:56 +01:00
Hanno Becker
a43f85c9b2
ssl-opt.sh: Auto-skip tests depending on DTLS
2019-09-05 14:51:20 +01:00
Hanno Becker
fcda6ddae1
Fixup: Correct typo in DTLS only component of all.sh
2019-09-05 14:50:00 +01:00
Hanno Becker
baac25d2bf
Add DTLS-only build + test to all.sh
2019-09-05 13:57:01 +01:00
Hanno Becker
73b72d1890
ssl-opt.sh: Auto-skip tests using TLS if TLS is disabled
2019-09-05 13:57:01 +01:00
Hanno Becker
d016e44e3c
Baremetal config: Remove deprecated functions
...
This doesn't make a difference after link time optimization
because they aren't used, but it yields more accurate code-size
figures from baremetal.sh.
2019-09-05 13:37:03 +01:00
Hanno Becker
fceba69c25
Baremetal config: Remove MBEDTLS_SSL_TICKETS_C
...
This doesn't make a difference after link time optimization because
tickets aren't used, but it yields more accurate code-size figures
from baremetal.sh.
2019-09-05 13:36:49 +01:00
Manuel Pégourié-Gonnard
0cfb6efad4
Add work-around for non-C99 compilers
2019-09-05 14:07:01 +02:00
Manuel Pégourié-Gonnard
8bf8f2ebde
Improve documentation in config.h
2019-09-05 13:08:21 +02:00
Manuel Pégourié-Gonnard
c7abba3796
Use static inline function unconditionally
...
No need to play tricks with macros and functions depending on whether
SHA256_SMALLER is enabled or not, with a static inline function all common
compilers (tested with arm-gcc, armcc5, arm-clang) will Do The Right Thing
depending on whether we told them to optimize for size or speed.
2019-09-05 12:09:59 +02:00
Teppo Järvelin
30185bb82b
struct optimization for mbedtls_record
2019-09-05 08:54:13 +03:00
Teppo Järvelin
22854511bb
struct optimization for mbedtls_ssl_transform
2019-09-05 08:54:13 +03:00
Teppo Järvelin
d689a67af2
struct optimization for mbedtls_x509_crl
2019-09-05 08:54:13 +03:00
Teppo Järvelin
648fbbad8f
struct optimization for mbedtls_ssl_context
2019-09-05 08:54:13 +03:00
Teppo Järvelin
1cd48143c3
struct optimization for mbedtls_ssl_handshake_params
2019-09-05 08:54:13 +03:00
Hanno Becker
d601854548
Fixup TinyCrypt Tests: Remove redundant guards
2019-09-04 16:19:49 +01:00
Hanno Becker
683d84a5d7
Fixup TinyCrypt PK parse: Correct function name in comment
2019-09-04 16:19:49 +01:00
Hanno Becker
f45d9da878
Fixup certs.c: Remove redundant TinyCrypt guard
2019-09-04 16:19:49 +01:00
Hanno Becker
d2929b5626
Fixup TinyCrypt PK wrap: Check TinyCrypt signature return code
2019-09-04 16:19:49 +01:00
Hanno Becker
96d34d57ec
TinyCrypt PK Wrap: Remove dependency on ASN.1 writing
...
The TinyCrypt PK signature wrapper uses ASN.1 writing functions
for length and tag, accounting for the only dependency of the
baremetal build on ASN.1 writing.
Since all lengths to be encoded are below 128 Bytes and are hence
ASN.1 encoded as single Bytes, the dependency on ASN.1 writing can
be removed at low complexity by writing the length and tags directly.
2019-09-04 16:19:49 +01:00
Hanno Becker
1b82685dc9
Fixup debug.h and ssl_internal.h: Add missing include of ecdh.h
...
Previously, this wasn't necessary because ecdh.h was included
through ssl.h, but now that this is no longer the case (because
ssl.h doesn't use ECDH), we have to include it explicitly.
2019-09-04 16:19:49 +01:00
Hanno Becker
82a7a21982
Fixup: Correct inclusion of legacy ECP headers in ssl.h
...
Previously, ecp.h was included only if MBEDTLS_ECDH_C was set,
which broke the build in configurations using ECDSA, but not ECDH.
An example of such a config is configs/config-thread.h, which
uses ECJPAKE exclusively.
Moreover, the inclusion of ecdh.h isn't needed, because the header
only uses constants defined in the ECP module.
2019-09-04 16:19:49 +01:00
Hanno Becker
a007e0db47
baremetal.h: Use TinyCrypt curve identifier
2019-09-04 16:19:49 +01:00
Hanno Becker
fe08844bac
TinyCrypt Test: Include ECDH and ECDHE-PSK in all.sh TinyCrypt test
2019-09-04 16:19:49 +01:00
Hanno Becker
6f212d0a16
TinyCrypt ECDH/ECDHE-PSK: Allow TinyCrypt-based ECDH and ECDHE-PSK
2019-09-04 16:19:49 +01:00
Hanno Becker
6f7680491b
TinyCrypt ECDHE-PSK: Adapt dummy structure approximating PMS length
2019-09-04 16:19:49 +01:00
Hanno Becker
358b3006ee
TinyCrypt ECDHE-PSK: Implement CliKeyExchange parsing
2019-09-04 16:19:49 +01:00
Hanno Becker
982da7ee0a
TinyCrypt ECDHE-PSK: Implement mbedtls_ssl_psk_derive_premaster()
2019-09-04 16:19:49 +01:00
Hanno Becker
d91ede14c4
TinyCrypt ECDHE-PSK: Implement ClientKeyExchange writing
2019-09-04 16:19:49 +01:00