|
@@ -1762,7 +1762,12 @@ static void hci_conn_complete_evt(struct hci_dev *hdev, struct sk_buff *skb)
|
|
|
if (conn->type == ACL_LINK) {
|
|
|
conn->state = BT_CONFIG;
|
|
|
hci_conn_hold(conn);
|
|
|
- conn->disc_timeout = HCI_DISCONN_TIMEOUT;
|
|
|
+
|
|
|
+ if (!conn->out && !hci_conn_ssp_enabled(conn) &&
|
|
|
+ !hci_find_link_key(hdev, &ev->bdaddr))
|
|
|
+ conn->disc_timeout = HCI_PAIRING_TIMEOUT;
|
|
|
+ else
|
|
|
+ conn->disc_timeout = HCI_DISCONN_TIMEOUT;
|
|
|
} else
|
|
|
conn->state = BT_CONNECTED;
|
|
|
|