Zephyr API Documentation  3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
keys.h
Go to the documentation of this file.
1
5/*
6 * Copyright (c) 2023 Nordic Semiconductor ASA
7 *
8 * SPDX-License-Identifier: Apache-2.0
9 */
10
11#ifndef ZEPHYR_INCLUDE_BLUETOOTH_MESH_KEYS_H_
12#define ZEPHYR_INCLUDE_BLUETOOTH_MESH_KEYS_H_
13
14#include <stdint.h>
15#if defined CONFIG_BT_MESH_USES_MBEDTLS_PSA || defined CONFIG_BT_MESH_USES_TFM_PSA
16#include <psa/crypto.h>
17#endif
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#if defined CONFIG_BT_MESH_USES_MBEDTLS_PSA || defined CONFIG_BT_MESH_USES_TFM_PSA
24
26struct bt_mesh_key {
28 psa_key_id_t key;
29};
30
31#elif defined CONFIG_BT_MESH_USES_TINYCRYPT
32
34struct bt_mesh_key {
36 uint8_t key[16];
37};
38
39#else
40#error "Crypto library has not been chosen"
41#endif
42
43#ifdef __cplusplus
44}
45#endif
46
47#endif /* ZEPHYR_INCLUDE_BLUETOOTH_MESH_KEYS_H_ */
__UINT8_TYPE__ uint8_t
Definition: stdint.h:88