Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth
Conflicts: net/bluetooth/hci_event.c
This commit is contained in:
@@ -1873,6 +1873,22 @@ static void pairing_complete_cb(struct hci_conn *conn, u8 status)
|
||||
pairing_complete(cmd, mgmt_status(status));
|
||||
}
|
||||
|
||||
static void le_connect_complete_cb(struct hci_conn *conn, u8 status)
|
||||
{
|
||||
struct pending_cmd *cmd;
|
||||
|
||||
BT_DBG("status %u", status);
|
||||
|
||||
if (!status)
|
||||
return;
|
||||
|
||||
cmd = find_pairing(conn);
|
||||
if (!cmd)
|
||||
BT_DBG("Unable to find a pending command");
|
||||
else
|
||||
pairing_complete(cmd, mgmt_status(status));
|
||||
}
|
||||
|
||||
static int pair_device(struct sock *sk, struct hci_dev *hdev, void *data,
|
||||
u16 len)
|
||||
{
|
||||
@@ -1941,6 +1957,8 @@ static int pair_device(struct sock *sk, struct hci_dev *hdev, void *data,
|
||||
/* For LE, just connecting isn't a proof that the pairing finished */
|
||||
if (cp->addr.type == BDADDR_BREDR)
|
||||
conn->connect_cfm_cb = pairing_complete_cb;
|
||||
else
|
||||
conn->connect_cfm_cb = le_connect_complete_cb;
|
||||
|
||||
conn->security_cfm_cb = pairing_complete_cb;
|
||||
conn->disconn_cfm_cb = pairing_complete_cb;
|
||||
|
Reference in New Issue
Block a user