ble_mesh: Skip local messages in rx

Local messages are already enqueued for the LPN in the tx path, and
don't have to be added again in the rx path.
pull/4625/head
lly 2019-10-24 16:10:35 +08:00
rodzic 6516ab71ea
commit aec696a3a4
1 zmienionych plików z 8 dodań i 0 usunięć

Wyświetl plik

@ -1310,6 +1310,14 @@ static void friend_lpn_enqueue_rx(struct bt_mesh_friend *frnd,
struct friend_pdu_info info;
struct net_buf *buf;
/* Because of network loopback, tx packets will also be passed into
* this rx function. These packets have already been added to the
* queue, and should be ignored.
*/
if (bt_mesh_elem_find(rx->ctx.addr)) {
return;
}
BT_DBG("LPN 0x%04x queue_size %u", frnd->lpn, frnd->queue_size);
if (type == BLE_MESH_FRIEND_PDU_SINGLE && seq_auth) {