This is an automated email from the ASF dual-hosted git repository. naraj pushed a commit to branch revert-958-mesh_sync_march21 in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git
commit 4a0ee0bdb19f68b804dff1e8d809f40d25a2a3b3 Author: MichaĆ Narajowski <[email protected]> AuthorDate: Thu May 27 10:20:19 2021 +0200 Revert "mesh: Add CDB handle key refresh phase" This reverts commit 83cf6da68cb8c49371875cc113d176f9cfe74f89. --- nimble/host/mesh/include/mesh/cdb.h | 1 + nimble/host/mesh/include/mesh/cfg.h | 6 ------ nimble/host/mesh/src/cdb.c | 2 +- nimble/host/mesh/src/provisioner.c | 2 +- nimble/host/mesh/src/settings.c | 4 +++- nimble/host/mesh/src/shell.c | 10 +++++----- nimble/host/mesh/src/testing.c | 4 ++++ 7 files changed, 15 insertions(+), 14 deletions(-) diff --git a/nimble/host/mesh/include/mesh/cdb.h b/nimble/host/mesh/include/mesh/cdb.h index 440390c..8f9a6bc 100644 --- a/nimble/host/mesh/include/mesh/cdb.h +++ b/nimble/host/mesh/include/mesh/cdb.h @@ -40,6 +40,7 @@ struct bt_mesh_cdb_node { struct bt_mesh_cdb_subnet { uint16_t net_idx; + bool kr_flag; uint8_t kr_phase; struct { diff --git a/nimble/host/mesh/include/mesh/cfg.h b/nimble/host/mesh/include/mesh/cfg.h index 6fd6926..378f0a0 100644 --- a/nimble/host/mesh/include/mesh/cfg.h +++ b/nimble/host/mesh/include/mesh/cfg.h @@ -35,12 +35,6 @@ enum bt_mesh_feat_state { BT_MESH_FEATURE_NOT_SUPPORTED, }; -/* Key Refresh Phase */ -#define BT_MESH_KR_NORMAL 0x00 -#define BT_MESH_KR_PHASE_1 0x01 -#define BT_MESH_KR_PHASE_2 0x02 -#define BT_MESH_KR_PHASE_3 0x03 - /* Legacy feature defines */ #define BT_MESH_RELAY_DISABLED BT_MESH_FEATURE_DISABLED #define BT_MESH_RELAY_ENABLED BT_MESH_FEATURE_ENABLED diff --git a/nimble/host/mesh/src/cdb.c b/nimble/host/mesh/src/cdb.c index 60d47de..f0c2e5f 100644 --- a/nimble/host/mesh/src/cdb.c +++ b/nimble/host/mesh/src/cdb.c @@ -235,7 +235,7 @@ uint8_t bt_mesh_cdb_subnet_flags(const struct bt_mesh_cdb_subnet *sub) { uint8_t flags = 0x00; - if (sub && SUBNET_KEY_TX_IDX(sub)) { + if (sub && sub->kr_flag) { flags |= BT_MESH_NET_FLAG_KR; } diff --git a/nimble/host/mesh/src/provisioner.c b/nimble/host/mesh/src/provisioner.c index 265dbf2..e26efe7 100644 --- a/nimble/host/mesh/src/provisioner.c +++ b/nimble/host/mesh/src/provisioner.c @@ -503,7 +503,7 @@ static void send_prov_data(void) #endif bt_mesh_prov_buf_init(pdu, PROV_DATA); #if MYNEWT_VAL(BLE_MESH_CDB) - net_buf_simple_add_mem(&pdu, sub->keys[SUBNET_KEY_TX_IDX(sub)].net_key, 16); + net_buf_simple_add_mem(pdu, sub->keys[sub->kr_flag].net_key, 16); net_buf_simple_add_be16(pdu, prov_device.node->net_idx); net_buf_simple_add_u8(pdu, bt_mesh_cdb_subnet_flags(sub)); net_buf_simple_add_be32(pdu, bt_mesh_cdb.iv_index); diff --git a/nimble/host/mesh/src/settings.c b/nimble/host/mesh/src/settings.c index 1fb2b08..193cc0b 100644 --- a/nimble/host/mesh/src/settings.c +++ b/nimble/host/mesh/src/settings.c @@ -829,6 +829,7 @@ static int cdb_subnet_set(int argc, char *name) if (sub) { BT_DBG("Updating existing NetKeyIndex 0x%03x", net_idx); + sub->kr_flag = key.kr_flag; sub->kr_phase = key.kr_phase; memcpy(sub->keys[0].net_key, &key.val[0], 16); memcpy(sub->keys[1].net_key, &key.val[1], 16); @@ -842,6 +843,7 @@ static int cdb_subnet_set(int argc, char *name) return -ENOMEM; } + sub->kr_flag = key.kr_flag; sub->kr_phase = key.kr_phase; memcpy(sub->keys[0].net_key, &key.val[0], 16); memcpy(sub->keys[1].net_key, &key.val[1], 16); @@ -1606,7 +1608,7 @@ static void store_cdb_subnet(const struct bt_mesh_cdb_subnet *sub) memcpy(&key.val[0], sub->keys[0].net_key, 16); memcpy(&key.val[1], sub->keys[1].net_key, 16); - key.kr_flag = 0U; /* Deprecated */ + key.kr_flag = sub->kr_flag; key.kr_phase = sub->kr_phase; snprintk(path, sizeof(path), "bt/mesh/cdb/Subnet/%x", sub->net_idx); diff --git a/nimble/host/mesh/src/shell.c b/nimble/host/mesh/src/shell.c index ade9cd6..1ac4caf 100644 --- a/nimble/host/mesh/src/shell.c +++ b/nimble/host/mesh/src/shell.c @@ -738,7 +738,7 @@ int cmd_mesh_init(int argc, char *argv[]) printk("Mesh initialized\n"); - if (IS_ENABLED(CONFIG_BT_SETTINGS)) { + if (IS_ENABLED(CONFIG_SETTINGS)) { settings_load(); } @@ -2345,7 +2345,7 @@ static int cmd_provision(int argc, char *argv[]) return 0; } - net_key = sub->keys[SUBNET_KEY_TX_IDX(sub)].net_key; + net_key = sub->keys[sub->kr_flag].net_key; } err = bt_mesh_provision(net_key, net_idx, 0, iv_index, addr, @@ -2905,7 +2905,7 @@ static int cmd_cdb_node_add(int argc, char *argv[]) memcpy(node->dev_key, dev_key, 16); - if (IS_ENABLED(CONFIG_BT_SETTINGS)) { + if (IS_ENABLED(CONFIG_SETTINGS)) { bt_mesh_store_cdb_node(node); } @@ -2959,7 +2959,7 @@ static int cmd_cdb_subnet_add(int argc, memcpy(sub->keys[0].net_key, net_key, 16); - if (IS_ENABLED(CONFIG_BT_SETTINGS)) { + if (IS_ENABLED(CONFIG_SETTINGS)) { bt_mesh_store_cdb_subnet(sub); } @@ -3015,7 +3015,7 @@ static int cmd_cdb_app_key_add(int argc, memcpy(key->keys[0].app_key, app_key, 16); - if (IS_ENABLED(CONFIG_BT_SETTINGS)) { + if (IS_ENABLED(CONFIG_SETTINGS)) { bt_mesh_store_cdb_app_key(key); } diff --git a/nimble/host/mesh/src/testing.c b/nimble/host/mesh/src/testing.c index 7ee11a1..dfe8d18 100644 --- a/nimble/host/mesh/src/testing.c +++ b/nimble/host/mesh/src/testing.c @@ -135,6 +135,8 @@ void bt_test_print_credentials(void) console_printf("Subnet: %d\n", i); console_printf("\tNetKeyIdx: %04x\n", sub->net_idx); + console_printf("\tNetKey: %s\n", + bt_hex(sub->keys[sub->kr_flag].net_key, 16)); } for (i = 0; i < ARRAY_SIZE(bt_mesh_cdb.app_keys); ++i) @@ -152,6 +154,8 @@ void bt_test_print_credentials(void) app_key->net_idx); console_printf("\tAppKeyIdx: %04x\n", app_key->app_idx); + console_printf("\tAppKey: %s\n", + bt_hex(app_key->keys[sub->kr_flag].app_key, 16)); } for (i = 0; i < ARRAY_SIZE(bt_mesh_cdb.subnets); ++i)
