f1be1f6740
Remove unused code
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-12-01 13:53:45 +00:00
16799db69a
update headers
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-11-02 19:47:20 +00:00
c2630fac52
Simplify mbedtls_ct_memcmp_partial
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-19 17:21:50 +01:00
9c14007ac3
Add mbedtls_ct_memcmp_partial
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-19 09:10:59 +01:00
bd58944252
Avoid implementation defined behaviour
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-12 12:38:53 +01:00
50b0a35494
Test INT_MAX rather than UINT_MAX
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-12 09:30:44 +01:00
98926d5fb1
Update comment, and replace bit-twiddling with #error
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-12 09:29:33 +01:00
4f26770291
Ensure mbedtls_ct_memcpy behaves correctly with 16-bit int
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-11 19:10:09 +01:00
d395590597
Merge pull request #7579 from daverodgman/safer-ct-asm
...
Arm assembly implementation of constant time primitives
2023-08-28 08:26:29 +00:00
f1adc2a7a1
Use asm instead of __asm in constant_time.c
...
The original IAR fix submitted to TF-M directly changed asm to __asm.
But mbed TLS now has a workaround for such cases hence just remove the
original change modification.
Signed-off-by: Antonio de Angelis <antonio.deangelis@arm.com >
2023-08-16 12:48:48 +01:00
1ee4d1228c
Fix error strings without quotes
...
Some of the error strings that should be printed with the
error preprocessor directive are missing quotes
Signed-off-by: Antonio de Angelis <antonio.deangelis@arm.com >
2023-08-16 12:48:33 +01:00
e4f6d79bbe
BUILD: Update For IAR support
...
Applied the same change as in mbed-crypto for using this as a sub
project with the IAR toolchain. Use __asm generic ,and avoid empty
enum. Avoid declaration of array with null size. This is a porting
of the original patch contributed to trusted-firmware-m.
Signed-off-by: TTornblom <thomas.tornblom@iar.com >
Signed-off-by: Michel Jaouen <michel.jaouen@st.com >
Signed-off-by: Antonio de Angelis <antonio.deangelis@arm.com >
2023-08-16 12:36:21 +01:00
ba44e918b8
Remove unnecessary include from constant_time.c
...
This was added in order to use TEST_CF_XYZ macros which have since been
removed.
Signed-off-by: David Horstmann <david.horstmann@arm.com >
2023-08-15 15:17:22 +01:00
42391b4378
Perf improvement in memcpy_if
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-08-11 08:47:38 +01:00
98ddc01a7c
Rename ...if0 to ...else_0
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-08-10 12:11:31 +01:00
b7825ceb3e
Rename uint->bool operators to reflect input types
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-08-10 11:58:18 +01:00
378280e57f
Revert "Move constant_flow.h into the main library"
...
This reverts commit fd78c34e23
.
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-07-31 17:22:55 +01:00
fd78c34e23
Move constant_flow.h into the main library
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-07-31 12:48:33 +01:00
1714a9b0eb
Revert to old design for mbedtls_ct_memmove_left
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-07-31 12:48:33 +01:00
07f853713d
Clarify comments in mbedtls_ct_memcpy_if
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-07-31 12:27:49 +01:00
d684d7342b
code style
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-07-28 16:39:38 +01:00
fa5a4bbb02
Improve mbedtls_ct_memmove_left w.r.t. const-flow tests
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-07-28 16:13:52 +01:00
9fbb0cf08e
Merge remote-tracking branch 'origin/development' into safer-ct5
2023-06-28 18:52:02 +01:00
db041cc82f
Merge pull request #7665 from AndrzejKurek/optimize-error-translation-code-size
...
Optimize error translation code size
2023-06-28 08:09:00 +01:00
5b5dd011d1
code style
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 16:36:47 +01:00
b5b6939fc2
Remove redundant checks in constant_time.c
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 16:36:42 +01:00
0400ae2f9b
Fix pointer constraint in bn_mul.h
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 16:31:52 +01:00
c54f25e26c
code style
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 13:39:30 +01:00
63e89b46f8
Use UINTPTR_MAX not SIZE_MAX
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 11:58:54 +01:00
85842b8edb
Be strict about pointer size in mbedtls_get_unaligned_volatile_uint32
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 11:22:09 +01:00
b67db9140e
Separate ILP32 and normal-aarch64 code paths
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 09:15:27 +01:00
04cb9ac59e
Fix for arm64_32 (aka ILP32) on Clang (attempt 2)
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-21 07:32:22 +01:00
b19f584f2c
Fix for arm64_32 (aka ILP32) on Clang
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-20 23:01:43 +01:00
1e4a030b00
Fix wrong array size calculation in error translation code
...
Signed-off-by: Andrzej Kurek <andrzej.kurek@arm.com >
2023-06-13 05:46:47 -04:00
1c7a99856f
Add missing ifdefs
...
Make sure that the error translating functions
are only defined when they're used.
Signed-off-by: Andrzej Kurek <andrzej.kurek@arm.com >
2023-06-13 05:46:47 -04:00
0064484a70
Optimize error translation code size
...
Introducing an intermediate function
saves code size that's otherwise taken by excessive,
repeated arguments in each place that
was translating errors.
Signed-off-by: Andrzej Kurek <andrzej.kurek@arm.com >
2023-06-13 05:46:46 -04:00
1ab0b48ac3
Code style
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-12 18:22:18 +01:00
58c80f4d92
Make mbedtls_ct_zero non-static
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-06-12 18:19:46 +01:00
1947088f91
Remove references to rsa.h and ssl_misc.h from constant_time.c
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
585f7f776d
Whitespace etc
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
8f5e5c18d8
Make memmove_left more efficient
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
2b4486a014
Rename mbedtls_ct_uint_if_new to mbedtls_ct_uint_if
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
2243137715
Remove old interface
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
199a2c5d39
Use new CT interface in mbedtls_ct_memcpy_offset
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
231a516682
Remove not-needed mbedtls_ct_mpi_uint_cond_assign
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
7fe6e6fb2b
Add impl of mbedtls_ct_memcpy_if
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
15c142b58d
Use new interface in mbedtls_ct_memmove_left
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
6cee26db16
Remove old interface for mem_move_to_left
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
debf8679e0
Add impl of mbedtls_ct_zeroize_if
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00
40a41d0461
Introduce new CT interface (retain old interface)
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-05-26 12:42:48 +01:00