mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-03-29 22:20:37 +00:00
mesh: add iv_index to provisioning data
This commit is contained in:
parent
d46d01aaa4
commit
6c38b88869
@ -276,9 +276,6 @@ static void mesh_provisioning_message_handler (uint8_t packet_type, uint16_t cha
|
||||
// get provisioning data
|
||||
provisioning_device_data_get(&provisioning_data);
|
||||
|
||||
// set iv_index
|
||||
mesh_set_iv_index(provisioning_device_data_get_iv_index());
|
||||
|
||||
// setup primary network with provisioned netkey
|
||||
primary_network_key = provisioning_device_data_get_network_key();
|
||||
mesh_network_key_add(primary_network_key);
|
||||
|
@ -1697,12 +1697,18 @@ static void mesh_access_secure_network_beacon_handler(uint8_t packet_type, uint1
|
||||
}
|
||||
|
||||
void mesh_access_setup_from_provisioning_data(const mesh_provisioning_data_t * provisioning_data){
|
||||
|
||||
// set iv_index and iv index update active
|
||||
int iv_index_update_active = (provisioning_data->flags & 2) >> 1;
|
||||
mesh_iv_index_recovered(iv_index_update_active, provisioning_data->iv_index);
|
||||
|
||||
// set unicast address
|
||||
mesh_node_primary_element_address_set(provisioning_data->unicast_address);
|
||||
|
||||
// set device_key
|
||||
mesh_transport_set_device_key(provisioning_data->device_key);
|
||||
|
||||
|
||||
// Mesh Proxy
|
||||
#ifdef ENABLE_MESH_PROXY_SERVER
|
||||
// Setup Proxy
|
||||
|
@ -134,6 +134,9 @@ typedef struct {
|
||||
// Key Refresh Phase 0 vs. 2, IV Update Active
|
||||
uint8_t flags;
|
||||
|
||||
// IV Index
|
||||
uint32_t iv_index;
|
||||
|
||||
} mesh_provisioning_data_t;
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@ -903,6 +903,7 @@ mesh_network_key_t * provisioning_device_data_get_network_key(void){
|
||||
|
||||
void provisioning_device_data_get(mesh_provisioning_data_t * provisioning_data){
|
||||
provisioning_data->unicast_address = unicast_address;
|
||||
provisioning_data->iv_index = iv_index;
|
||||
provisioning_data->flags = flags;
|
||||
memcpy(provisioning_data->device_key, device_key, 16);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user