mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-03-29 22:20:30 +00:00
Put the id field at the end of the psa_key_attributes_s structure
Putting the id at the of the psa_key_attributes_s structure allows for a more efficient marshalling of the parameters around a transport channel which provides separation between a client view and a service view of the key parameters. Signed-off-by: Antonio de Angelis <antonio.deangelis@arm.com>
This commit is contained in:
parent
aa3fa98bc4
commit
667cad5b81
@ -239,18 +239,17 @@ typedef struct {
|
|||||||
psa_key_type_t MBEDTLS_PRIVATE(type);
|
psa_key_type_t MBEDTLS_PRIVATE(type);
|
||||||
psa_key_bits_t MBEDTLS_PRIVATE(bits);
|
psa_key_bits_t MBEDTLS_PRIVATE(bits);
|
||||||
psa_key_lifetime_t MBEDTLS_PRIVATE(lifetime);
|
psa_key_lifetime_t MBEDTLS_PRIVATE(lifetime);
|
||||||
mbedtls_svc_key_id_t MBEDTLS_PRIVATE(id);
|
|
||||||
psa_key_policy_t MBEDTLS_PRIVATE(policy);
|
psa_key_policy_t MBEDTLS_PRIVATE(policy);
|
||||||
psa_key_attributes_flag_t MBEDTLS_PRIVATE(flags);
|
psa_key_attributes_flag_t MBEDTLS_PRIVATE(flags);
|
||||||
|
mbedtls_svc_key_id_t MBEDTLS_PRIVATE(id);
|
||||||
} psa_core_key_attributes_t;
|
} psa_core_key_attributes_t;
|
||||||
|
|
||||||
#define PSA_CORE_KEY_ATTRIBUTES_INIT { PSA_KEY_TYPE_NONE, 0, \
|
#define PSA_CORE_KEY_ATTRIBUTES_INIT { PSA_KEY_TYPE_NONE, 0, \
|
||||||
PSA_KEY_LIFETIME_VOLATILE, \
|
PSA_KEY_LIFETIME_VOLATILE, \
|
||||||
MBEDTLS_SVC_KEY_ID_INIT, \
|
PSA_KEY_POLICY_INIT, 0, \
|
||||||
PSA_KEY_POLICY_INIT, 0 }
|
MBEDTLS_SVC_KEY_ID_INIT }
|
||||||
|
|
||||||
struct psa_key_attributes_s {
|
struct psa_key_attributes_s {
|
||||||
psa_core_key_attributes_t MBEDTLS_PRIVATE(core);
|
|
||||||
#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
|
#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
|
||||||
psa_key_slot_number_t MBEDTLS_PRIVATE(slot_number);
|
psa_key_slot_number_t MBEDTLS_PRIVATE(slot_number);
|
||||||
#endif /* MBEDTLS_PSA_CRYPTO_SE_C */
|
#endif /* MBEDTLS_PSA_CRYPTO_SE_C */
|
||||||
@ -268,12 +267,13 @@ struct psa_key_attributes_s {
|
|||||||
*/
|
*/
|
||||||
void *MBEDTLS_PRIVATE(domain_parameters);
|
void *MBEDTLS_PRIVATE(domain_parameters);
|
||||||
size_t MBEDTLS_PRIVATE(domain_parameters_size);
|
size_t MBEDTLS_PRIVATE(domain_parameters_size);
|
||||||
|
psa_core_key_attributes_t MBEDTLS_PRIVATE(core);
|
||||||
};
|
};
|
||||||
|
|
||||||
#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
|
#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
|
||||||
#define PSA_KEY_ATTRIBUTES_INIT { PSA_CORE_KEY_ATTRIBUTES_INIT, 0, NULL, 0 }
|
#define PSA_KEY_ATTRIBUTES_INIT { 0, NULL, 0, PSA_CORE_KEY_ATTRIBUTES_INIT }
|
||||||
#else
|
#else
|
||||||
#define PSA_KEY_ATTRIBUTES_INIT { PSA_CORE_KEY_ATTRIBUTES_INIT, NULL, 0 }
|
#define PSA_KEY_ATTRIBUTES_INIT { NULL, 0, PSA_CORE_KEY_ATTRIBUTES_INIT }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static inline struct psa_key_attributes_s psa_key_attributes_init(void)
|
static inline struct psa_key_attributes_s psa_key_attributes_init(void)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user