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 #ifndef _PROV_H_ 10 #define _PROV_H_ 11 12 #include "mesh_main.h" 13 #include "mesh_bearer_adapt.h" 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 void bt_mesh_pb_adv_recv(struct net_buf_simple *buf); 20 21 bool bt_prov_active(void); 22 23 int bt_mesh_pb_gatt_open(struct bt_mesh_conn *conn); 24 int bt_mesh_pb_gatt_close(struct bt_mesh_conn *conn); 25 int bt_mesh_pb_gatt_recv(struct bt_mesh_conn *conn, struct net_buf_simple *buf); 26 27 int bt_mesh_set_oob_pub_key(const uint8_t pub_key_x[32], const uint8_t pub_key_y[32], 28 const uint8_t pri_key[32]); 29 30 const struct bt_mesh_prov *bt_mesh_prov_get(void); 31 32 int bt_mesh_prov_init(const struct bt_mesh_prov *prov); 33 int bt_mesh_prov_deinit(void); 34 35 void bt_mesh_prov_complete(uint16_t net_idx, const uint8_t net_key[16], 36 uint16_t addr, uint8_t flags, uint32_t iv_index); 37 void bt_mesh_prov_reset(void); 38 39 #ifdef __cplusplus 40 } 41 #endif 42 43 #endif /* _PROV_H_ */ 44