Neil Armstrong 
							
						 
					 
					
						
						
							
						
						e952a30d47 
					 
					
						
						
							
							Remove RAW PSK when MBEDTLS_USE_PSA_CRYPTO is selected  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-05-04 11:08:41 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						501c93220d 
					 
					
						
						
							
							Import PSK as opaque PSA key for mbedtls_ssl_conf_psk() & mbedtls_ssl_set_hs_psk()  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-05-04 11:08:41 +02:00 
						 
				 
			
				
					
						
							
							
								Gilles Peskine 
							
						 
					 
					
						
						
							
						
						8855e36030 
					 
					
						
						
							
							Merge pull request  #5674  from superna9999/5668-abstract-tls-mode-cleanup  
						
						... 
						
						
						
						Cipher cleanup: abstract TLS mode 
						
						
					 
					
						2022-04-28 12:33:38 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						eecd0d2fc3 
					 
					
						
						
							
							Merge pull request  #5679  from yuhaoth/pr/add-tls13-write-server-hello  
						
						
						
						
					 
					
						2022-04-25 09:28:40 +02:00 
						 
				 
			
				
					
						
							
							
								Manuel Pégourié-Gonnard 
							
						 
					 
					
						
						
							
						
						55132c6a9a 
					 
					
						
						
							
							Merge pull request  #5703  from superna9999/5322-ecdh-remove-legacy-context  
						
						... 
						
						
						
						TLS ECDH 4: remove legacy context 
						
						
					 
					
						2022-04-22 14:27:06 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						f2c82f0a3b 
					 
					
						
						
							
							Introduce MBEDTLS_SSL_SOME_SUITES_USE_CBC_ETM macro to determine if Encrypt-then-MAC with CBC is used in a ciphersuite  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-22 14:25:59 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						ccc074e44d 
					 
					
						
						
							
							Use correct condition to use encrypt_then_mac in ssl_tls.c  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-22 14:25:59 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						ab555e0a6c 
					 
					
						
						
							
							Rename mbedtls_get_mode_from_XXX to mbedtls_ssl_get_mode_from_XXX  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-22 14:25:59 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						4bf4c8675f 
					 
					
						
						
							
							Introduce mbedtls_get_mode_from_ciphersuite() by reusing mbedtls_get_mode_from_transform() logic  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-22 14:25:59 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						8a0f3e8cf0 
					 
					
						
						
							
							Introduce mbedtls_ssl_mode_t & mbedtls_get_mode_from_transform()  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-22 14:25:26 +02:00 
						 
				 
			
				
					
						
							
							
								Jerry Yu 
							
						 
					 
					
						
						
							
						
						89e103c54c 
					 
					
						
						
							
							tls13: Share write ecdh_key_exchange function  
						
						... 
						
						
						
						Signed-off-by: Jerry Yu <jerry.h.yu@arm.com > 
						
						
					 
					
						2022-04-22 16:45:01 +08:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						38b8aa4f63 
					 
					
						
						
							
							Merge pull request  #5539  from xkqian/add_client_hello_to_server  
						
						... 
						
						
						
						Add client hello into server side 
						
						
					 
					
						2022-04-22 10:26:00 +02:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						4e8cd7b903 
					 
					
						
						
							
							Remove useless selected_group  
						
						... 
						
						
						
						Change-Id: I5fb76b5bf4b22d0231c17314783781f9e7c309a3
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-21 13:30:18 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						0a1b54ed73 
					 
					
						
						
							
							Minor change the place of some functions  
						
						... 
						
						
						
						Change-Id: I2626e68cf837d8ca4086cb35a8482cee315cde97
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-21 03:01:38 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						75d40ef8cb 
					 
					
						
						
							
							Refine code base on review  
						
						... 
						
						
						
						Remove useless hrr code
Share validate_cipher_suit between client and server
Fix test failure when tls13 only in server side
Change-Id: I5d6a7932bd8448ebf542bc86cdcab8862bc28e9b
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-20 11:05:24 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						318dc763a6 
					 
					
						
						
							
							Fix test failure issue and update code styles  
						
						... 
						
						
						
						Change-Id: I0b08da1b083abdb19dc383e6f4b210f66659c109
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-20 09:43:51 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						0803755347 
					 
					
						
						
							
							Update code base on review comments  
						
						... 
						
						
						
						Refine named_group parsing
