Преглед на файлове

Bluetooth: Add support for sending connection events for LE links

We need to be able for receive events notifying that the connection
was established, the connection attempt failed or that disconnection
happened.

Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@openbossa.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Vinicius Costa Gomes преди 14 години
родител
ревизия
83bc71b410
променени са 1 файла, в които са добавени 4 реда и са изтрити 1 реда
  1. 4 1
      net/bluetooth/hci_event.c

+ 4 - 1
net/bluetooth/hci_event.c

@@ -1440,7 +1440,7 @@ static inline void hci_disconn_complete_evt(struct hci_dev *hdev, struct sk_buff
 
 
 	conn->state = BT_CLOSED;
 	conn->state = BT_CLOSED;
 
 
-	if (conn->type == ACL_LINK)
+	if (conn->type == ACL_LINK || conn->type == LE_LINK)
 		mgmt_disconnected(hdev->id, &conn->dst);
 		mgmt_disconnected(hdev->id, &conn->dst);
 
 
 	hci_proto_disconn_cfm(conn, ev->reason);
 	hci_proto_disconn_cfm(conn, ev->reason);
@@ -2659,12 +2659,15 @@ static inline void hci_le_conn_complete_evt(struct hci_dev *hdev, struct sk_buff
 	}
 	}
 
 
 	if (ev->status) {
 	if (ev->status) {
+		mgmt_connect_failed(hdev->id, &ev->bdaddr, ev->status);
 		hci_proto_connect_cfm(conn, ev->status);
 		hci_proto_connect_cfm(conn, ev->status);
 		conn->state = BT_CLOSED;
 		conn->state = BT_CLOSED;
 		hci_conn_del(conn);
 		hci_conn_del(conn);
 		goto unlock;
 		goto unlock;
 	}
 	}
 
 
+	mgmt_connected(hdev->id, &ev->bdaddr);
+
 	conn->handle = __le16_to_cpu(ev->handle);
 	conn->handle = __le16_to_cpu(ev->handle);
 	conn->state = BT_CONNECTED;
 	conn->state = BT_CONNECTED;