Bluetooth: controller: split: Fix directed adv addr type returned

Fix HCI LE Directed Advertising Report event to return
correct directed advertiser's address type.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This commit is contained in:
Vinayak Kariappa Chettimada 2020-05-04 18:18:28 +05:30 committed by Carles Cufí
commit 688ddc4db6

View file

@ -2874,7 +2874,7 @@ static inline void le_dir_adv_report(struct pdu_adv *adv, struct net_buf *buf,
sizeof(bt_addr_t));
}
dir_info->dir_addr.type = 0x1;
dir_info->dir_addr.type = adv->rx_addr;
memcpy(&dir_info->dir_addr.a.val[0],
&adv->direct_ind.tgt_addr[0], sizeof(bt_addr_t));
@ -3163,12 +3163,14 @@ static void le_ext_adv_legacy_report(struct pdu_data *pdu_data,
adv_info->rssi = rssi;
adv_info->interval = 0U;
adv_info->direct_addr.type = adv->rx_addr;
#if defined(CONFIG_BT_CTLR_EXT_SCAN_FP)
if (direct) {
adv_info->direct_addr.type = 0x1;
memcpy(&adv_info->direct_addr.a.val[0],
&adv->direct_ind.tgt_addr[0], sizeof(bt_addr_t));
} else {
adv_info->direct_addr.type = 0U;
} else
#endif /* CONFIG_BT_CTLR_EXT_SCAN_FP */
{
memset(&adv_info->direct_addr.a.val[0], 0, sizeof(bt_addr_t));
}