/src/mbedtls/include/psa/crypto_struct.h
Line  | Count  | Source (jump to first uncovered line)  | 
1  |  | /**  | 
2  |  |  * \file psa/crypto_struct.h  | 
3  |  |  *  | 
4  |  |  * \brief PSA cryptography module: Mbed TLS structured type implementations  | 
5  |  |  *  | 
6  |  |  * \note This file may not be included directly. Applications must  | 
7  |  |  * include psa/crypto.h.  | 
8  |  |  *  | 
9  |  |  * This file contains the definitions of some data structures with  | 
10  |  |  * implementation-specific definitions.  | 
11  |  |  *  | 
12  |  |  * In implementations with isolation between the application and the  | 
13  |  |  * cryptography module, it is expected that the front-end and the back-end  | 
14  |  |  * would have different versions of this file.  | 
15  |  |  *  | 
16  |  |  * <h3>Design notes about multipart operation structures</h3>  | 
17  |  |  *  | 
18  |  |  * For multipart operations without driver delegation support, each multipart  | 
19  |  |  * operation structure contains a `psa_algorithm_t alg` field which indicates  | 
20  |  |  * which specific algorithm the structure is for. When the structure is not in  | 
21  |  |  * use, `alg` is 0. Most of the structure consists of a union which is  | 
22  |  |  * discriminated by `alg`.  | 
23  |  |  *  | 
24  |  |  * For multipart operations with driver delegation support, each multipart  | 
25  |  |  * operation structure contains an `unsigned int id` field indicating which  | 
26  |  |  * driver got assigned to do the operation. When the structure is not in use,  | 
27  |  |  * 'id' is 0. The structure contains also a driver context which is the union  | 
28  |  |  * of the contexts of all drivers able to handle the type of multipart  | 
29  |  |  * operation.  | 
30  |  |  *  | 
31  |  |  * Note that when `alg` or `id` is 0, the content of other fields is undefined.  | 
32  |  |  * In particular, it is not guaranteed that a freshly-initialized structure  | 
33  |  |  * is all-zero: we initialize structures to something like `{0, 0}`, which | 
34  |  |  * is only guaranteed to initializes the first member of the union;  | 
35  |  |  * GCC and Clang initialize the whole structure to 0 (at the time of writing),  | 
36  |  |  * but MSVC and CompCert don't.  | 
37  |  |  *  | 
38  |  |  * In Mbed TLS, multipart operation structures live independently from  | 
39  |  |  * the key. This allows Mbed TLS to free the key objects when destroying  | 
40  |  |  * a key slot. If a multipart operation needs to remember the key after  | 
41  |  |  * the setup function returns, the operation structure needs to contain a  | 
42  |  |  * copy of the key.  | 
43  |  |  */  | 
44  |  | /*  | 
45  |  |  *  Copyright The Mbed TLS Contributors  | 
46  |  |  *  SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later  | 
47  |  |  */  | 
48  |  |  | 
49  |  | #ifndef PSA_CRYPTO_STRUCT_H  | 
50  |  | #define PSA_CRYPTO_STRUCT_H  | 
51  |  | #include "mbedtls/private_access.h"  | 
52  |  |  | 
53  |  | #ifdef __cplusplus  | 
54  |  | extern "C" { | 
55  |  | #endif  | 
56  |  |  | 
57  |  | /*  | 
58  |  |  * Include the build-time configuration information header. Here, we do not  | 
59  |  |  * include `"mbedtls/build_info.h"` directly but `"psa/build_info.h"`, which  | 
60  |  |  * is basically just an alias to it. This is to ease the maintenance of the  | 
61  |  |  * TF-PSA-Crypto repository which has a different build system and  | 
62  |  |  * configuration.  | 
63  |  |  */  | 
64  |  | #include "psa/build_info.h"  | 
65  |  |  | 
66  |  | /* Include the context definition for the compiled-in drivers for the primitive  | 
67  |  |  * algorithms. */  | 
68  |  | #include "psa/crypto_driver_contexts_primitives.h"  | 
69  |  |  | 
70  |  | struct psa_hash_operation_s { | 
71  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
72  |  |     mbedtls_psa_client_handle_t handle;  | 
73  |  | #else  | 
74  |  |     /** Unique ID indicating which driver got assigned to do the  | 
75  |  |      * operation. Since driver contexts are driver-specific, swapping  | 
76  |  |      * drivers halfway through the operation is not supported.  | 
77  |  |      * ID values are auto-generated in psa_driver_wrappers.h.  | 
78  |  |      * ID value zero means the context is not valid or not assigned to  | 
79  |  |      * any driver (i.e. the driver context is not active, in use). */  | 
80  |  |     unsigned int MBEDTLS_PRIVATE(id);  | 
81  |  |     psa_driver_hash_context_t MBEDTLS_PRIVATE(ctx);  | 
82  |  | #endif  | 
83  |  | };  | 
84  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
85  |  | #define PSA_HASH_OPERATION_INIT { 0 } | 
86  |  | #else  | 
87  | 0  | #define PSA_HASH_OPERATION_INIT { 0, { 0 } } | 
88  |  | #endif  | 
89  |  | static inline struct psa_hash_operation_s psa_hash_operation_init(void)  | 
90  | 0  | { | 
91  | 0  |     const struct psa_hash_operation_s v = PSA_HASH_OPERATION_INIT;  | 
92  | 0  |     return v;  | 
93  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_hash_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_hash_operation_init Unexecuted instantiation: helpers.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_hash_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_hash_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_hash_operation_init Unexecuted instantiation: certs.c:psa_hash_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_hash_operation_init Unexecuted instantiation: ssl_msg.c:psa_hash_operation_init Unexecuted instantiation: ssl_ticket.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_hash_operation_init Unexecuted instantiation: debug.c:psa_hash_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_hash_operation_init Unexecuted instantiation: ssl_client.c:psa_hash_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_hash_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_hash_operation_init Unexecuted instantiation: x509.c:psa_hash_operation_init Unexecuted instantiation: x509_crt.c:psa_hash_operation_init Unexecuted instantiation: md.c:psa_hash_operation_init Unexecuted instantiation: oid.c:psa_hash_operation_init Unexecuted instantiation: pem.c:psa_hash_operation_init Unexecuted instantiation: pk.c:psa_hash_operation_init Unexecuted instantiation: pk_ecc.c:psa_hash_operation_init Unexecuted instantiation: pk_wrap.c:psa_hash_operation_init Unexecuted instantiation: pkparse.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_hash_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_hash_operation_init Unexecuted instantiation: psa_util.c:psa_hash_operation_init Unexecuted instantiation: rsa.c:psa_hash_operation_init Unexecuted instantiation: cipher.c:psa_hash_operation_init Unexecuted instantiation: cipher_wrap.c:psa_hash_operation_init Unexecuted instantiation: pkcs12.c:psa_hash_operation_init Unexecuted instantiation: pkcs5.c:psa_hash_operation_init  | 
94  |  |  | 
95  |  | struct psa_cipher_operation_s { | 
96  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
97  |  |     mbedtls_psa_client_handle_t handle;  | 
98  |  | #else  | 
99  |  |     /** Unique ID indicating which driver got assigned to do the  | 
100  |  |      * operation. Since driver contexts are driver-specific, swapping  | 
101  |  |      * drivers halfway through the operation is not supported.  | 
102  |  |      * ID values are auto-generated in psa_crypto_driver_wrappers.h  | 
103  |  |      * ID value zero means the context is not valid or not assigned to  | 
104  |  |      * any driver (i.e. none of the driver contexts are active). */  | 
105  |  |     unsigned int MBEDTLS_PRIVATE(id);  | 
106  |  |  | 
107  |  |     unsigned int MBEDTLS_PRIVATE(iv_required) : 1;  | 
108  |  |     unsigned int MBEDTLS_PRIVATE(iv_set) : 1;  | 
109  |  |  | 
110  |  |     uint8_t MBEDTLS_PRIVATE(default_iv_length);  | 
111  |  |  | 
112  |  |     psa_driver_cipher_context_t MBEDTLS_PRIVATE(ctx);  | 
113  |  | #endif  | 
114  |  | };  | 
115  |  |  | 
116  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
117  |  | #define PSA_CIPHER_OPERATION_INIT { 0 } | 
118  |  | #else  | 
119  | 0  | #define PSA_CIPHER_OPERATION_INIT { 0, 0, 0, 0, { 0 } } | 
120  |  | #endif  | 
121  |  | static inline struct psa_cipher_operation_s psa_cipher_operation_init(void)  | 
122  | 0  | { | 
123  | 0  |     const struct psa_cipher_operation_s v = PSA_CIPHER_OPERATION_INIT;  | 
124  | 0  |     return v;  | 
125  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_cipher_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_cipher_operation_init Unexecuted instantiation: helpers.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_cipher_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_cipher_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_cipher_operation_init Unexecuted instantiation: certs.c:psa_cipher_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_cipher_operation_init Unexecuted instantiation: ssl_msg.c:psa_cipher_operation_init Unexecuted instantiation: ssl_ticket.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_cipher_operation_init Unexecuted instantiation: debug.c:psa_cipher_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_cipher_operation_init Unexecuted instantiation: ssl_client.c:psa_cipher_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_cipher_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_cipher_operation_init Unexecuted instantiation: x509.c:psa_cipher_operation_init Unexecuted instantiation: x509_crt.c:psa_cipher_operation_init Unexecuted instantiation: md.c:psa_cipher_operation_init Unexecuted instantiation: oid.c:psa_cipher_operation_init Unexecuted instantiation: pem.c:psa_cipher_operation_init Unexecuted instantiation: pk.c:psa_cipher_operation_init Unexecuted instantiation: pk_ecc.c:psa_cipher_operation_init Unexecuted instantiation: pk_wrap.c:psa_cipher_operation_init Unexecuted instantiation: pkparse.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_cipher_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_cipher_operation_init Unexecuted instantiation: psa_util.c:psa_cipher_operation_init Unexecuted instantiation: rsa.c:psa_cipher_operation_init Unexecuted instantiation: cipher.c:psa_cipher_operation_init Unexecuted instantiation: cipher_wrap.c:psa_cipher_operation_init Unexecuted instantiation: pkcs12.c:psa_cipher_operation_init Unexecuted instantiation: pkcs5.c:psa_cipher_operation_init  | 
126  |  |  | 
127  |  | /* Include the context definition for the compiled-in drivers for the composite  | 
128  |  |  * algorithms. */  | 
129  |  | #include "psa/crypto_driver_contexts_composites.h"  | 
130  |  |  | 
131  |  | struct psa_mac_operation_s { | 
132  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
133  |  |     mbedtls_psa_client_handle_t handle;  | 
134  |  | #else  | 
135  |  |     /** Unique ID indicating which driver got assigned to do the  | 
136  |  |      * operation. Since driver contexts are driver-specific, swapping  | 
137  |  |      * drivers halfway through the operation is not supported.  | 
138  |  |      * ID values are auto-generated in psa_driver_wrappers.h  | 
139  |  |      * ID value zero means the context is not valid or not assigned to  | 
140  |  |      * any driver (i.e. none of the driver contexts are active). */  | 
141  |  |     unsigned int MBEDTLS_PRIVATE(id);  | 
142  |  |     uint8_t MBEDTLS_PRIVATE(mac_size);  | 
143  |  |     unsigned int MBEDTLS_PRIVATE(is_sign) : 1;  | 
144  |  |     psa_driver_mac_context_t MBEDTLS_PRIVATE(ctx);  | 
145  |  | #endif  | 
146  |  | };  | 
147  |  |  | 
148  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
149  |  | #define PSA_MAC_OPERATION_INIT { 0 } | 
150  |  | #else  | 
151  | 0  | #define PSA_MAC_OPERATION_INIT { 0, 0, 0, { 0 } } | 
152  |  | #endif  | 
153  |  | static inline struct psa_mac_operation_s psa_mac_operation_init(void)  | 
154  | 0  | { | 
155  | 0  |     const struct psa_mac_operation_s v = PSA_MAC_OPERATION_INIT;  | 
156  | 0  |     return v;  | 
157  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_mac_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_mac_operation_init Unexecuted instantiation: helpers.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_mac_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_mac_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_mac_operation_init Unexecuted instantiation: certs.c:psa_mac_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_mac_operation_init Unexecuted instantiation: ssl_msg.c:psa_mac_operation_init Unexecuted instantiation: ssl_ticket.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_mac_operation_init Unexecuted instantiation: debug.c:psa_mac_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_mac_operation_init Unexecuted instantiation: ssl_client.c:psa_mac_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_mac_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_mac_operation_init Unexecuted instantiation: x509.c:psa_mac_operation_init Unexecuted instantiation: x509_crt.c:psa_mac_operation_init Unexecuted instantiation: md.c:psa_mac_operation_init Unexecuted instantiation: oid.c:psa_mac_operation_init Unexecuted instantiation: pem.c:psa_mac_operation_init Unexecuted instantiation: pk.c:psa_mac_operation_init Unexecuted instantiation: pk_ecc.c:psa_mac_operation_init Unexecuted instantiation: pk_wrap.c:psa_mac_operation_init Unexecuted instantiation: pkparse.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_mac_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_mac_operation_init Unexecuted instantiation: psa_util.c:psa_mac_operation_init Unexecuted instantiation: rsa.c:psa_mac_operation_init Unexecuted instantiation: cipher.c:psa_mac_operation_init Unexecuted instantiation: cipher_wrap.c:psa_mac_operation_init Unexecuted instantiation: pkcs12.c:psa_mac_operation_init Unexecuted instantiation: pkcs5.c:psa_mac_operation_init  | 
158  |  |  | 
159  |  | struct psa_aead_operation_s { | 
160  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
161  |  |     mbedtls_psa_client_handle_t handle;  | 
162  |  | #else  | 
163  |  |     /** Unique ID indicating which driver got assigned to do the  | 
164  |  |      * operation. Since driver contexts are driver-specific, swapping  | 
165  |  |      * drivers halfway through the operation is not supported.  | 
166  |  |      * ID values are auto-generated in psa_crypto_driver_wrappers.h  | 
167  |  |      * ID value zero means the context is not valid or not assigned to  | 
168  |  |      * any driver (i.e. none of the driver contexts are active). */  | 
169  |  |     unsigned int MBEDTLS_PRIVATE(id);  | 
170  |  |  | 
171  |  |     psa_algorithm_t MBEDTLS_PRIVATE(alg);  | 
172  |  |     psa_key_type_t MBEDTLS_PRIVATE(key_type);  | 
173  |  |  | 
174  |  |     size_t MBEDTLS_PRIVATE(ad_remaining);  | 
175  |  |     size_t MBEDTLS_PRIVATE(body_remaining);  | 
176  |  |  | 
177  |  |     unsigned int MBEDTLS_PRIVATE(nonce_set) : 1;  | 
178  |  |     unsigned int MBEDTLS_PRIVATE(lengths_set) : 1;  | 
179  |  |     unsigned int MBEDTLS_PRIVATE(ad_started) : 1;  | 
180  |  |     unsigned int MBEDTLS_PRIVATE(body_started) : 1;  | 
181  |  |     unsigned int MBEDTLS_PRIVATE(is_encrypt) : 1;  | 
182  |  |  | 
183  |  |     psa_driver_aead_context_t MBEDTLS_PRIVATE(ctx);  | 
184  |  | #endif  | 
185  |  | };  | 
186  |  |  | 
187  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
188  |  | #define PSA_AEAD_OPERATION_INIT { 0 } | 
189  |  | #else  | 
190  |  | #define PSA_AEAD_OPERATION_INIT { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, { 0 } } | 
191  |  | #endif  | 
192  |  | static inline struct psa_aead_operation_s psa_aead_operation_init(void)  | 
193  | 0  | { | 
194  | 0  |     const struct psa_aead_operation_s v = PSA_AEAD_OPERATION_INIT;  | 
195  | 0  |     return v;  | 
196  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_aead_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_aead_operation_init Unexecuted instantiation: helpers.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_aead_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_aead_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_aead_operation_init Unexecuted instantiation: certs.c:psa_aead_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_aead_operation_init Unexecuted instantiation: ssl_msg.c:psa_aead_operation_init Unexecuted instantiation: ssl_ticket.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_aead_operation_init Unexecuted instantiation: debug.c:psa_aead_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_aead_operation_init Unexecuted instantiation: ssl_client.c:psa_aead_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_aead_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_aead_operation_init Unexecuted instantiation: x509.c:psa_aead_operation_init Unexecuted instantiation: x509_crt.c:psa_aead_operation_init Unexecuted instantiation: md.c:psa_aead_operation_init Unexecuted instantiation: oid.c:psa_aead_operation_init Unexecuted instantiation: pem.c:psa_aead_operation_init Unexecuted instantiation: pk.c:psa_aead_operation_init Unexecuted instantiation: pk_ecc.c:psa_aead_operation_init Unexecuted instantiation: pk_wrap.c:psa_aead_operation_init Unexecuted instantiation: pkparse.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_aead_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_aead_operation_init Unexecuted instantiation: psa_util.c:psa_aead_operation_init Unexecuted instantiation: rsa.c:psa_aead_operation_init Unexecuted instantiation: cipher.c:psa_aead_operation_init Unexecuted instantiation: cipher_wrap.c:psa_aead_operation_init Unexecuted instantiation: pkcs12.c:psa_aead_operation_init Unexecuted instantiation: pkcs5.c:psa_aead_operation_init  | 
197  |  |  | 
198  |  | /* Include the context definition for the compiled-in drivers for the key  | 
199  |  |  * derivation algorithms. */  | 
200  |  | #include "psa/crypto_driver_contexts_key_derivation.h"  | 
201  |  |  | 
202  |  | struct psa_key_derivation_s { | 
203  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
204  |  |     mbedtls_psa_client_handle_t handle;  | 
205  |  | #else  | 
206  |  |     psa_algorithm_t MBEDTLS_PRIVATE(alg);  | 
207  |  |     unsigned int MBEDTLS_PRIVATE(can_output_key) : 1;  | 
208  |  |     size_t MBEDTLS_PRIVATE(capacity);  | 
209  |  |     psa_driver_key_derivation_context_t MBEDTLS_PRIVATE(ctx);  | 
210  |  | #endif  | 
211  |  | };  | 
212  |  |  | 
213  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
214  |  | #define PSA_KEY_DERIVATION_OPERATION_INIT { 0 } | 
215  |  | #else  | 
216  |  | /* This only zeroes out the first byte in the union, the rest is unspecified. */  | 
217  | 0  | #define PSA_KEY_DERIVATION_OPERATION_INIT { 0, 0, 0, { 0 } } | 
218  |  | #endif  | 
219  |  | static inline struct psa_key_derivation_s psa_key_derivation_operation_init(  | 
220  |  |     void)  | 
221  | 0  | { | 
222  | 0  |     const struct psa_key_derivation_s v = PSA_KEY_DERIVATION_OPERATION_INIT;  | 
223  | 0  |     return v;  | 
224  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_key_derivation_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_key_derivation_operation_init Unexecuted instantiation: helpers.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_key_derivation_operation_init Unexecuted instantiation: certs.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_msg.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_ticket.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_key_derivation_operation_init Unexecuted instantiation: debug.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_client.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_key_derivation_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_key_derivation_operation_init Unexecuted instantiation: x509.c:psa_key_derivation_operation_init Unexecuted instantiation: x509_crt.c:psa_key_derivation_operation_init Unexecuted instantiation: md.c:psa_key_derivation_operation_init Unexecuted instantiation: oid.c:psa_key_derivation_operation_init Unexecuted instantiation: pem.c:psa_key_derivation_operation_init Unexecuted instantiation: pk.c:psa_key_derivation_operation_init Unexecuted instantiation: pk_ecc.c:psa_key_derivation_operation_init Unexecuted instantiation: pk_wrap.c:psa_key_derivation_operation_init Unexecuted instantiation: pkparse.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_key_derivation_operation_init Unexecuted instantiation: psa_util.c:psa_key_derivation_operation_init Unexecuted instantiation: rsa.c:psa_key_derivation_operation_init Unexecuted instantiation: cipher.c:psa_key_derivation_operation_init Unexecuted instantiation: cipher_wrap.c:psa_key_derivation_operation_init Unexecuted instantiation: pkcs12.c:psa_key_derivation_operation_init Unexecuted instantiation: pkcs5.c:psa_key_derivation_operation_init  | 
225  |  |  | 
226  |  | struct psa_custom_key_parameters_s { | 
227  |  |     /* Future versions may add other fields in this structure. */  | 
228  |  |     uint32_t flags;  | 
229  |  | };  | 
230  |  |  | 
231  |  | /** The default production parameters for key generation or key derivation.  | 
232  |  |  *  | 
233  |  |  * Calling psa_generate_key_custom() or psa_key_derivation_output_key_custom()  | 
234  |  |  * with `custom=PSA_CUSTOM_KEY_PARAMETERS_INIT` and `custom_data_length=0` is  | 
235  |  |  * equivalent to calling psa_generate_key() or psa_key_derivation_output_key()  | 
236  |  |  * respectively.  | 
237  |  |  */  | 
238  |  | #define PSA_CUSTOM_KEY_PARAMETERS_INIT { 0 } | 
239  |  |  | 
240  |  | #ifndef __cplusplus  | 
241  |  | /* Omitted when compiling in C++, because one of the parameters is a  | 
242  |  |  * pointer to a struct with a flexible array member, and that is not  | 
243  |  |  * standard C++.  | 
244  |  |  * https://github.com/Mbed-TLS/mbedtls/issues/9020  | 
245  |  |  */  | 
246  |  | /* This is a deprecated variant of `struct psa_custom_key_parameters_s`.  | 
247  |  |  * It has exactly the same layout, plus an extra field which is a flexible  | 
248  |  |  * array member. Thus a `const struct psa_key_production_parameters_s *`  | 
249  |  |  * can be passed to any function that reads a  | 
250  |  |  * `const struct psa_custom_key_parameters_s *`.  | 
251  |  |  */  | 
252  |  | struct psa_key_production_parameters_s { | 
253  |  |     uint32_t flags;  | 
254  |  |     uint8_t data[];  | 
255  |  | };  | 
256  |  |  | 
257  |  | /** The default production parameters for key generation or key derivation.  | 
258  |  |  *  | 
259  |  |  * Calling psa_generate_key_ext() or psa_key_derivation_output_key_ext()  | 
260  |  |  * with `params=PSA_KEY_PRODUCTION_PARAMETERS_INIT` and  | 
261  |  |  * `params_data_length == 0` is equivalent to  | 
262  |  |  * calling psa_generate_key() or psa_key_derivation_output_key()  | 
263  |  |  * respectively.  | 
264  |  |  */  | 
265  |  | #define PSA_KEY_PRODUCTION_PARAMETERS_INIT { 0 } | 
266  |  | #endif /* !__cplusplus */  | 
267  |  |  | 
268  |  | struct psa_key_policy_s { | 
269  |  |     psa_key_usage_t MBEDTLS_PRIVATE(usage);  | 
270  |  |     psa_algorithm_t MBEDTLS_PRIVATE(alg);  | 
271  |  |     psa_algorithm_t MBEDTLS_PRIVATE(alg2);  | 
272  |  | };  | 
273  |  | typedef struct psa_key_policy_s psa_key_policy_t;  | 
274  |  |  | 
275  | 0  | #define PSA_KEY_POLICY_INIT { 0, 0, 0 } | 
276  |  | static inline struct psa_key_policy_s psa_key_policy_init(void)  | 
277  | 0  | { | 
278  | 0  |     const struct psa_key_policy_s v = PSA_KEY_POLICY_INIT;  | 
279  | 0  |     return v;  | 
280  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_key_policy_init Unexecuted instantiation: platform_builtin_keys.c:psa_key_policy_init Unexecuted instantiation: helpers.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_helpers.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_stubs.c:psa_key_policy_init Unexecuted instantiation: psa_exercise_key.c:psa_key_policy_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_key_policy_init Unexecuted instantiation: certs.c:psa_key_policy_init Unexecuted instantiation: psa_test_wrappers.c:psa_key_policy_init Unexecuted instantiation: ssl_msg.c:psa_key_policy_init Unexecuted instantiation: ssl_ticket.c:psa_key_policy_init Unexecuted instantiation: ssl_tls.c:psa_key_policy_init Unexecuted instantiation: ssl_tls12_client.c:psa_key_policy_init Unexecuted instantiation: ssl_tls12_server.c:psa_key_policy_init Unexecuted instantiation: ssl_tls13_server.c:psa_key_policy_init Unexecuted instantiation: ssl_tls13_client.c:psa_key_policy_init Unexecuted instantiation: ssl_tls13_generic.c:psa_key_policy_init Unexecuted instantiation: debug.c:psa_key_policy_init Unexecuted instantiation: ssl_ciphersuites.c:psa_key_policy_init Unexecuted instantiation: ssl_client.c:psa_key_policy_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_key_policy_init Unexecuted instantiation: ssl_tls13_keys.c:psa_key_policy_init Unexecuted instantiation: x509.c:psa_key_policy_init Unexecuted instantiation: x509_crt.c:psa_key_policy_init Unexecuted instantiation: md.c:psa_key_policy_init Unexecuted instantiation: oid.c:psa_key_policy_init Unexecuted instantiation: pem.c:psa_key_policy_init Unexecuted instantiation: pk.c:psa_key_policy_init Unexecuted instantiation: pk_ecc.c:psa_key_policy_init Unexecuted instantiation: pk_wrap.c:psa_key_policy_init Unexecuted instantiation: pkparse.c:psa_key_policy_init Unexecuted instantiation: psa_crypto.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_aead.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_cipher.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_client.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_ecp.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_hash.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_mac.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_pake.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_rsa.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_se.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_key_policy_init Unexecuted instantiation: psa_crypto_storage.c:psa_key_policy_init Unexecuted instantiation: psa_util.c:psa_key_policy_init Unexecuted instantiation: rsa.c:psa_key_policy_init Unexecuted instantiation: cipher.c:psa_key_policy_init Unexecuted instantiation: cipher_wrap.c:psa_key_policy_init Unexecuted instantiation: pkcs12.c:psa_key_policy_init Unexecuted instantiation: pkcs5.c:psa_key_policy_init  | 
281  |  |  | 
282  |  | /* The type used internally for key sizes.  | 
283  |  |  * Public interfaces use size_t, but internally we use a smaller type. */  | 
284  |  | typedef uint16_t psa_key_bits_t;  | 
285  |  | /* The maximum value of the type used to represent bit-sizes.  | 
286  |  |  * This is used to mark an invalid key size. */  | 
287  | 0  | #define PSA_KEY_BITS_TOO_LARGE          ((psa_key_bits_t) -1)  | 
288  |  | /* The maximum size of a key in bits.  | 
289  |  |  * Currently defined as the maximum that can be represented, rounded down  | 
290  |  |  * to a whole number of bytes.  | 
291  |  |  * This is an uncast value so that it can be used in preprocessor  | 
292  |  |  * conditionals. */  | 
293  | 0  | #define PSA_MAX_KEY_BITS 0xfff8  | 
294  |  |  | 
295  |  | struct psa_key_attributes_s { | 
296  |  | #if defined(MBEDTLS_PSA_CRYPTO_SE_C)  | 
297  |  |     psa_key_slot_number_t MBEDTLS_PRIVATE(slot_number);  | 
298  |  |     int MBEDTLS_PRIVATE(has_slot_number);  | 
299  |  | #endif /* MBEDTLS_PSA_CRYPTO_SE_C */  | 
300  |  |     psa_key_type_t MBEDTLS_PRIVATE(type);  | 
301  |  |     psa_key_bits_t MBEDTLS_PRIVATE(bits);  | 
302  |  |     psa_key_lifetime_t MBEDTLS_PRIVATE(lifetime);  | 
303  |  |     psa_key_policy_t MBEDTLS_PRIVATE(policy);  | 
304  |  |     /* This type has a different layout in the client view wrt the  | 
305  |  |      * service view of the key id, i.e. in service view usually is  | 
306  |  |      * expected to have MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER defined  | 
307  |  |      * thus adding an owner field to the standard psa_key_id_t. For  | 
308  |  |      * implementations with client/service separation, this means the  | 
309  |  |      * object will be marshalled through a transport channel and  | 
310  |  |      * interpreted differently at each side of the transport. Placing  | 
311  |  |      * it at the end of structures allows to interpret the structure  | 
312  |  |      * at the client without reorganizing the memory layout of the  | 
313  |  |      * struct  | 
314  |  |      */  | 
315  |  |     mbedtls_svc_key_id_t MBEDTLS_PRIVATE(id);  | 
316  |  | };  | 
317  |  |  | 
318  |  | #if defined(MBEDTLS_PSA_CRYPTO_SE_C)  | 
319  | 0  | #define PSA_KEY_ATTRIBUTES_MAYBE_SLOT_NUMBER 0, 0,  | 
320  |  | #else  | 
321  |  | #define PSA_KEY_ATTRIBUTES_MAYBE_SLOT_NUMBER  | 
322  |  | #endif  | 
323  | 0  | #define PSA_KEY_ATTRIBUTES_INIT { PSA_KEY_ATTRIBUTES_MAYBE_SLOT_NUMBER \ | 
324  | 0  |                                       PSA_KEY_TYPE_NONE, 0,            \  | 
325  | 0  |                                       PSA_KEY_LIFETIME_VOLATILE,       \  | 
326  | 0  |                                       PSA_KEY_POLICY_INIT,             \  | 
327  | 0  |                                       MBEDTLS_SVC_KEY_ID_INIT }  | 
328  |  |  | 
329  |  | static inline struct psa_key_attributes_s psa_key_attributes_init(void)  | 
330  | 0  | { | 
331  | 0  |     const struct psa_key_attributes_s v = PSA_KEY_ATTRIBUTES_INIT;  | 
332  | 0  |     return v;  | 
333  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_key_attributes_init Unexecuted instantiation: platform_builtin_keys.c:psa_key_attributes_init Unexecuted instantiation: helpers.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_helpers.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_stubs.c:psa_key_attributes_init Unexecuted instantiation: psa_exercise_key.c:psa_key_attributes_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_key_attributes_init Unexecuted instantiation: certs.c:psa_key_attributes_init Unexecuted instantiation: psa_test_wrappers.c:psa_key_attributes_init Unexecuted instantiation: ssl_msg.c:psa_key_attributes_init Unexecuted instantiation: ssl_ticket.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls12_client.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls12_server.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls13_server.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls13_client.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls13_generic.c:psa_key_attributes_init Unexecuted instantiation: debug.c:psa_key_attributes_init Unexecuted instantiation: ssl_ciphersuites.c:psa_key_attributes_init Unexecuted instantiation: ssl_client.c:psa_key_attributes_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_key_attributes_init Unexecuted instantiation: ssl_tls13_keys.c:psa_key_attributes_init Unexecuted instantiation: x509.c:psa_key_attributes_init Unexecuted instantiation: x509_crt.c:psa_key_attributes_init Unexecuted instantiation: md.c:psa_key_attributes_init Unexecuted instantiation: oid.c:psa_key_attributes_init Unexecuted instantiation: pem.c:psa_key_attributes_init Unexecuted instantiation: pk.c:psa_key_attributes_init Unexecuted instantiation: pk_ecc.c:psa_key_attributes_init Unexecuted instantiation: pk_wrap.c:psa_key_attributes_init Unexecuted instantiation: pkparse.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_aead.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_cipher.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_client.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_ecp.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_hash.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_mac.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_pake.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_rsa.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_se.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_key_attributes_init Unexecuted instantiation: psa_crypto_storage.c:psa_key_attributes_init Unexecuted instantiation: psa_util.c:psa_key_attributes_init Unexecuted instantiation: rsa.c:psa_key_attributes_init Unexecuted instantiation: cipher.c:psa_key_attributes_init Unexecuted instantiation: cipher_wrap.c:psa_key_attributes_init Unexecuted instantiation: pkcs12.c:psa_key_attributes_init Unexecuted instantiation: pkcs5.c:psa_key_attributes_init  | 
334  |  |  | 
335  |  | static inline void psa_set_key_id(psa_key_attributes_t *attributes,  | 
336  |  |                                   mbedtls_svc_key_id_t key)  | 
337  | 0  | { | 
338  | 0  |     psa_key_lifetime_t lifetime = attributes->MBEDTLS_PRIVATE(lifetime);  | 
339  |  | 
  | 
340  | 0  |     attributes->MBEDTLS_PRIVATE(id) = key;  | 
341  |  | 
  | 
342  | 0  |     if (PSA_KEY_LIFETIME_IS_VOLATILE(lifetime)) { | 
343  | 0  |         attributes->MBEDTLS_PRIVATE(lifetime) =  | 
344  | 0  |             PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION(  | 
345  | 0  |                 PSA_KEY_LIFETIME_PERSISTENT,  | 
346  | 0  |                 PSA_KEY_LIFETIME_GET_LOCATION(lifetime));  | 
347  | 0  |     }  | 
348  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_set_key_id Unexecuted instantiation: platform_builtin_keys.c:psa_set_key_id Unexecuted instantiation: helpers.c:psa_set_key_id Unexecuted instantiation: psa_crypto_helpers.c:psa_set_key_id Unexecuted instantiation: psa_crypto_stubs.c:psa_set_key_id Unexecuted instantiation: psa_exercise_key.c:psa_set_key_id Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_set_key_id Unexecuted instantiation: certs.c:psa_set_key_id Unexecuted instantiation: psa_test_wrappers.c:psa_set_key_id Unexecuted instantiation: ssl_msg.c:psa_set_key_id Unexecuted instantiation: ssl_ticket.c:psa_set_key_id Unexecuted instantiation: ssl_tls.c:psa_set_key_id Unexecuted instantiation: ssl_tls12_client.c:psa_set_key_id Unexecuted instantiation: ssl_tls12_server.c:psa_set_key_id Unexecuted instantiation: ssl_tls13_server.c:psa_set_key_id Unexecuted instantiation: ssl_tls13_client.c:psa_set_key_id Unexecuted instantiation: ssl_tls13_generic.c:psa_set_key_id Unexecuted instantiation: debug.c:psa_set_key_id Unexecuted instantiation: ssl_ciphersuites.c:psa_set_key_id Unexecuted instantiation: ssl_client.c:psa_set_key_id Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_set_key_id Unexecuted instantiation: ssl_tls13_keys.c:psa_set_key_id Unexecuted instantiation: x509.c:psa_set_key_id Unexecuted instantiation: x509_crt.c:psa_set_key_id Unexecuted instantiation: md.c:psa_set_key_id Unexecuted instantiation: oid.c:psa_set_key_id Unexecuted instantiation: pem.c:psa_set_key_id Unexecuted instantiation: pk.c:psa_set_key_id Unexecuted instantiation: pk_ecc.c:psa_set_key_id Unexecuted instantiation: pk_wrap.c:psa_set_key_id Unexecuted instantiation: pkparse.c:psa_set_key_id Unexecuted instantiation: psa_crypto.c:psa_set_key_id Unexecuted instantiation: psa_crypto_aead.c:psa_set_key_id Unexecuted instantiation: psa_crypto_cipher.c:psa_set_key_id Unexecuted instantiation: psa_crypto_client.c:psa_set_key_id Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_set_key_id Unexecuted instantiation: psa_crypto_ecp.c:psa_set_key_id Unexecuted instantiation: psa_crypto_ffdh.c:psa_set_key_id Unexecuted instantiation: psa_crypto_hash.c:psa_set_key_id Unexecuted instantiation: psa_crypto_mac.c:psa_set_key_id Unexecuted instantiation: psa_crypto_pake.c:psa_set_key_id Unexecuted instantiation: psa_crypto_rsa.c:psa_set_key_id Unexecuted instantiation: psa_crypto_se.c:psa_set_key_id Unexecuted instantiation: psa_crypto_slot_management.c:psa_set_key_id Unexecuted instantiation: psa_crypto_storage.c:psa_set_key_id Unexecuted instantiation: psa_util.c:psa_set_key_id Unexecuted instantiation: rsa.c:psa_set_key_id Unexecuted instantiation: cipher.c:psa_set_key_id Unexecuted instantiation: cipher_wrap.c:psa_set_key_id Unexecuted instantiation: pkcs12.c:psa_set_key_id Unexecuted instantiation: pkcs5.c:psa_set_key_id  | 
349  |  |  | 
350  |  | static inline mbedtls_svc_key_id_t psa_get_key_id(  | 
351  |  |     const psa_key_attributes_t *attributes)  | 
352  | 0  | { | 
353  | 0  |     return attributes->MBEDTLS_PRIVATE(id);  | 
354  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_get_key_id Unexecuted instantiation: platform_builtin_keys.c:psa_get_key_id Unexecuted instantiation: helpers.c:psa_get_key_id Unexecuted instantiation: psa_crypto_helpers.c:psa_get_key_id Unexecuted instantiation: psa_crypto_stubs.c:psa_get_key_id Unexecuted instantiation: psa_exercise_key.c:psa_get_key_id Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_get_key_id Unexecuted instantiation: certs.c:psa_get_key_id Unexecuted instantiation: psa_test_wrappers.c:psa_get_key_id Unexecuted instantiation: ssl_msg.c:psa_get_key_id Unexecuted instantiation: ssl_ticket.c:psa_get_key_id Unexecuted instantiation: ssl_tls.c:psa_get_key_id Unexecuted instantiation: ssl_tls12_client.c:psa_get_key_id Unexecuted instantiation: ssl_tls12_server.c:psa_get_key_id Unexecuted instantiation: ssl_tls13_server.c:psa_get_key_id Unexecuted instantiation: ssl_tls13_client.c:psa_get_key_id Unexecuted instantiation: ssl_tls13_generic.c:psa_get_key_id Unexecuted instantiation: debug.c:psa_get_key_id Unexecuted instantiation: ssl_ciphersuites.c:psa_get_key_id Unexecuted instantiation: ssl_client.c:psa_get_key_id Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_get_key_id Unexecuted instantiation: ssl_tls13_keys.c:psa_get_key_id Unexecuted instantiation: x509.c:psa_get_key_id Unexecuted instantiation: x509_crt.c:psa_get_key_id Unexecuted instantiation: md.c:psa_get_key_id Unexecuted instantiation: oid.c:psa_get_key_id Unexecuted instantiation: pem.c:psa_get_key_id Unexecuted instantiation: pk.c:psa_get_key_id Unexecuted instantiation: pk_ecc.c:psa_get_key_id Unexecuted instantiation: pk_wrap.c:psa_get_key_id Unexecuted instantiation: pkparse.c:psa_get_key_id Unexecuted instantiation: psa_crypto.c:psa_get_key_id Unexecuted instantiation: psa_crypto_aead.c:psa_get_key_id Unexecuted instantiation: psa_crypto_cipher.c:psa_get_key_id Unexecuted instantiation: psa_crypto_client.c:psa_get_key_id Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_get_key_id Unexecuted instantiation: psa_crypto_ecp.c:psa_get_key_id Unexecuted instantiation: psa_crypto_ffdh.c:psa_get_key_id Unexecuted instantiation: psa_crypto_hash.c:psa_get_key_id Unexecuted instantiation: psa_crypto_mac.c:psa_get_key_id Unexecuted instantiation: psa_crypto_pake.c:psa_get_key_id Unexecuted instantiation: psa_crypto_rsa.c:psa_get_key_id Unexecuted instantiation: psa_crypto_se.c:psa_get_key_id Unexecuted instantiation: psa_crypto_slot_management.c:psa_get_key_id Unexecuted instantiation: psa_crypto_storage.c:psa_get_key_id Unexecuted instantiation: psa_util.c:psa_get_key_id Unexecuted instantiation: rsa.c:psa_get_key_id Unexecuted instantiation: cipher.c:psa_get_key_id Unexecuted instantiation: cipher_wrap.c:psa_get_key_id Unexecuted instantiation: pkcs12.c:psa_get_key_id Unexecuted instantiation: pkcs5.c:psa_get_key_id  | 
355  |  |  | 
356  |  | #ifdef MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER  | 
357  |  | static inline void mbedtls_set_key_owner_id(psa_key_attributes_t *attributes,  | 
358  |  |                                             mbedtls_key_owner_id_t owner)  | 
359  |  | { | 
360  |  |     attributes->MBEDTLS_PRIVATE(id).MBEDTLS_PRIVATE(owner) = owner;  | 
361  |  | }  | 
362  |  | #endif  | 
363  |  |  | 
364  |  | static inline void psa_set_key_lifetime(psa_key_attributes_t *attributes,  | 
365  |  |                                         psa_key_lifetime_t lifetime)  | 
366  | 0  | { | 
367  | 0  |     attributes->MBEDTLS_PRIVATE(lifetime) = lifetime;  | 
368  | 0  |     if (PSA_KEY_LIFETIME_IS_VOLATILE(lifetime)) { | 
369  |  | #ifdef MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER  | 
370  |  |         attributes->MBEDTLS_PRIVATE(id).MBEDTLS_PRIVATE(key_id) = 0;  | 
371  |  | #else  | 
372  | 0  |         attributes->MBEDTLS_PRIVATE(id) = 0;  | 
373  | 0  | #endif  | 
374  | 0  |     }  | 
375  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_set_key_lifetime Unexecuted instantiation: platform_builtin_keys.c:psa_set_key_lifetime Unexecuted instantiation: helpers.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_helpers.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_stubs.c:psa_set_key_lifetime Unexecuted instantiation: psa_exercise_key.c:psa_set_key_lifetime Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_set_key_lifetime Unexecuted instantiation: certs.c:psa_set_key_lifetime Unexecuted instantiation: psa_test_wrappers.c:psa_set_key_lifetime Unexecuted instantiation: ssl_msg.c:psa_set_key_lifetime Unexecuted instantiation: ssl_ticket.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls12_client.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls12_server.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls13_server.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls13_client.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls13_generic.c:psa_set_key_lifetime Unexecuted instantiation: debug.c:psa_set_key_lifetime Unexecuted instantiation: ssl_ciphersuites.c:psa_set_key_lifetime Unexecuted instantiation: ssl_client.c:psa_set_key_lifetime Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_set_key_lifetime Unexecuted instantiation: ssl_tls13_keys.c:psa_set_key_lifetime Unexecuted instantiation: x509.c:psa_set_key_lifetime Unexecuted instantiation: x509_crt.c:psa_set_key_lifetime Unexecuted instantiation: md.c:psa_set_key_lifetime Unexecuted instantiation: oid.c:psa_set_key_lifetime Unexecuted instantiation: pem.c:psa_set_key_lifetime Unexecuted instantiation: pk.c:psa_set_key_lifetime Unexecuted instantiation: pk_ecc.c:psa_set_key_lifetime Unexecuted instantiation: pk_wrap.c:psa_set_key_lifetime Unexecuted instantiation: pkparse.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_aead.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_cipher.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_client.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_ecp.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_ffdh.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_hash.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_mac.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_pake.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_rsa.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_se.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_slot_management.c:psa_set_key_lifetime Unexecuted instantiation: psa_crypto_storage.c:psa_set_key_lifetime Unexecuted instantiation: psa_util.c:psa_set_key_lifetime Unexecuted instantiation: rsa.c:psa_set_key_lifetime Unexecuted instantiation: cipher.c:psa_set_key_lifetime Unexecuted instantiation: cipher_wrap.c:psa_set_key_lifetime Unexecuted instantiation: pkcs12.c:psa_set_key_lifetime Unexecuted instantiation: pkcs5.c:psa_set_key_lifetime  | 
376  |  |  | 
377  |  | static inline psa_key_lifetime_t psa_get_key_lifetime(  | 
378  |  |     const psa_key_attributes_t *attributes)  | 
379  | 0  | { | 
380  | 0  |     return attributes->MBEDTLS_PRIVATE(lifetime);  | 
381  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_get_key_lifetime Unexecuted instantiation: platform_builtin_keys.c:psa_get_key_lifetime Unexecuted instantiation: helpers.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_helpers.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_stubs.c:psa_get_key_lifetime Unexecuted instantiation: psa_exercise_key.c:psa_get_key_lifetime Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_get_key_lifetime Unexecuted instantiation: certs.c:psa_get_key_lifetime Unexecuted instantiation: psa_test_wrappers.c:psa_get_key_lifetime Unexecuted instantiation: ssl_msg.c:psa_get_key_lifetime Unexecuted instantiation: ssl_ticket.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls12_client.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls12_server.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls13_server.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls13_client.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls13_generic.c:psa_get_key_lifetime Unexecuted instantiation: debug.c:psa_get_key_lifetime Unexecuted instantiation: ssl_ciphersuites.c:psa_get_key_lifetime Unexecuted instantiation: ssl_client.c:psa_get_key_lifetime Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_get_key_lifetime Unexecuted instantiation: ssl_tls13_keys.c:psa_get_key_lifetime Unexecuted instantiation: x509.c:psa_get_key_lifetime Unexecuted instantiation: x509_crt.c:psa_get_key_lifetime Unexecuted instantiation: md.c:psa_get_key_lifetime Unexecuted instantiation: oid.c:psa_get_key_lifetime Unexecuted instantiation: pem.c:psa_get_key_lifetime Unexecuted instantiation: pk.c:psa_get_key_lifetime Unexecuted instantiation: pk_ecc.c:psa_get_key_lifetime Unexecuted instantiation: pk_wrap.c:psa_get_key_lifetime Unexecuted instantiation: pkparse.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_aead.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_cipher.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_client.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_ecp.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_ffdh.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_hash.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_mac.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_pake.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_rsa.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_se.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_slot_management.c:psa_get_key_lifetime Unexecuted instantiation: psa_crypto_storage.c:psa_get_key_lifetime Unexecuted instantiation: psa_util.c:psa_get_key_lifetime Unexecuted instantiation: rsa.c:psa_get_key_lifetime Unexecuted instantiation: cipher.c:psa_get_key_lifetime Unexecuted instantiation: cipher_wrap.c:psa_get_key_lifetime Unexecuted instantiation: pkcs12.c:psa_get_key_lifetime Unexecuted instantiation: pkcs5.c:psa_get_key_lifetime  | 
382  |  |  | 
383  |  | static inline void psa_extend_key_usage_flags(psa_key_usage_t *usage_flags)  | 
384  | 0  | { | 
385  | 0  |     if (*usage_flags & PSA_KEY_USAGE_SIGN_HASH) { | 
386  | 0  |         *usage_flags |= PSA_KEY_USAGE_SIGN_MESSAGE;  | 
387  | 0  |     }  | 
388  |  | 
  | 
389  | 0  |     if (*usage_flags & PSA_KEY_USAGE_VERIFY_HASH) { | 
390  | 0  |         *usage_flags |= PSA_KEY_USAGE_VERIFY_MESSAGE;  | 
391  | 0  |     }  | 
392  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_extend_key_usage_flags Unexecuted instantiation: platform_builtin_keys.c:psa_extend_key_usage_flags Unexecuted instantiation: helpers.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_helpers.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_stubs.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_exercise_key.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_extend_key_usage_flags Unexecuted instantiation: certs.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_test_wrappers.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_msg.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_ticket.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls12_client.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls12_server.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls13_server.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls13_client.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls13_generic.c:psa_extend_key_usage_flags Unexecuted instantiation: debug.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_ciphersuites.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_client.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_extend_key_usage_flags Unexecuted instantiation: ssl_tls13_keys.c:psa_extend_key_usage_flags Unexecuted instantiation: x509.c:psa_extend_key_usage_flags Unexecuted instantiation: x509_crt.c:psa_extend_key_usage_flags Unexecuted instantiation: md.c:psa_extend_key_usage_flags Unexecuted instantiation: oid.c:psa_extend_key_usage_flags Unexecuted instantiation: pem.c:psa_extend_key_usage_flags Unexecuted instantiation: pk.c:psa_extend_key_usage_flags Unexecuted instantiation: pk_ecc.c:psa_extend_key_usage_flags Unexecuted instantiation: pk_wrap.c:psa_extend_key_usage_flags Unexecuted instantiation: pkparse.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_aead.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_cipher.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_client.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_ecp.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_ffdh.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_hash.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_mac.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_pake.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_rsa.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_se.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_slot_management.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_crypto_storage.c:psa_extend_key_usage_flags Unexecuted instantiation: psa_util.c:psa_extend_key_usage_flags Unexecuted instantiation: rsa.c:psa_extend_key_usage_flags Unexecuted instantiation: cipher.c:psa_extend_key_usage_flags Unexecuted instantiation: cipher_wrap.c:psa_extend_key_usage_flags Unexecuted instantiation: pkcs12.c:psa_extend_key_usage_flags Unexecuted instantiation: pkcs5.c:psa_extend_key_usage_flags  | 
393  |  |  | 
394  |  | static inline void psa_set_key_usage_flags(psa_key_attributes_t *attributes,  | 
395  |  |                                            psa_key_usage_t usage_flags)  | 
396  | 0  | { | 
397  | 0  |     psa_extend_key_usage_flags(&usage_flags);  | 
398  | 0  |     attributes->MBEDTLS_PRIVATE(policy).MBEDTLS_PRIVATE(usage) = usage_flags;  | 
399  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_set_key_usage_flags Unexecuted instantiation: platform_builtin_keys.c:psa_set_key_usage_flags Unexecuted instantiation: helpers.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_helpers.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_stubs.c:psa_set_key_usage_flags Unexecuted instantiation: psa_exercise_key.c:psa_set_key_usage_flags Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_set_key_usage_flags Unexecuted instantiation: certs.c:psa_set_key_usage_flags Unexecuted instantiation: psa_test_wrappers.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_msg.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_ticket.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls12_client.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls12_server.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls13_server.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls13_client.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls13_generic.c:psa_set_key_usage_flags Unexecuted instantiation: debug.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_ciphersuites.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_client.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_set_key_usage_flags Unexecuted instantiation: ssl_tls13_keys.c:psa_set_key_usage_flags Unexecuted instantiation: x509.c:psa_set_key_usage_flags Unexecuted instantiation: x509_crt.c:psa_set_key_usage_flags Unexecuted instantiation: md.c:psa_set_key_usage_flags Unexecuted instantiation: oid.c:psa_set_key_usage_flags Unexecuted instantiation: pem.c:psa_set_key_usage_flags Unexecuted instantiation: pk.c:psa_set_key_usage_flags Unexecuted instantiation: pk_ecc.c:psa_set_key_usage_flags Unexecuted instantiation: pk_wrap.c:psa_set_key_usage_flags Unexecuted instantiation: pkparse.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_aead.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_cipher.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_client.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_ecp.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_ffdh.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_hash.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_mac.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_pake.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_rsa.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_se.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_slot_management.c:psa_set_key_usage_flags Unexecuted instantiation: psa_crypto_storage.c:psa_set_key_usage_flags Unexecuted instantiation: psa_util.c:psa_set_key_usage_flags Unexecuted instantiation: rsa.c:psa_set_key_usage_flags Unexecuted instantiation: cipher.c:psa_set_key_usage_flags Unexecuted instantiation: cipher_wrap.c:psa_set_key_usage_flags Unexecuted instantiation: pkcs12.c:psa_set_key_usage_flags Unexecuted instantiation: pkcs5.c:psa_set_key_usage_flags  | 
400  |  |  | 
401  |  | static inline psa_key_usage_t psa_get_key_usage_flags(  | 
402  |  |     const psa_key_attributes_t *attributes)  | 
403  | 0  | { | 
404  | 0  |     return attributes->MBEDTLS_PRIVATE(policy).MBEDTLS_PRIVATE(usage);  | 
405  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_get_key_usage_flags Unexecuted instantiation: platform_builtin_keys.c:psa_get_key_usage_flags Unexecuted instantiation: helpers.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_helpers.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_stubs.c:psa_get_key_usage_flags Unexecuted instantiation: psa_exercise_key.c:psa_get_key_usage_flags Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_get_key_usage_flags Unexecuted instantiation: certs.c:psa_get_key_usage_flags Unexecuted instantiation: psa_test_wrappers.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_msg.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_ticket.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls12_client.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls12_server.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls13_server.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls13_client.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls13_generic.c:psa_get_key_usage_flags Unexecuted instantiation: debug.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_ciphersuites.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_client.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_get_key_usage_flags Unexecuted instantiation: ssl_tls13_keys.c:psa_get_key_usage_flags Unexecuted instantiation: x509.c:psa_get_key_usage_flags Unexecuted instantiation: x509_crt.c:psa_get_key_usage_flags Unexecuted instantiation: md.c:psa_get_key_usage_flags Unexecuted instantiation: oid.c:psa_get_key_usage_flags Unexecuted instantiation: pem.c:psa_get_key_usage_flags Unexecuted instantiation: pk.c:psa_get_key_usage_flags Unexecuted instantiation: pk_ecc.c:psa_get_key_usage_flags Unexecuted instantiation: pk_wrap.c:psa_get_key_usage_flags Unexecuted instantiation: pkparse.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_aead.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_cipher.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_client.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_ecp.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_ffdh.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_hash.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_mac.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_pake.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_rsa.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_se.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_slot_management.c:psa_get_key_usage_flags Unexecuted instantiation: psa_crypto_storage.c:psa_get_key_usage_flags Unexecuted instantiation: psa_util.c:psa_get_key_usage_flags Unexecuted instantiation: rsa.c:psa_get_key_usage_flags Unexecuted instantiation: cipher.c:psa_get_key_usage_flags Unexecuted instantiation: cipher_wrap.c:psa_get_key_usage_flags Unexecuted instantiation: pkcs12.c:psa_get_key_usage_flags Unexecuted instantiation: pkcs5.c:psa_get_key_usage_flags  | 
406  |  |  | 
407  |  | static inline void psa_set_key_algorithm(psa_key_attributes_t *attributes,  | 
408  |  |                                          psa_algorithm_t alg)  | 
409  | 0  | { | 
410  | 0  |     attributes->MBEDTLS_PRIVATE(policy).MBEDTLS_PRIVATE(alg) = alg;  | 
411  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_set_key_algorithm Unexecuted instantiation: platform_builtin_keys.c:psa_set_key_algorithm Unexecuted instantiation: helpers.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_helpers.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_stubs.c:psa_set_key_algorithm Unexecuted instantiation: psa_exercise_key.c:psa_set_key_algorithm Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_set_key_algorithm Unexecuted instantiation: certs.c:psa_set_key_algorithm Unexecuted instantiation: psa_test_wrappers.c:psa_set_key_algorithm Unexecuted instantiation: ssl_msg.c:psa_set_key_algorithm Unexecuted instantiation: ssl_ticket.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls12_client.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls12_server.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls13_server.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls13_client.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls13_generic.c:psa_set_key_algorithm Unexecuted instantiation: debug.c:psa_set_key_algorithm Unexecuted instantiation: ssl_ciphersuites.c:psa_set_key_algorithm Unexecuted instantiation: ssl_client.c:psa_set_key_algorithm Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_set_key_algorithm Unexecuted instantiation: ssl_tls13_keys.c:psa_set_key_algorithm Unexecuted instantiation: x509.c:psa_set_key_algorithm Unexecuted instantiation: x509_crt.c:psa_set_key_algorithm Unexecuted instantiation: md.c:psa_set_key_algorithm Unexecuted instantiation: oid.c:psa_set_key_algorithm Unexecuted instantiation: pem.c:psa_set_key_algorithm Unexecuted instantiation: pk.c:psa_set_key_algorithm Unexecuted instantiation: pk_ecc.c:psa_set_key_algorithm Unexecuted instantiation: pk_wrap.c:psa_set_key_algorithm Unexecuted instantiation: pkparse.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_aead.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_cipher.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_client.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_ecp.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_ffdh.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_hash.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_mac.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_pake.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_rsa.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_se.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_slot_management.c:psa_set_key_algorithm Unexecuted instantiation: psa_crypto_storage.c:psa_set_key_algorithm Unexecuted instantiation: psa_util.c:psa_set_key_algorithm Unexecuted instantiation: rsa.c:psa_set_key_algorithm Unexecuted instantiation: cipher.c:psa_set_key_algorithm Unexecuted instantiation: cipher_wrap.c:psa_set_key_algorithm Unexecuted instantiation: pkcs12.c:psa_set_key_algorithm Unexecuted instantiation: pkcs5.c:psa_set_key_algorithm  | 
412  |  |  | 
413  |  | static inline psa_algorithm_t psa_get_key_algorithm(  | 
414  |  |     const psa_key_attributes_t *attributes)  | 
415  | 0  | { | 
416  | 0  |     return attributes->MBEDTLS_PRIVATE(policy).MBEDTLS_PRIVATE(alg);  | 
417  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_get_key_algorithm Unexecuted instantiation: platform_builtin_keys.c:psa_get_key_algorithm Unexecuted instantiation: helpers.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_helpers.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_stubs.c:psa_get_key_algorithm Unexecuted instantiation: psa_exercise_key.c:psa_get_key_algorithm Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_get_key_algorithm Unexecuted instantiation: certs.c:psa_get_key_algorithm Unexecuted instantiation: psa_test_wrappers.c:psa_get_key_algorithm Unexecuted instantiation: ssl_msg.c:psa_get_key_algorithm Unexecuted instantiation: ssl_ticket.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls12_client.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls12_server.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls13_server.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls13_client.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls13_generic.c:psa_get_key_algorithm Unexecuted instantiation: debug.c:psa_get_key_algorithm Unexecuted instantiation: ssl_ciphersuites.c:psa_get_key_algorithm Unexecuted instantiation: ssl_client.c:psa_get_key_algorithm Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_get_key_algorithm Unexecuted instantiation: ssl_tls13_keys.c:psa_get_key_algorithm Unexecuted instantiation: x509.c:psa_get_key_algorithm Unexecuted instantiation: x509_crt.c:psa_get_key_algorithm Unexecuted instantiation: md.c:psa_get_key_algorithm Unexecuted instantiation: oid.c:psa_get_key_algorithm Unexecuted instantiation: pem.c:psa_get_key_algorithm Unexecuted instantiation: pk.c:psa_get_key_algorithm Unexecuted instantiation: pk_ecc.c:psa_get_key_algorithm Unexecuted instantiation: pk_wrap.c:psa_get_key_algorithm Unexecuted instantiation: pkparse.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_aead.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_cipher.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_client.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_ecp.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_ffdh.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_hash.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_mac.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_pake.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_rsa.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_se.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_slot_management.c:psa_get_key_algorithm Unexecuted instantiation: psa_crypto_storage.c:psa_get_key_algorithm Unexecuted instantiation: psa_util.c:psa_get_key_algorithm Unexecuted instantiation: rsa.c:psa_get_key_algorithm Unexecuted instantiation: cipher.c:psa_get_key_algorithm Unexecuted instantiation: cipher_wrap.c:psa_get_key_algorithm Unexecuted instantiation: pkcs12.c:psa_get_key_algorithm Unexecuted instantiation: pkcs5.c:psa_get_key_algorithm  | 
418  |  |  | 
419  |  | static inline void psa_set_key_type(psa_key_attributes_t *attributes,  | 
420  |  |                                     psa_key_type_t type)  | 
421  | 0  | { | 
422  | 0  |     attributes->MBEDTLS_PRIVATE(type) = type;  | 
423  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_set_key_type Unexecuted instantiation: platform_builtin_keys.c:psa_set_key_type Unexecuted instantiation: helpers.c:psa_set_key_type Unexecuted instantiation: psa_crypto_helpers.c:psa_set_key_type Unexecuted instantiation: psa_crypto_stubs.c:psa_set_key_type Unexecuted instantiation: psa_exercise_key.c:psa_set_key_type Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_set_key_type Unexecuted instantiation: certs.c:psa_set_key_type Unexecuted instantiation: psa_test_wrappers.c:psa_set_key_type Unexecuted instantiation: ssl_msg.c:psa_set_key_type Unexecuted instantiation: ssl_ticket.c:psa_set_key_type Unexecuted instantiation: ssl_tls.c:psa_set_key_type Unexecuted instantiation: ssl_tls12_client.c:psa_set_key_type Unexecuted instantiation: ssl_tls12_server.c:psa_set_key_type Unexecuted instantiation: ssl_tls13_server.c:psa_set_key_type Unexecuted instantiation: ssl_tls13_client.c:psa_set_key_type Unexecuted instantiation: ssl_tls13_generic.c:psa_set_key_type Unexecuted instantiation: debug.c:psa_set_key_type Unexecuted instantiation: ssl_ciphersuites.c:psa_set_key_type Unexecuted instantiation: ssl_client.c:psa_set_key_type Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_set_key_type Unexecuted instantiation: ssl_tls13_keys.c:psa_set_key_type Unexecuted instantiation: x509.c:psa_set_key_type Unexecuted instantiation: x509_crt.c:psa_set_key_type Unexecuted instantiation: md.c:psa_set_key_type Unexecuted instantiation: oid.c:psa_set_key_type Unexecuted instantiation: pem.c:psa_set_key_type Unexecuted instantiation: pk.c:psa_set_key_type Unexecuted instantiation: pk_ecc.c:psa_set_key_type Unexecuted instantiation: pk_wrap.c:psa_set_key_type Unexecuted instantiation: pkparse.c:psa_set_key_type Unexecuted instantiation: psa_crypto.c:psa_set_key_type Unexecuted instantiation: psa_crypto_aead.c:psa_set_key_type Unexecuted instantiation: psa_crypto_cipher.c:psa_set_key_type Unexecuted instantiation: psa_crypto_client.c:psa_set_key_type Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_set_key_type Unexecuted instantiation: psa_crypto_ecp.c:psa_set_key_type Unexecuted instantiation: psa_crypto_ffdh.c:psa_set_key_type Unexecuted instantiation: psa_crypto_hash.c:psa_set_key_type Unexecuted instantiation: psa_crypto_mac.c:psa_set_key_type Unexecuted instantiation: psa_crypto_pake.c:psa_set_key_type Unexecuted instantiation: psa_crypto_rsa.c:psa_set_key_type Unexecuted instantiation: psa_crypto_se.c:psa_set_key_type Unexecuted instantiation: psa_crypto_slot_management.c:psa_set_key_type Unexecuted instantiation: psa_crypto_storage.c:psa_set_key_type Unexecuted instantiation: psa_util.c:psa_set_key_type Unexecuted instantiation: rsa.c:psa_set_key_type Unexecuted instantiation: cipher.c:psa_set_key_type Unexecuted instantiation: cipher_wrap.c:psa_set_key_type Unexecuted instantiation: pkcs12.c:psa_set_key_type Unexecuted instantiation: pkcs5.c:psa_set_key_type  | 
424  |  |  | 
425  |  | static inline psa_key_type_t psa_get_key_type(  | 
426  |  |     const psa_key_attributes_t *attributes)  | 
427  | 0  | { | 
428  | 0  |     return attributes->MBEDTLS_PRIVATE(type);  | 
429  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_get_key_type Unexecuted instantiation: platform_builtin_keys.c:psa_get_key_type Unexecuted instantiation: helpers.c:psa_get_key_type Unexecuted instantiation: psa_crypto_helpers.c:psa_get_key_type Unexecuted instantiation: psa_crypto_stubs.c:psa_get_key_type Unexecuted instantiation: psa_exercise_key.c:psa_get_key_type Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_get_key_type Unexecuted instantiation: certs.c:psa_get_key_type Unexecuted instantiation: psa_test_wrappers.c:psa_get_key_type Unexecuted instantiation: ssl_msg.c:psa_get_key_type Unexecuted instantiation: ssl_ticket.c:psa_get_key_type Unexecuted instantiation: ssl_tls.c:psa_get_key_type Unexecuted instantiation: ssl_tls12_client.c:psa_get_key_type Unexecuted instantiation: ssl_tls12_server.c:psa_get_key_type Unexecuted instantiation: ssl_tls13_server.c:psa_get_key_type Unexecuted instantiation: ssl_tls13_client.c:psa_get_key_type Unexecuted instantiation: ssl_tls13_generic.c:psa_get_key_type Unexecuted instantiation: debug.c:psa_get_key_type Unexecuted instantiation: ssl_ciphersuites.c:psa_get_key_type Unexecuted instantiation: ssl_client.c:psa_get_key_type Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_get_key_type Unexecuted instantiation: ssl_tls13_keys.c:psa_get_key_type Unexecuted instantiation: x509.c:psa_get_key_type Unexecuted instantiation: x509_crt.c:psa_get_key_type Unexecuted instantiation: md.c:psa_get_key_type Unexecuted instantiation: oid.c:psa_get_key_type Unexecuted instantiation: pem.c:psa_get_key_type Unexecuted instantiation: pk.c:psa_get_key_type Unexecuted instantiation: pk_ecc.c:psa_get_key_type Unexecuted instantiation: pk_wrap.c:psa_get_key_type Unexecuted instantiation: pkparse.c:psa_get_key_type Unexecuted instantiation: psa_crypto.c:psa_get_key_type Unexecuted instantiation: psa_crypto_aead.c:psa_get_key_type Unexecuted instantiation: psa_crypto_cipher.c:psa_get_key_type Unexecuted instantiation: psa_crypto_client.c:psa_get_key_type Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_get_key_type Unexecuted instantiation: psa_crypto_ecp.c:psa_get_key_type Unexecuted instantiation: psa_crypto_ffdh.c:psa_get_key_type Unexecuted instantiation: psa_crypto_hash.c:psa_get_key_type Unexecuted instantiation: psa_crypto_mac.c:psa_get_key_type Unexecuted instantiation: psa_crypto_pake.c:psa_get_key_type Unexecuted instantiation: psa_crypto_rsa.c:psa_get_key_type Unexecuted instantiation: psa_crypto_se.c:psa_get_key_type Unexecuted instantiation: psa_crypto_slot_management.c:psa_get_key_type Unexecuted instantiation: psa_crypto_storage.c:psa_get_key_type Unexecuted instantiation: psa_util.c:psa_get_key_type Unexecuted instantiation: rsa.c:psa_get_key_type Unexecuted instantiation: cipher.c:psa_get_key_type Unexecuted instantiation: cipher_wrap.c:psa_get_key_type Unexecuted instantiation: pkcs12.c:psa_get_key_type Unexecuted instantiation: pkcs5.c:psa_get_key_type  | 
430  |  |  | 
431  |  | static inline void psa_set_key_bits(psa_key_attributes_t *attributes,  | 
432  |  |                                     size_t bits)  | 
433  | 0  | { | 
434  | 0  |     if (bits > PSA_MAX_KEY_BITS) { | 
435  | 0  |         attributes->MBEDTLS_PRIVATE(bits) = PSA_KEY_BITS_TOO_LARGE;  | 
436  | 0  |     } else { | 
437  | 0  |         attributes->MBEDTLS_PRIVATE(bits) = (psa_key_bits_t) bits;  | 
438  | 0  |     }  | 
439  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_set_key_bits Unexecuted instantiation: platform_builtin_keys.c:psa_set_key_bits Unexecuted instantiation: helpers.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_helpers.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_stubs.c:psa_set_key_bits Unexecuted instantiation: psa_exercise_key.c:psa_set_key_bits Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_set_key_bits Unexecuted instantiation: certs.c:psa_set_key_bits Unexecuted instantiation: psa_test_wrappers.c:psa_set_key_bits Unexecuted instantiation: ssl_msg.c:psa_set_key_bits Unexecuted instantiation: ssl_ticket.c:psa_set_key_bits Unexecuted instantiation: ssl_tls.c:psa_set_key_bits Unexecuted instantiation: ssl_tls12_client.c:psa_set_key_bits Unexecuted instantiation: ssl_tls12_server.c:psa_set_key_bits Unexecuted instantiation: ssl_tls13_server.c:psa_set_key_bits Unexecuted instantiation: ssl_tls13_client.c:psa_set_key_bits Unexecuted instantiation: ssl_tls13_generic.c:psa_set_key_bits Unexecuted instantiation: debug.c:psa_set_key_bits Unexecuted instantiation: ssl_ciphersuites.c:psa_set_key_bits Unexecuted instantiation: ssl_client.c:psa_set_key_bits Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_set_key_bits Unexecuted instantiation: ssl_tls13_keys.c:psa_set_key_bits Unexecuted instantiation: x509.c:psa_set_key_bits Unexecuted instantiation: x509_crt.c:psa_set_key_bits Unexecuted instantiation: md.c:psa_set_key_bits Unexecuted instantiation: oid.c:psa_set_key_bits Unexecuted instantiation: pem.c:psa_set_key_bits Unexecuted instantiation: pk.c:psa_set_key_bits Unexecuted instantiation: pk_ecc.c:psa_set_key_bits Unexecuted instantiation: pk_wrap.c:psa_set_key_bits Unexecuted instantiation: pkparse.c:psa_set_key_bits Unexecuted instantiation: psa_crypto.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_aead.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_cipher.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_client.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_ecp.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_ffdh.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_hash.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_mac.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_pake.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_rsa.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_se.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_slot_management.c:psa_set_key_bits Unexecuted instantiation: psa_crypto_storage.c:psa_set_key_bits Unexecuted instantiation: psa_util.c:psa_set_key_bits Unexecuted instantiation: rsa.c:psa_set_key_bits Unexecuted instantiation: cipher.c:psa_set_key_bits Unexecuted instantiation: cipher_wrap.c:psa_set_key_bits Unexecuted instantiation: pkcs12.c:psa_set_key_bits Unexecuted instantiation: pkcs5.c:psa_set_key_bits  | 
440  |  |  | 
441  |  | static inline size_t psa_get_key_bits(  | 
442  |  |     const psa_key_attributes_t *attributes)  | 
443  | 0  | { | 
444  | 0  |     return attributes->MBEDTLS_PRIVATE(bits);  | 
445  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_get_key_bits Unexecuted instantiation: platform_builtin_keys.c:psa_get_key_bits Unexecuted instantiation: helpers.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_helpers.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_stubs.c:psa_get_key_bits Unexecuted instantiation: psa_exercise_key.c:psa_get_key_bits Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_get_key_bits Unexecuted instantiation: certs.c:psa_get_key_bits Unexecuted instantiation: psa_test_wrappers.c:psa_get_key_bits Unexecuted instantiation: ssl_msg.c:psa_get_key_bits Unexecuted instantiation: ssl_ticket.c:psa_get_key_bits Unexecuted instantiation: ssl_tls.c:psa_get_key_bits Unexecuted instantiation: ssl_tls12_client.c:psa_get_key_bits Unexecuted instantiation: ssl_tls12_server.c:psa_get_key_bits Unexecuted instantiation: ssl_tls13_server.c:psa_get_key_bits Unexecuted instantiation: ssl_tls13_client.c:psa_get_key_bits Unexecuted instantiation: ssl_tls13_generic.c:psa_get_key_bits Unexecuted instantiation: debug.c:psa_get_key_bits Unexecuted instantiation: ssl_ciphersuites.c:psa_get_key_bits Unexecuted instantiation: ssl_client.c:psa_get_key_bits Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_get_key_bits Unexecuted instantiation: ssl_tls13_keys.c:psa_get_key_bits Unexecuted instantiation: x509.c:psa_get_key_bits Unexecuted instantiation: x509_crt.c:psa_get_key_bits Unexecuted instantiation: md.c:psa_get_key_bits Unexecuted instantiation: oid.c:psa_get_key_bits Unexecuted instantiation: pem.c:psa_get_key_bits Unexecuted instantiation: pk.c:psa_get_key_bits Unexecuted instantiation: pk_ecc.c:psa_get_key_bits Unexecuted instantiation: pk_wrap.c:psa_get_key_bits Unexecuted instantiation: pkparse.c:psa_get_key_bits Unexecuted instantiation: psa_crypto.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_aead.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_cipher.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_client.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_ecp.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_ffdh.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_hash.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_mac.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_pake.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_rsa.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_se.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_slot_management.c:psa_get_key_bits Unexecuted instantiation: psa_crypto_storage.c:psa_get_key_bits Unexecuted instantiation: psa_util.c:psa_get_key_bits Unexecuted instantiation: rsa.c:psa_get_key_bits Unexecuted instantiation: cipher.c:psa_get_key_bits Unexecuted instantiation: cipher_wrap.c:psa_get_key_bits Unexecuted instantiation: pkcs12.c:psa_get_key_bits Unexecuted instantiation: pkcs5.c:psa_get_key_bits  | 
446  |  |  | 
447  |  | /**  | 
448  |  |  * \brief The context for PSA interruptible hash signing.  | 
449  |  |  */  | 
450  |  | struct psa_sign_hash_interruptible_operation_s { | 
451  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
452  |  |     mbedtls_psa_client_handle_t handle;  | 
453  |  | #else  | 
454  |  |     /** Unique ID indicating which driver got assigned to do the  | 
455  |  |      * operation. Since driver contexts are driver-specific, swapping  | 
456  |  |      * drivers halfway through the operation is not supported.  | 
457  |  |      * ID values are auto-generated in psa_crypto_driver_wrappers.h  | 
458  |  |      * ID value zero means the context is not valid or not assigned to  | 
459  |  |      * any driver (i.e. none of the driver contexts are active). */  | 
460  |  |     unsigned int MBEDTLS_PRIVATE(id);  | 
461  |  |  | 
462  |  |     psa_driver_sign_hash_interruptible_context_t MBEDTLS_PRIVATE(ctx);  | 
463  |  |  | 
464  |  |     unsigned int MBEDTLS_PRIVATE(error_occurred) : 1;  | 
465  |  |  | 
466  |  |     uint32_t MBEDTLS_PRIVATE(num_ops);  | 
467  |  | #endif  | 
468  |  | };  | 
469  |  |  | 
470  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
471  |  | #define PSA_SIGN_HASH_INTERRUPTIBLE_OPERATION_INIT { 0 } | 
472  |  | #else  | 
473  |  | #define PSA_SIGN_HASH_INTERRUPTIBLE_OPERATION_INIT { 0, { 0 }, 0, 0 } | 
474  |  | #endif  | 
475  |  |  | 
476  |  | static inline struct psa_sign_hash_interruptible_operation_s  | 
477  |  | psa_sign_hash_interruptible_operation_init(void)  | 
478  | 0  | { | 
479  | 0  |     const struct psa_sign_hash_interruptible_operation_s v =  | 
480  | 0  |         PSA_SIGN_HASH_INTERRUPTIBLE_OPERATION_INIT;  | 
481  | 0  | 
  | 
482  | 0  |     return v;  | 
483  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: helpers.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: certs.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_msg.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_ticket.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: debug.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_client.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: x509.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: x509_crt.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: md.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: oid.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pem.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pk.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pk_ecc.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pk_wrap.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pkparse.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: psa_util.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: rsa.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: cipher.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: cipher_wrap.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pkcs12.c:psa_sign_hash_interruptible_operation_init Unexecuted instantiation: pkcs5.c:psa_sign_hash_interruptible_operation_init  | 
484  |  |  | 
485  |  | /**  | 
486  |  |  * \brief The context for PSA interruptible hash verification.  | 
487  |  |  */  | 
488  |  | struct psa_verify_hash_interruptible_operation_s { | 
489  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
490  |  |     mbedtls_psa_client_handle_t handle;  | 
491  |  | #else  | 
492  |  |     /** Unique ID indicating which driver got assigned to do the  | 
493  |  |      * operation. Since driver contexts are driver-specific, swapping  | 
494  |  |      * drivers halfway through the operation is not supported.  | 
495  |  |      * ID values are auto-generated in psa_crypto_driver_wrappers.h  | 
496  |  |      * ID value zero means the context is not valid or not assigned to  | 
497  |  |      * any driver (i.e. none of the driver contexts are active). */  | 
498  |  |     unsigned int MBEDTLS_PRIVATE(id);  | 
499  |  |  | 
500  |  |     psa_driver_verify_hash_interruptible_context_t MBEDTLS_PRIVATE(ctx);  | 
501  |  |  | 
502  |  |     unsigned int MBEDTLS_PRIVATE(error_occurred) : 1;  | 
503  |  |  | 
504  |  |     uint32_t MBEDTLS_PRIVATE(num_ops);  | 
505  |  | #endif  | 
506  |  | };  | 
507  |  |  | 
508  |  | #if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)  | 
509  |  | #define PSA_VERIFY_HASH_INTERRUPTIBLE_OPERATION_INIT { 0 } | 
510  |  | #else  | 
511  |  | #define PSA_VERIFY_HASH_INTERRUPTIBLE_OPERATION_INIT { 0, { 0 }, 0, 0 } | 
512  |  | #endif  | 
513  |  |  | 
514  |  | static inline struct psa_verify_hash_interruptible_operation_s  | 
515  |  | psa_verify_hash_interruptible_operation_init(void)  | 
516  | 0  | { | 
517  | 0  |     const struct psa_verify_hash_interruptible_operation_s v =  | 
518  | 0  |         PSA_VERIFY_HASH_INTERRUPTIBLE_OPERATION_INIT;  | 
519  | 0  | 
  | 
520  | 0  |     return v;  | 
521  | 0  | } Unexecuted instantiation: fuzz_server.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: platform_builtin_keys.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: helpers.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_helpers.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_stubs.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_exercise_key.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_memory_poisoning_wrappers.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: certs.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_test_wrappers.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_msg.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_ticket.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls12_client.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls12_server.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_server.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_client.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_generic.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: debug.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_ciphersuites.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_client.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_debug_helpers_generated.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: ssl_tls13_keys.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: x509.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: x509_crt.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: md.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: oid.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pem.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pk.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pk_ecc.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pk_wrap.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pkparse.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_aead.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_cipher.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_client.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_driver_wrappers_no_static.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_ecp.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_ffdh.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_hash.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_mac.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_pake.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_rsa.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_se.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_slot_management.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_crypto_storage.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: psa_util.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: rsa.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: cipher.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: cipher_wrap.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pkcs12.c:psa_verify_hash_interruptible_operation_init Unexecuted instantiation: pkcs5.c:psa_verify_hash_interruptible_operation_init  | 
522  |  |  | 
523  |  | #ifdef __cplusplus  | 
524  |  | }  | 
525  |  | #endif  | 
526  |  |  | 
527  |  | #endif /* PSA_CRYPTO_STRUCT_H */  |