Refine cipher_suites parsing
Remove hrr related part
Share code between client and server side
Some code style changes
Change-Id: Ia9ffd5ef9c0b64325f633241e0ea1669049fe33a
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-20 07:50:14 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						cfd925f3e8 
					 
					
						
						
							
							Fix comments and remove hrr related code  
						
						... 
						
						
						
						Change-Id: Iab1fc5415b3b7f7b5bcb0a41a01f4234cc3497d6
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-20 07:45:50 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						9b5d04b078 
					 
					
						
						
							
							Share parse_key_share() between client and server  
						
						... 
						
						
						
						Change-Id: I3fd2604296dc0e1e8380f5405429a6b0feb6e981
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-20 07:43:48 +00:00 
						 
				 
			
				
					
						
							
							
								XiaokangQian 
							
						 
					 
					
						
						
							
						
						7ac3ab3404 
					 
					
						
						
							
							Add hello retry request count for server  
						
						... 
						
						
						
						Signed-off-by: XiaokangQian <xiaokang.qian@arm.com > 
						
						
					 
					
						2022-04-20 07:43:48 +00:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						217d699d85 
					 
					
						
						
							
							Fix Doxygen marks  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-04-19 18:28:51 +02:00 
						 
				 
			
				
					
						
							
							
								Glenn Strauss 
							
						 
					 
					
						
						
							
						
						bbdc83b55b 
					 
					
						
						
							
							Use mbedtls_ssl_protocol_version in public structs  
						
						... 
						
						
						
						Use mbedtls_ssl_protocol_version in public structs, even when doing
so results in a binary-incompatible change to the public structure
(PR feedback from @ronald-cron-arm)
Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com > 
						
						
					 
					
						2022-04-14 15:40:14 -04:00 
						 
				 
			
				
					
						
							
							
								Glenn Strauss 
							
						 
					 
					
						
						
							
						
						cd78df6aa4 
					 
					
						
						
							
							handshake->min_minor_ver to ->min_tls_version  
						
						... 
						
						
						
						Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com > 
						
						
					 
					
						2022-04-14 15:40:14 -04:00 
						 
				 
			
				
					
						
							
							
								Glenn Strauss 
							
						 
					 
					
						
						
							
						
						e3af4cb72a 
					 
					
						
						
							
							mbedtls_ssl_(read|write)_version using tls_version  
						
						... 
						
						
						
						remove use of MBEDTLS_SSL_MINOR_VERSION_*
remove use of MBEDTLS_SSL_MAJOR_VERSION_*
(only remaining use is in tests/suites/test_suite_ssl.data)
Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com > 
						
						
					 
					
						2022-04-14 15:40:14 -04:00 
						 
				 
			
				
					
						
							
							
								Glenn Strauss 
							
						 
					 
					
						
						
							
						
						60bfe60d0f 
					 
					
						
						
							
							mbedtls_ssl_ciphersuite_t min_tls_version,max_tls_version  
						
						... 
						
						
						
						Store the TLS version in tls_version instead of major, minor version num
Note: existing application use which accesses the struct member
(using MBEDTLS_PRIVATE) is not compatible, as the struct is now smaller.
Reduce size of mbedtls_ssl_ciphersuite_t
members are defined using integral types instead of enums in
order to pack structure and reduce memory usage by internal
ciphersuite_definitions[]
Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com > 
						
						
					 
					
						2022-04-14 15:40:12 -04:00 
						 
				 
			
				
					
						
							
							
								Glenn Strauss 
							
						 
					 
					
						
						
							
						
						2dfcea2b9d 
					 
					
						
						
							
							mbedtls_ssl_config min_tls_version, max_tls_version  
						
						... 
						
						
						
						Store the TLS version in tls_version instead of major, minor version num
