mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-03 02:11:57 +00:00
Splits PB-ADV and PB-GATT into separate modules with a common interface to modularize prov.c. Additional trivial fixes from testing: - Reduces warnings for normal occurances like repeated packets. - Makes link ack a non-reliable packet to prevent it from being repeated until prov invite. - Provisioner does not send link fail, but closes the link (as per spec section 5.4.4). This prevents lingering zombie links on both sides. Signed-off-by: Trond Einar Snekvik <Trond.Einar.Snekvik@nordicsemi.no>
37 lines
1.0 KiB
C
37 lines
1.0 KiB
C
/* Bluetooth Mesh */
|
|
|
|
/*
|
|
* Copyright (c) 2017 Intel Corporation
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#define PROV_ERR_NONE 0x00
|
|
#define PROV_ERR_NVAL_PDU 0x01
|
|
#define PROV_ERR_NVAL_FMT 0x02
|
|
#define PROV_ERR_UNEXP_PDU 0x03
|
|
#define PROV_ERR_CFM_FAILED 0x04
|
|
#define PROV_ERR_RESOURCES 0x05
|
|
#define PROV_ERR_DECRYPT 0x06
|
|
#define PROV_ERR_UNEXP_ERR 0x07
|
|
#define PROV_ERR_ADDR 0x08
|
|
|
|
int bt_mesh_pb_adv_open(const u8_t uuid[16], u16_t net_idx, u16_t addr,
|
|
u8_t attention_duration);
|
|
|
|
void bt_mesh_pb_adv_recv(struct net_buf_simple *buf);
|
|
|
|
bool bt_prov_active(void);
|
|
|
|
int bt_mesh_pb_gatt_open(struct bt_conn *conn);
|
|
int bt_mesh_pb_gatt_close(struct bt_conn *conn);
|
|
int bt_mesh_pb_gatt_recv(struct bt_conn *conn, struct net_buf_simple *buf);
|
|
|
|
const struct bt_mesh_prov *bt_mesh_prov_get(void);
|
|
|
|
int bt_mesh_prov_init(const struct bt_mesh_prov *prov);
|
|
|
|
void bt_mesh_prov_complete(u16_t net_idx, u16_t addr);
|
|
void bt_mesh_prov_node_added(u16_t net_idx, u16_t addr, u8_t num_elem);
|
|
void bt_mesh_prov_reset(void);
|