Bluetooth: Don't try to reject failed LE connections

The check for the blacklist in hci_le_conn_complete_evt() should be when
we know that we have an actual successful connection (ev->status being
non-zero). This patch fixes this ordering.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Johan Hedberg 2014-07-15 11:51:28 +03:00 коммит произвёл Marcel Holtmann
Родитель 3a19b6feb2
Коммит 2d3c2260e7
1 изменённых файлов: 5 добавлений и 5 удалений

Просмотреть файл

@ -4187,14 +4187,14 @@ static void hci_le_conn_complete_evt(struct hci_dev *hdev, struct sk_buff *skb)
else
addr_type = BDADDR_LE_RANDOM;
/* Drop the connection if he device is blocked */
if (hci_bdaddr_list_lookup(&hdev->blacklist, &conn->dst, addr_type)) {
hci_conn_drop(conn);
if (ev->status) {
hci_le_conn_failed(conn, ev->status);
goto unlock;
}
if (ev->status) {
hci_le_conn_failed(conn, ev->status);
/* Drop the connection if the device is blocked */
if (hci_bdaddr_list_lookup(&hdev->blacklist, &conn->dst, addr_type)) {
hci_conn_drop(conn);
goto unlock;
}