mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-03 06:32:00 +00:00
This is a major refactoring of the handling of the cryptographic material of both the network and transport layers. The aim is to encapsulate the key object manipulation, and improve overall modularity. Pulls Applications and Subnets out of the bt_mesh and into separate modules, with static storage types on the data. This has several side-effects: - The Config Server no longer operates directly on the bt_mesh.subs and bt_mesh.apps lists, but goes through a public configuration interface, following the pattern set in #27908. - All iteration through the keys is done through iteration APIs - Key resolution on RX and TX is centralized. - Changes to the keys triggers events the other modules can register handlers for. - Friendship credentials are stored in the lpn and friend structures. Part of #27842. Signed-off-by: Trond Einar Snekvik <Trond.Einar.Snekvik@nordicsemi.no>
33 lines
1.2 KiB
C
33 lines
1.2 KiB
C
/*
|
|
* Copyright (c) 2018 Intel Corporation
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
void bt_mesh_store_net(void);
|
|
void bt_mesh_store_iv(bool only_duration);
|
|
void bt_mesh_store_seq(void);
|
|
void bt_mesh_store_rpl(struct bt_mesh_rpl *rpl);
|
|
void bt_mesh_store_subnet(uint16_t net_idx);
|
|
void bt_mesh_store_app_key(uint16_t app_idx);
|
|
void bt_mesh_store_hb_pub(void);
|
|
void bt_mesh_store_cfg(void);
|
|
void bt_mesh_store_mod_bind(struct bt_mesh_model *mod);
|
|
void bt_mesh_store_mod_sub(struct bt_mesh_model *mod);
|
|
void bt_mesh_store_mod_pub(struct bt_mesh_model *mod);
|
|
void bt_mesh_store_label(void);
|
|
void bt_mesh_store_cdb(void);
|
|
void bt_mesh_store_cdb_node(const struct bt_mesh_cdb_node *node);
|
|
void bt_mesh_store_cdb_subnet(const struct bt_mesh_cdb_subnet *sub);
|
|
void bt_mesh_store_cdb_app_key(const struct bt_mesh_cdb_app_key *app);
|
|
|
|
void bt_mesh_clear_net(void);
|
|
void bt_mesh_clear_subnet(uint16_t net_idx);
|
|
void bt_mesh_clear_app_key(uint16_t app_idx);
|
|
void bt_mesh_clear_rpl(void);
|
|
void bt_mesh_clear_cdb_node(struct bt_mesh_cdb_node *node);
|
|
void bt_mesh_clear_cdb_subnet(struct bt_mesh_cdb_subnet *sub);
|
|
void bt_mesh_clear_cdb_app_key(struct bt_mesh_cdb_app_key *app);
|
|
|
|
void bt_mesh_settings_init(void);
|