Diff between a37c747a597c540f300ae6f59d60a388f0ee655d and dcf9c2a9aadf2ad766ea2fefa0a9e7d745a68cc2

Changed Files

File Additions Deletions Status
emulator/btdev.c +5 -1 modified

Full Patch

diff --git a/emulator/btdev.c b/emulator/btdev.c
index 8fc4c96..a087346 100644
--- a/emulator/btdev.c
+++ b/emulator/btdev.c
@@ -1386,7 +1386,11 @@ static void le_send_adv_report(struct btdev *btdev, const struct btdev *remote,
 	memset(&meta_event.lar, 0, sizeof(meta_event.lar));
 	meta_event.lar.num_reports = 1;
 	meta_event.lar.event_type = type;
-	memcpy(meta_event.lar.addr, remote->bdaddr, 6);
+	meta_event.lar.addr_type = remote->le_adv_own_addr;
+	if (remote->le_adv_own_addr == 0x00)
+		memcpy(meta_event.lar.addr, remote->bdaddr, 6);
+	else
+		memcpy(meta_event.lar.addr, remote->random_addr, 6);
 
 	/* Scan or advertising response */
 	if (type == 0x04) {