From 45749f6aad2600e32f7f149aa9b5ffa73604535e Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Mon, 2 Jun 2014 13:01:04 +0300 Subject: [PATCH] emulator: Fix random address type in LE conn complete events --- emulator/btdev.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/emulator/btdev.c b/emulator/btdev.c index 8ba6e6b63..641edead4 100644 --- a/emulator/btdev.c +++ b/emulator/btdev.c @@ -1022,7 +1022,11 @@ static void le_conn_complete(struct btdev *btdev, remote->conn = btdev; cc->status = status; - memcpy(cc->peer_addr, btdev->bdaddr, 6); + cc->peer_addr_type = btdev->le_scan_own_addr_type; + if (cc->peer_addr_type == 0x01) + memcpy(cc->peer_addr, btdev->random_addr, 6); + else + memcpy(cc->peer_addr, btdev->bdaddr, 6); cc->role = 0x01; cc->handle = cpu_to_le16(42); @@ -1033,6 +1037,7 @@ static void le_conn_complete(struct btdev *btdev, } cc->status = status; + cc->peer_addr_type = bdaddr_type; memcpy(cc->peer_addr, bdaddr, 6); cc->role = 0x00; -- 2.11.0