mirror of
https://github.com/espressif/mbedtls.git
synced 2026-09-06 02:19:55 +00:00
feat(drivers): ESP-HMAC opaque driver
This commit is contained in:
@@ -41,10 +41,16 @@
|
||||
#include "../drivers/p256-m/p256-m_driver_entrypoints.h"
|
||||
|
||||
#endif
|
||||
|
||||
/* Headers for esp_sha transparent driver */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_sha.h"
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_hmac.h"
|
||||
|
||||
#endif
|
||||
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_hmac_transparent.h"
|
||||
|
||||
#endif
|
||||
|
||||
/* Headers for esp_aes transparent driver */
|
||||
@@ -55,6 +61,12 @@
|
||||
|
||||
#if defined(ESP_MD5_DRIVER_ENABLED)
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_md5.h"
|
||||
|
||||
#endif
|
||||
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_hmac_opaque.h"
|
||||
|
||||
#endif
|
||||
|
||||
/* Headers for esp_ecdsa opaque driver */
|
||||
@@ -90,6 +102,7 @@
|
||||
#define ESP_RSA_DS_OPAQUE_DRIVER_ID (10)
|
||||
#define ESP_CMAC_TRANSPARENT_DRIVER_ID (11)
|
||||
#define ESP_HMAC_TRANSPARENT_DRIVER_ID (12)
|
||||
#define ESP_HMAC_OPAQUE_DRIVER_ID (13)
|
||||
|
||||
/* END-driver id */
|
||||
|
||||
@@ -881,6 +894,14 @@ static inline psa_status_t psa_driver_wrapper_get_key_buffer_size_from_key_data(
|
||||
PSA_SUCCESS : PSA_ERROR_NOT_SUPPORTED );
|
||||
#endif /* ESP_RSA_DS_DRIVER_ENABLED */
|
||||
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case PSA_KEY_LOCATION_ESP_HMAC:
|
||||
*key_buffer_size = esp_hmac_opaque_size_function(key_type,
|
||||
PSA_BYTES_TO_BITS( data_length ) );
|
||||
return( ( *key_buffer_size != 0 ) ?
|
||||
PSA_SUCCESS : PSA_ERROR_NOT_SUPPORTED );
|
||||
#endif /* defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED) */
|
||||
|
||||
default:
|
||||
(void)key_type;
|
||||
(void)data;
|
||||
@@ -1059,6 +1080,14 @@ static inline psa_status_t psa_driver_wrapper_import_key(
|
||||
key_buffer, key_buffer_size,
|
||||
key_buffer_length, bits ) );
|
||||
#endif /* defined(ESP_ECDSA_DRIVER_ENABLED) && defined(ESP_ECDSA_SIGN_DRIVER_ENABLED) */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case PSA_KEY_LOCATION_ESP_HMAC:
|
||||
return( esp_hmac_import_key_opaque(
|
||||
attributes,
|
||||
data, data_length,
|
||||
key_buffer, key_buffer_size,
|
||||
key_buffer_length, bits ) );
|
||||
#endif /* defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED) */
|
||||
|
||||
#if defined(ESP_RSA_DS_DRIVER_ENABLED)
|
||||
case PSA_KEY_LOCATION_ESP_RSA_DS:
|
||||
@@ -2610,25 +2639,22 @@ static inline psa_status_t psa_driver_wrapper_mac_compute(
|
||||
status = esp_cmac_compute(attributes, key_buffer, key_buffer_size, alg,
|
||||
input, input_length,
|
||||
mac, mac_size, mac_length );
|
||||
if (status != PSA_SUCCESS) {
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
}
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
if (PSA_ALG_IS_HMAC(alg)) {
|
||||
status = esp_hmac_compute(attributes, key_buffer, key_buffer_size, alg,
|
||||
input, input_length,
|
||||
mac, mac_size, mac_length );
|
||||
if (status != PSA_SUCCESS) {
|
||||
status = esp_hmac_compute_transparent(
|
||||
attributes, key_buffer, key_buffer_size, alg,
|
||||
input, input_length,
|
||||
mac, mac_size, mac_length );
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
}
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
// TODO: Maybe not required? check all soft fallback mechanisms
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
status = mbedtls_test_transparent_mac_compute(
|
||||
attributes, key_buffer, key_buffer_size, alg,
|
||||
@@ -2660,6 +2686,18 @@ static inline psa_status_t psa_driver_wrapper_mac_compute(
|
||||
mac, mac_size, mac_length );
|
||||
return( status );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case PSA_KEY_LOCATION_ESP_HMAC:
|
||||
if (PSA_ALG_IS_HMAC(alg)) {
|
||||
status = esp_hmac_compute_opaque(
|
||||
attributes, key_buffer, key_buffer_size, alg,
|
||||
input, input_length,
|
||||
mac, mac_size, mac_length );
|
||||
return( status );
|
||||
} else {
|
||||
return PSA_ERROR_INVALID_ARGUMENT;
|
||||
}
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
/* Key is declared with a lifetime not known to us */
|
||||
@@ -2701,21 +2739,24 @@ static inline psa_status_t psa_driver_wrapper_mac_sign_setup(
|
||||
alg );
|
||||
if( status == PSA_SUCCESS )
|
||||
operation->id = ESP_CMAC_TRANSPARENT_DRIVER_ID;
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
} else
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
if (PSA_ALG_IS_HMAC(alg)) {
|
||||
status = esp_hmac_setup( &operation->ctx.esp_hmac_ctx,
|
||||
status = esp_hmac_setup_transparent( &operation->ctx.esp_hmac_transparent_ctx,
|
||||
attributes,
|
||||
key_buffer, key_buffer_size,
|
||||
alg );
|
||||
if ( status == PSA_SUCCESS )
|
||||
operation->id = ESP_HMAC_TRANSPARENT_DRIVER_ID;
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
}
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
status = mbedtls_test_transparent_mac_sign_setup(
|
||||
&operation->ctx.transparent_test_driver_ctx,
|
||||
@@ -2759,6 +2800,19 @@ static inline psa_status_t psa_driver_wrapper_mac_sign_setup(
|
||||
|
||||
return( status );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case PSA_KEY_LOCATION_ESP_HMAC:
|
||||
if (PSA_ALG_IS_HMAC(alg)) {
|
||||
status = esp_hmac_setup_opaque(
|
||||
&operation->ctx.esp_hmac_opaque_ctx,
|
||||
attributes, key_buffer, key_buffer_size, alg );
|
||||
if ( status == PSA_SUCCESS )
|
||||
operation->id = ESP_HMAC_OPAQUE_DRIVER_ID;
|
||||
return( status );
|
||||
} else {
|
||||
return PSA_ERROR_INVALID_ARGUMENT;
|
||||
}
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
/* Key is declared with a lifetime not known to us */
|
||||
@@ -2796,21 +2850,24 @@ static inline psa_status_t psa_driver_wrapper_mac_verify_setup(
|
||||
alg );
|
||||
if( status == PSA_SUCCESS )
|
||||
operation->id = ESP_CMAC_TRANSPARENT_DRIVER_ID;
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
} else
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
if (PSA_ALG_IS_HMAC(alg)) {
|
||||
status = esp_hmac_setup( &operation->ctx.esp_hmac_ctx,
|
||||
status = esp_hmac_setup_transparent( &operation->ctx.esp_hmac_transparent_ctx,
|
||||
attributes,
|
||||
key_buffer, key_buffer_size,
|
||||
alg );
|
||||
if (status == PSA_SUCCESS)
|
||||
operation->id = ESP_HMAC_TRANSPARENT_DRIVER_ID;
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
}
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
if (status != PSA_ERROR_NOT_SUPPORTED) {
|
||||
return status;
|
||||
}
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
status = mbedtls_test_transparent_mac_verify_setup(
|
||||
&operation->ctx.transparent_test_driver_ctx,
|
||||
@@ -2854,6 +2911,19 @@ static inline psa_status_t psa_driver_wrapper_mac_verify_setup(
|
||||
|
||||
return( status );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case PSA_KEY_LOCATION_ESP_HMAC:
|
||||
if (PSA_ALG_IS_HMAC(alg)) {
|
||||
status = esp_hmac_setup_opaque(
|
||||
&operation->ctx.esp_hmac_opaque_ctx,
|
||||
attributes, key_buffer, key_buffer_size, alg );
|
||||
if ( status == PSA_SUCCESS )
|
||||
operation->id = ESP_HMAC_OPAQUE_DRIVER_ID;
|
||||
return( status );
|
||||
} else {
|
||||
return PSA_ERROR_INVALID_ARGUMENT;
|
||||
}
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
/* Key is declared with a lifetime not known to us */
|
||||
@@ -2885,11 +2955,11 @@ static inline psa_status_t psa_driver_wrapper_mac_update(
|
||||
return (esp_cmac_update( &operation->ctx.esp_cmac_ctx,
|
||||
input, input_length ));
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
case ESP_HMAC_TRANSPARENT_DRIVER_ID:
|
||||
return (esp_hmac_update( &operation->ctx.esp_hmac_ctx,
|
||||
return (esp_hmac_update_transparent( &operation->ctx.esp_hmac_transparent_ctx,
|
||||
input, input_length ));
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
case MBEDTLS_TEST_TRANSPARENT_DRIVER_ID:
|
||||
return( mbedtls_test_transparent_mac_update(
|
||||
@@ -2901,6 +2971,11 @@ static inline psa_status_t psa_driver_wrapper_mac_update(
|
||||
&operation->ctx.opaque_test_driver_ctx,
|
||||
input, input_length ) );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case ESP_HMAC_OPAQUE_DRIVER_ID:
|
||||
return (esp_hmac_update_opaque( &operation->ctx.esp_hmac_opaque_ctx,
|
||||
input, input_length ));
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
(void) input;
|
||||
@@ -2929,11 +3004,11 @@ static inline psa_status_t psa_driver_wrapper_mac_sign_finish(
|
||||
return (esp_cmac_finish( &operation->ctx.esp_cmac_ctx,
|
||||
mac, mac_size, mac_length ));
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
case ESP_HMAC_TRANSPARENT_DRIVER_ID:
|
||||
return (esp_hmac_finish( &operation->ctx.esp_hmac_ctx,
|
||||
return (esp_hmac_finish_transparent( &operation->ctx.esp_hmac_transparent_ctx,
|
||||
mac, mac_size, mac_length ));
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
case MBEDTLS_TEST_TRANSPARENT_DRIVER_ID:
|
||||
return( mbedtls_test_transparent_mac_sign_finish(
|
||||
@@ -2945,6 +3020,11 @@ static inline psa_status_t psa_driver_wrapper_mac_sign_finish(
|
||||
&operation->ctx.opaque_test_driver_ctx,
|
||||
mac, mac_size, mac_length ) );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case ESP_HMAC_OPAQUE_DRIVER_ID:
|
||||
return (esp_hmac_finish_opaque( &operation->ctx.esp_hmac_opaque_ctx,
|
||||
mac, mac_size, mac_length ));
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
(void) mac;
|
||||
@@ -2973,11 +3053,11 @@ static inline psa_status_t psa_driver_wrapper_mac_verify_finish(
|
||||
return (esp_cmac_verify_finish( &operation->ctx.esp_cmac_ctx,
|
||||
mac, mac_length ));
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
case ESP_HMAC_TRANSPARENT_DRIVER_ID:
|
||||
return (esp_hmac_verify_finish( &operation->ctx.esp_hmac_ctx,
|
||||
return (esp_hmac_verify_finish_transparent( &operation->ctx.esp_hmac_transparent_ctx,
|
||||
mac, mac_length ));
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
case MBEDTLS_TEST_TRANSPARENT_DRIVER_ID:
|
||||
return( mbedtls_test_transparent_mac_verify_finish(
|
||||
@@ -2989,6 +3069,11 @@ static inline psa_status_t psa_driver_wrapper_mac_verify_finish(
|
||||
&operation->ctx.opaque_test_driver_ctx,
|
||||
mac, mac_length ) );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case ESP_HMAC_OPAQUE_DRIVER_ID:
|
||||
return (esp_hmac_verify_finish_opaque( &operation->ctx.esp_hmac_opaque_ctx,
|
||||
mac, mac_length ));
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
(void) mac;
|
||||
@@ -3012,10 +3097,10 @@ static inline psa_status_t psa_driver_wrapper_mac_abort(
|
||||
case ESP_CMAC_TRANSPARENT_DRIVER_ID:
|
||||
return (esp_cmac_abort( &operation->ctx.esp_cmac_ctx ));
|
||||
#endif /* ESP_CMAC_DRIVER_ENABLED */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
case ESP_HMAC_TRANSPARENT_DRIVER_ID:
|
||||
return (esp_hmac_abort( &operation->ctx.esp_hmac_ctx ));
|
||||
#endif /* ESP_SHA_DRIVER_ENABLED */
|
||||
return (esp_hmac_abort_transparent( &operation->ctx.esp_hmac_transparent_ctx ));
|
||||
#endif /* ESP_HMAC_TRANSPARENT_DRIVER_ENABLED */
|
||||
#if defined(PSA_CRYPTO_DRIVER_TEST)
|
||||
case MBEDTLS_TEST_TRANSPARENT_DRIVER_ID:
|
||||
return( mbedtls_test_transparent_mac_abort(
|
||||
@@ -3024,6 +3109,10 @@ static inline psa_status_t psa_driver_wrapper_mac_abort(
|
||||
return( mbedtls_test_opaque_mac_abort(
|
||||
&operation->ctx.opaque_test_driver_ctx ) );
|
||||
#endif /* PSA_CRYPTO_DRIVER_TEST */
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
case ESP_HMAC_OPAQUE_DRIVER_ID:
|
||||
return (esp_hmac_abort_opaque( &operation->ctx.esp_hmac_opaque_ctx ));
|
||||
#endif /* ESP_HMAC_OPAQUE_DRIVER_ENABLED */
|
||||
#endif /* PSA_CRYPTO_ACCELERATOR_DRIVER_PRESENT */
|
||||
default:
|
||||
return( PSA_ERROR_INVALID_ARGUMENT );
|
||||
|
||||
@@ -39,17 +39,6 @@
|
||||
#if defined(MBEDTLS_PSA_P256M_DRIVER_ENABLED)
|
||||
#include "../drivers/p256-m/p256-m_driver_entrypoints.h"
|
||||
|
||||
#endif
|
||||
/* Headers for esp_sha transparent driver */
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_sha.h"
|
||||
|
||||
#endif
|
||||
/* Headers for esp_aes transparent driver */
|
||||
#if defined(ESP_AES_DRIVER_ENABLED)
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_aes.h"
|
||||
#include "../../../port/psa_driver/include/psa_crypto_driver_esp_aes_gcm.h"
|
||||
|
||||
#endif
|
||||
/* Headers for esp_ecdsa opaque driver */
|
||||
#if defined(ESP_ECDSA_DRIVER_ENABLED)
|
||||
@@ -67,8 +56,6 @@
|
||||
#define MBEDTLS_TEST_OPAQUE_DRIVER_ID (2)
|
||||
#define MBEDTLS_TEST_TRANSPARENT_DRIVER_ID (3)
|
||||
#define P256_TRANSPARENT_DRIVER_ID (4)
|
||||
#define ESP_SHA_TRANSPARENT_DRIVER_ID (5)
|
||||
#define ESP_AES_TRANSPARENT_DRIVER_ID (6)
|
||||
|
||||
/* END-driver id */
|
||||
|
||||
|
||||
@@ -48,8 +48,12 @@
|
||||
#include "psa_crypto_driver_esp_cmac_contexts.h"
|
||||
#endif
|
||||
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
#include "psa_crypto_driver_esp_hmac_contexts.h"
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
#include "psa_crypto_driver_esp_hmac_transparent_contexts.h"
|
||||
#endif
|
||||
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
#include "psa_crypto_driver_esp_hmac_opaque_contexts.h"
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_TEST_LIBTESTDRIVER1)
|
||||
@@ -143,8 +147,11 @@ typedef union {
|
||||
#if defined(ESP_CMAC_DRIVER_ENABLED)
|
||||
esp_cmac_operation_t esp_cmac_ctx;
|
||||
#endif
|
||||
#if defined(ESP_SHA_DRIVER_ENABLED)
|
||||
esp_hmac_operation_t esp_hmac_ctx;
|
||||
#if defined(ESP_HMAC_TRANSPARENT_DRIVER_ENABLED)
|
||||
esp_hmac_transparent_operation_t esp_hmac_transparent_ctx;
|
||||
#endif
|
||||
#if defined(ESP_HMAC_OPAQUE_DRIVER_ENABLED)
|
||||
esp_hmac_opaque_operation_t esp_hmac_opaque_ctx;
|
||||
#endif
|
||||
} psa_driver_mac_context_t;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user