Note: existing application use which accesses the struct member
(using MBEDTLS_PRIVATE) is not compatible on little-endian platforms,
but is compatible on big-endian platforms.  For systems supporting
only TLSv1.2, the underlying values are the same (=> 3).
New setter functions are more type-safe,
taking argument as enum mbedtls_ssl_protocol_version:
mbedtls_ssl_conf_max_tls_version()
mbedtls_ssl_conf_min_tls_version()
Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com > 
						
						
					 
					
						2022-04-14 15:39:43 -04:00 
						 
				 
			
				
					
						
							
							
								Glenn Strauss 
							
						 
					 
					
						
						
							
						
						07c641605e 
					 
					
						
						
							
							Rename mbedtls_ssl_transform minor_ver to tls_version  
						
						... 
						
						
						
						Store the TLS version in tls_version instead of minor version number.
Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com > 
						
						
					 
					
						2022-04-14 15:23:54 -04:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						769dc05597 
					 
					
						
						
							
							Remove bad dependency on MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED for ecdh_ctx guard  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-14 09:56:24 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						f3f46416e3 
					 
					
						
						
							
							Remove ecdh_ctx variable, init & free when USE_PSA_CRYPTO isn't selected  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-12 14:43:39 +02:00 
						 
				 
			
				
					
						
							
							
								Manuel Pégourié-Gonnard 
							
						 
					 
					
						
						
							
						
						1b05aff3ad 
					 
					
						
						
							
							Merge pull request  #5624  from superna9999/5312-tls-server-ecdh  
						
						... 
						
						
						
						TLS ECDH 3b: server-side static ECDH (1.2) 
						
						
					 
					
						2022-04-07 11:46:25 +02:00 
						 
				 
			
				
					
						
							
							
								Przemek Stekiel 
							
						 
					 
					
						
						
							
						
						8583627ece 
					 
					
						
						
							
							psa_ssl_status_to_mbedtls: add conversion of PSA_ERROR_BUFFER_TOO_SMALL  
						
						... 
						
						
						
						Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com > 
						
						
					 
					
						2022-04-05 10:50:53 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						f716a700a1 
					 
					
						
						
							
							Rename mbedtls_ssl_handshake_params variable ecdh_psa_shared_key to ecdh_psa_privkey_is_external  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-04-04 11:23:46 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						0e980e8e84 
					 
					
						
						
							
							Merge pull request  #5640  from ronald-cron-arm/version-negotiation-2  
						
						... 
						
						
						
						TLS 1.2/1.3 version negotiation - 2 
						
						
					 
					
						2022-04-01 12:29:06 +02:00 
						 
				 
			
				
					
						
							
							
								Manuel Pégourié-Gonnard 
							
						 
					 
					
						
						
							
						
						6a25159c69 
					 
					
						
						
							
							Merge pull request  #5648  from gabor-mezei-arm/5403_hkdf_use_internal_psa_implementations  
						
						... 
						
						
						
						HKDF 2: use internal implementations in TLS 1.3 
						
						
					 
					
						2022-04-01 11:15:29 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						bdb4f58cea 
					 
					
						
						
							
							Add and update documentation of some minor version fields  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-31 18:24:59 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						82c785fac3 
					 
					
						
						
							
							Make handshake::min_minor_ver client only  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-31 15:44:41 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						91477a7964 
					 
					
						
						
							
							Switch handshake->ecdh_bits to size_t and remove now useless cast & limit checks  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-03-31 15:24:18 +02:00 
						 
				 
			
				
					
						
							
							
								Neil Armstrong 
							
						 
					 
					
						
						
							
						
						8113d25d1e 
					 
					
						
						
							
							Add ecdh_psa_shared_key flag to protect PSA privkey if imported  
						
						... 
						
						
						
						Signed-off-by: Neil Armstrong <narmstrong@baylibre.com > 
						
						
					 
					
						2022-03-31 15:24:17 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						f660655b84 
					 
					
						
						
							
							TLS: Allow hybrid TLS 1.2/1.3 in default configurations  
						
						... 
						
						
						
						This implies that when both TLS 1.2 and TLS 1.3
are included in the build all the TLS 1.2 tests
using the default configuration now go through
a version negotiation on the client side.
Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 18:58:31 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						e71639d39b 
					 
					
						
						
							
							Simplify TLS major version default value setting  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 18:58:31 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						fbd9f99f10 
					 
					
						
						
							
							ssl_tls.c: Move some client specific functions to ssl_client.c  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 18:58:31 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						4079abc7d1 
					 
					
						
						
							
							ssl_client.c: Adapt extensions writing to the TLS 1.2 case  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 18:58:31 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						11e1857f5e 
					 
					
						
						
							
							ssl_client.c: Fix key share code guards  
						
						... 
						
						
						
						In TLS 1.3 key sharing is not restricted to key
exchange with certificate authentication. It
happens in the PSK and ephemeral key exchange
mode as well where there is no certificate
authentication.
Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 18:58:31 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						d491c2d779 
					 
					
						
						
							
							ssl_client.c: Adapt ciphersuite writing to TLS 1.2 case  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 17:17:57 +02:00 
						 
				 
			
				
					
						
							
							
								Gabor Mezei 
							
						 
					 
					
						
						
							
						
						cb5ef6a532 
					 
					
						
						
							
							Remove duplicated includes  
						
						... 
						
						
						
						Signed-off-by: Gabor Mezei <gabor.mezei@arm.com > 
						
						
					 
					
						2022-03-29 17:10:01 +02:00 
						 
				 
			
				
					
						
							
							
								Gabor Mezei 
							
						 
					 
					
						
						
							
						
						55c49a3335 
					 
					
						
						
							
							Use proper macro guard  
						
						... 
						
						
						
						Signed-off-by: Gabor Mezei <gabor.mezei@arm.com > 
						
						
					 
					
						2022-03-29 17:09:15 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						86a477f5ee 
					 
					
						
						
							
							ssl_client.c: Adapt initial version selection to TLS 1.2 case  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 17:00:29 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						3d580bf4bd 
					 
					
						
						
							
							Move TLS 1.3 client hello writing to new TLS 1.2 and 1.3 client file  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 17:00:29 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						8f6d39a81d 
					 
					
						
						
							
							Make some handshake TLS 1.3 utility routines available for TLS 1.2  
						
						... 
						
						
						
						Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 14:42:17 +02:00 
						 
				 
			
				
					
						
							
							
								Ronald Cron 
							
						 
					 
					
						
						
							
						
						90f012037d 
					 
					
						
						
							
							ssl_tls12_server.c: Simplify TLS version check in ClientHello  
						
						... 
						
						
						
						The TLS server code only support TLS 1.2 thus simplify
the check of the version proposed by the client.
Signed-off-by: Ronald Cron <ronald.cron@arm.com > 
						
						
					 
					
						2022-03-29 14:42:17 +02:00