Commit 880be4e8 authored by Marcel Holtmann's avatar Marcel Holtmann Committed by Johan Hedberg
Browse files

Bluetooth: Update source address and type for incoming LE connections



The incoming LE connections do not have a proper source address and
address type set. The connection needs to be set with the same values
as used for advertising parameters.

Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
parent 662e8820
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -3477,6 +3477,17 @@ static void hci_le_conn_complete_evt(struct hci_dev *hdev, struct sk_buff *skb)

		conn->dst_type = ev->bdaddr_type;

		/* The advertising parameters for own address type
		 * define which source address and source address
		 * type this connections has.
		 */
		if (bacmp(&conn->src, BDADDR_ANY)) {
			conn->src_type = ADDR_LE_DEV_PUBLIC;
		} else {
			bacpy(&conn->src, &hdev->static_addr);
			conn->src_type = ADDR_LE_DEV_RANDOM;
		}

		if (ev->role == LE_CONN_ROLE_MASTER) {
			conn->out = true;
			conn->link_mode |= HCI_LM_MASTER;