From dcf9c2a9aadf2ad766ea2fefa0a9e7d745a68cc2 Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Tue, 11 Mar 2014 14:27:42 +0200 Subject: [PATCH] emulator/btdev: Fix using correct address in advertising reports --- emulator/btdev.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/emulator/btdev.c b/emulator/btdev.c index 8fc4c96ff..a08734604 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) { -- 2.11.0