1 /*  Bluetooth Mesh */
2 
3 /*
4  * SPDX-FileCopyrightText: 2017 Intel Corporation
5  * SPDX-FileContributor: 2018-2021 Espressif Systems (Shanghai) CO LTD
6  *
7  * SPDX-License-Identifier: Apache-2.0
8  */
9 
10 #ifndef _BLE_MESH_TEST_H_
11 #define _BLE_MESH_TEST_H_
12 
13 #include "mesh_bearer_adapt.h"
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 int bt_mesh_test(void);
20 
21 struct bt_mesh_device_network_info {
22     uint8_t  net_key[16];
23     uint16_t net_idx;
24     uint8_t  flags;
25     uint32_t iv_index;
26     uint16_t unicast_addr;
27     uint8_t  dev_key[16];
28     uint8_t  app_key[16];
29     uint16_t app_idx;
30     uint16_t group_addr;
31 };
32 
33 int bt_mesh_device_auto_enter_network(struct bt_mesh_device_network_info *info);
34 
35 /* Before trying to update the white list, users need to make sure that
36  * one of the following conditions is satisfied:
37  * 1. BLE scanning is disabled;
38  * 2. BLE scanning is enabled with scan filter policy disabled;
39  * If BLE scanning is enabled with scan filter policy enabled, users need
40  * to stop BLE scanning firstly, then the white list can be updated.
41  */
42 int bt_mesh_test_update_white_list(struct bt_mesh_white_list *wl);
43 
44 int bt_mesh_test_start_scanning(bool wl_en);
45 
46 int bt_mesh_test_stop_scanning(void);
47 
48 #ifdef __cplusplus
49 }
50 #endif
51 
52 #endif /* _BLE_MESH_TEST_H_ */
53