aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPrzemyslaw Stekiel <przemyslaw.stekiel@mobica.com>2022-01-31 10:59:30 +0100
committerPrzemyslaw Stekiel <przemyslaw.stekiel@mobica.com>2022-01-31 15:39:24 +0100
commit2c87a200a3e45be6643fa0679c7efaf8b11ae0bc (patch)
tree3fabb1ea0b80ecdf3cf97914f641b1fc99b69f41
parent89dad93a78c674152e40f8d84dbb2e24ea65ff35 (diff)
downloadmbedtls-2c87a200a3e45be6643fa0679c7efaf8b11ae0bc.zip
mbedtls-2c87a200a3e45be6643fa0679c7efaf8b11ae0bc.tar.gz
mbedtls-2c87a200a3e45be6643fa0679c7efaf8b11ae0bc.tar.bz2
ssl_write_encrypt_then_mac_ext(): adapt to psa crypto
Signed-off-by: Przemyslaw Stekiel <przemyslaw.stekiel@mobica.com>
-rw-r--r--library/ssl_srv.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/library/ssl_srv.c b/library/ssl_srv.c
index f189e1d..2512c47 100644
--- a/library/ssl_srv.c
+++ b/library/ssl_srv.c
@@ -2035,7 +2035,13 @@ static void ssl_write_encrypt_then_mac_ext( mbedtls_ssl_context *ssl,
{
unsigned char *p = buf;
const mbedtls_ssl_ciphersuite_t *suite = NULL;
+#if defined(MBEDTLS_USE_PSA_CRYPTO)
+ psa_key_type_t key_type;
+ psa_algorithm_t alg;
+ size_t key_bits;
+#else
const mbedtls_cipher_info_t *cipher = NULL;
+#endif /* MBEDTLS_USE_PSA_CRYPTO */
if( ssl->session_negotiate->encrypt_then_mac == MBEDTLS_SSL_ETM_DISABLED )
{
@@ -2051,8 +2057,13 @@ static void ssl_write_encrypt_then_mac_ext( mbedtls_ssl_context *ssl,
*/
if( ( suite = mbedtls_ssl_ciphersuite_from_id(
ssl->session_negotiate->ciphersuite ) ) == NULL ||
+#if defined(MBEDTLS_USE_PSA_CRYPTO)
+ ( mbedtls_ssl_cipher_to_psa( suite->cipher, 0, &alg, &key_type, &key_bits ) != PSA_SUCCESS) ||
+ alg != PSA_ALG_CBC_NO_PADDING )
+#else
( cipher = mbedtls_cipher_info_from_type( suite->cipher ) ) == NULL ||
cipher->mode != MBEDTLS_MODE_CBC )
+#endif /* MBEDTLS_USE_PSA_CRYPTO */
{
*olen = 0;
return;