Roberto Vargas
7decfe8c1e
Convert mbedtls_free and mbedtls_calloc into functions
...
When MBEDTLS_PLATFORM_MEMORY is defined but MBEDTLS_PLATFORM_FREE_MACRO or
MBEDTLS_PLATFORM_CALLOC_MACRO are not defined then the actual functions
used to allocate and free memory are stored in function pointers.
These pointers are exposed to the caller, and it means that the caller
and the library have to share a data section.
In TF-A, we execute in a very constrained environment, where some images
are executed from ROM and other images are executed from SRAM. The
images that are executed from ROM cannot be modified. The SRAM size
is very small and we are moving libraries to the ROM that can be shared
between the different SRAM images. These SRAM images could import all the
symbols used in mbedtls, but it would create an undesirable hard binary
dependency between the different images. For this reason, all the library
functions in ROM are accesed using a jump table whose base address is
known, allowing the images to execute with different versions of the ROM.
This commit changes the function pointers to actual functions,
so that the SRAM images only have to use the new exported symbols
(mbedtls_calloc and mbedtls_free) using the jump table. In
our scenario, mbedtls_platform_set_calloc_free is called from
mbedtls_memory_buffer_alloc_init which initializes the function pointers
to the internal buffer_alloc_calloc and buffer_alloc_free functions.
No functional changes to mbedtls_memory_buffer_alloc_init.
Signed-off-by: Roberto Vargas <roberto.vargas@arm.com>
2018-06-13 09:17:59 +01:00
Jaeden Amero
c4bd8ec5ed
Merge remote-tracking branch 'upstream-public/pr/1446' into development
2018-05-17 11:46:13 +01:00
Darryl Green
11999bb72e
Fix minor code style issues
2018-05-15 09:21:57 +01:00
Jaeden Amero
cdd97fd632
Merge remote-tracking branch 'upstream-public/pr/1433' into development
2018-05-11 10:48:15 +01:00
Jaeden Amero
a331e0f0af
Merge remote-tracking branch 'upstream-restricted/pr/421' into development-proposed
2018-05-04 14:39:24 +01:00
Jaeden Amero
fb19399f41
Merge remote-tracking branch 'upstream-public/pr/1498' into development-proposed
2018-05-04 11:09:14 +01:00
Jaeden Amero
09c4e7ef5a
Merge remote-tracking branch 'upstream-public/pr/1486' into development-proposed
2018-05-04 11:03:16 +01:00
Jaeden Amero
070e356476
Merge remote-tracking branch 'upstream-restricted/pr/481' into development-restricted
2018-05-01 15:28:18 +01:00
Simon Butcher
e6a2a1aa97
Add the uodate to the soversion to the ChangeLog
2018-05-01 14:02:24 +01:00
Jaeden Amero
78d2f7d5df
Merge remote-tracking branch 'upstream-restricted/pr/478' into development-restricted
2018-04-30 17:37:42 +01:00
Simon Butcher
b03120ad41
Fix the ChangeLog for clarity, english and credit
2018-04-30 17:13:42 +01:00
Jaeden Amero
00cbed23b8
Merge remote-tracking branch 'upstream-restricted/pr/474' into development-restricted
2018-04-30 10:21:25 +01:00
Jaeden Amero
7d7bad6b1f
Update version to 2.9.0
...
Bump SOVERSION for parity with 2.7.2 and 2.7.3.
2018-04-30 09:58:33 +01:00
Jaeden Amero
8b98498e9a
Merge remote-tracking branch 'upstream-restricted/pr/477' into development-restricted-proposed
2018-04-27 18:27:47 +01:00
Jaeden Amero
fe0669f52a
ecp: Fix binary compatibility with group ID
...
We naturally added the new Curve448 ECP group ID in alphabetical order in
the mbedtls_ecp_group_id enum. However, this causes binary incompatibility
issues as previous binaries will use values for groups that now have a
different meaning. For example, MBEDTLS_ECP_DP_SECP192K1, old value 10,
would mean Curve448 (MBEDTLS_ECP_DP_CURVE448) and the wrong group ID used.
Fix the binary compatibility issue by adding new enum entries to the end of
the enum, even though this isn't so great for readbility as the list is no
longer in alphabetical order. However, the list wasn't perfectly in
alphabetical order before anyway.
2018-04-27 18:20:31 +01:00
Jaeden Amero
c64a300027
Merge remote-tracking branch 'upstream-restricted/pr/471' into development-restricted-proposed
...
Remove trailing whitespace in ChangeLog.
2018-04-26 09:06:33 +01:00
Jaeden Amero
bd05dfd49f
Merge branch 'development-proposed' into development-restricted-proposed
...
Resolve conflicts in ChangeLog
2018-04-26 09:03:03 +01:00
Jaeden Amero
84a1107818
Merge remote-tracking branch 'upstream-public/pr/1592' into development-proposed
2018-04-25 14:22:12 +01:00
Jaeden Amero
38c42d5afa
Merge remote-tracking branch 'upstream-public/pr/1570' into development-proposed
...
Resolve merge conflict in ChangeLog.
2018-04-25 14:20:08 +01:00
Andrzej Kurek
b7a18c0498
Changelog entry
2018-04-25 05:25:30 -04:00
Andrzej Kurek
03bac448db
Change accepted ciphersuite versions when parsing server hello
...
Accept only ciphersuites for version chosen by the server
2018-04-25 05:06:07 -04:00
Jaeden Amero
8945343a51
Merge branch 'development-proposed' into development-restricted-proposed
...
Resolve merge conflict in ecp.h, where `mbedtls_ecp_keypair` was moved.
2018-04-24 17:16:34 +01:00
Andres Amaya Garcia
8491406803
Remove preprocessor directives around platform_util.h include
2018-04-24 08:40:46 -05:00
Andres Amaya Garcia
6698d2fc5c
Fix style for mbedtls_mpi_zeroize()
2018-04-24 08:39:07 -05:00
Andres Amaya Garcia
56e06db102
Improve mbedtls_platform_zeroize() docs
2018-04-24 08:37:52 -05:00
Andres Amaya Garcia
708c5cb6ab
mbedtls_zeroize -> mbedtls_platform_zeroize in docs
2018-04-24 08:33:31 -05:00
Andres Amaya Garcia
d0ef468d39
Reword config.h docs for MBEDTLS_PLATFORM_ZEROIZE_ALT
2018-04-24 08:31:34 -05:00
Andres Amaya Garcia
bc7bdbf5c8
Organize CMakeLists targets in alphabetical order
2018-04-24 08:29:20 -05:00
Andres Amaya Garcia
21b376b56c
Organize output objs in alfabetical order in Makefile
2018-04-24 08:28:26 -05:00
Jaeden Amero
1afdec1812
Merge remote-tracking branch 'upstream-public/pr/1578' into development-proposed
2018-04-24 14:19:41 +01:00
Jaeden Amero
3dd8abd037
Regenerate errors after ecp.h updates
...
The error descriptions were updated in ecp.h (PR #1578 ), so also update
the strings in error.c.
2018-04-24 14:13:15 +01:00
Jaeden Amero
519b129f78
Merge remote-tracking branch 'upstream-public/pr/1580' into development-proposed
2018-04-24 13:20:11 +01:00
Rose Zadik
a7a6155272
Update ecp.h
...
One fix. Removed trailing whitespaces
2018-04-24 13:14:01 +01:00
Andrzej Kurek
a9ceef8e03
Change variable bytes_written to header_bytes in record decompression
...
The name is changed to better reflect the input, decompression case
2018-04-24 06:34:17 -04:00
Jaeden Amero
7c68878e17
Merge remote-tracking branch 'upstream-public/pr/1511' into development-proposed
2018-04-24 10:28:25 +01:00
Jaeden Amero
d803c1f1ab
Merge remote-tracking branch 'upstream-public/pr/1510' into development-proposed
...
Resolve conflict in comment for mbedtls_ecdsa_read_signature in include/mbedtls/ecdsa.h
2018-04-24 10:27:38 +01:00
Jaeden Amero
f852f4c35b
Merge remote-tracking branch 'upstream-public/pr/1506' into development-proposed
2018-04-24 10:27:05 +01:00
Jaeden Amero
ebfd3cad58
Merge remote-tracking branch 'upstream-public/pr/1505' into development-proposed
2018-04-24 10:26:48 +01:00
Rose Zadik
d35340550d
Update ecp.h
...
fixed omittion
2018-04-23 16:12:42 +01:00
Rose Zadik
c32efb3f64
Update ecp.h
...
Resolved last review comment
2018-04-23 09:38:29 +01:00
Rose Zadik
d76ac587d3
Update ecp.h
...
Changes based on review comments. Waiting for responses on 2 remaining comments
2018-04-23 06:29:34 +01:00
Rose Zadik
abc9ec73b0
Update ecdsa.h
...
Merged change to MBEDTLS_ERR_ECP_SIG_LEN_MISMATCH from other commit for merging, as requested (lines 282+283).
2018-04-23 06:16:40 +01:00
Mohammad Azim Khan
1d3b508b82
Same ciphersuite validation in server and client hello
2018-04-20 18:54:18 +01:00
Andrzej Kurek
5462e02874
ssl_tls: Fix invalid buffer sizes during compression / decompression
...
Adjust information passed to zlib to include already written data.
2018-04-20 07:58:53 -04:00
Rose Zadik
f089fa3341
Update ecp.h
...
minor spacing/comment format fixes
2018-04-20 10:41:16 +01:00
Rose Zadik
b2e111a288
Update ecp.h
...
Changes based on review comments.
2 comments still open pending decisions
2018-04-20 10:13:48 +01:00
Gilles Peskine
5450d1f597
Merge branch 'crypto_alt_revision' into development-restricted-proposed
2018-04-19 21:02:40 +02:00
Gilles Peskine
81021ca2da
Improve ChangeLog entry
2018-04-19 20:59:06 +02:00
Gilles Peskine
f2b76cd45c
Merge remote-tracking branch 'upstream-restricted/pr/461' into development-restricted-proposed
2018-04-19 17:41:39 +02:00
Rose Zadik
93f9919c26
Update cipher.h
...
Fixed typo.
2018-04-19 14:41:33 +01:00