Skip to content

Commit

Permalink
Merge branch 'bugfix/ble_mesh_check_stack_init_v4.2' into 'release/v4.2'
Browse files Browse the repository at this point in the history
ble_mesh: stack: Check if mesh stack initialized before init vendor client (v4.2)

See merge request espressif/esp-idf!10481
  • Loading branch information
jack0c committed Sep 30, 2020
2 parents 8e62a69 + d312651 commit 8223278
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 0 deletions.
5 changes: 5 additions & 0 deletions components/bt/esp_ble_mesh/btc/btc_ble_mesh_prov.c
Original file line number Diff line number Diff line change
Expand Up @@ -948,6 +948,11 @@ static void btc_ble_mesh_proxy_client_filter_status_recv_cb(u8_t conn_handle, u1

int btc_ble_mesh_client_model_init(esp_ble_mesh_model_t *model)
{
if (!bt_mesh_is_initialized()) {
BT_ERR("Mesh stack is not initialized!");
return -EINVAL;
}

__ASSERT(model && model->op, "%s, Invalid parameter", __func__);
esp_ble_mesh_model_op_t *op = model->op;
while (op != NULL && op->opcode != 0) {
Expand Down
6 changes: 6 additions & 0 deletions components/bt/esp_ble_mesh/mesh_core/include/mesh_main.h
Original file line number Diff line number Diff line change
Expand Up @@ -446,6 +446,12 @@ int bt_mesh_provisioner_disable(bt_mesh_prov_bearer_t bearers);
BLE_MESH_FEAT_FRIEND | \
BLE_MESH_FEAT_LOW_POWER)

/** @brief Check if the mesh stack is initialized.
*
* @return true - yes, false - no.
*/
bool bt_mesh_is_initialized(void);

/** @brief Initialize Mesh support
*
* After calling this API, the node will not automatically advertise as
Expand Down
5 changes: 5 additions & 0 deletions components/bt/esp_ble_mesh/mesh_core/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@

static bool mesh_init = false;

bool bt_mesh_is_initialized(void)
{
return mesh_init;
}

int bt_mesh_provision(const u8_t net_key[16], u16_t net_idx,
u8_t flags, u32_t iv_index, u16_t addr,
const u8_t dev_key[16])
Expand Down

0 comments on commit 8223278

Please sign in to comment.