diff options
Diffstat (limited to 'net/bluetooth/l2cap_core.c')
| -rw-r--r-- | net/bluetooth/l2cap_core.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index b3bb7bca8e60..63fa11109a1c 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c | |||
| @@ -3755,6 +3755,13 @@ static struct l2cap_chan *l2cap_connect(struct l2cap_conn *conn, | |||
| 3755 | 3755 | ||
| 3756 | sk = chan->sk; | 3756 | sk = chan->sk; |
| 3757 | 3757 | ||
| 3758 | /* For certain devices (ex: HID mouse), support for authentication, | ||
| 3759 | * pairing and bonding is optional. For such devices, inorder to avoid | ||
| 3760 | * the ACL alive for too long after L2CAP disconnection, reset the ACL | ||
| 3761 | * disc_timeout back to HCI_DISCONN_TIMEOUT during L2CAP connect. | ||
| 3762 | */ | ||
| 3763 | conn->hcon->disc_timeout = HCI_DISCONN_TIMEOUT; | ||
| 3764 | |||
| 3758 | bacpy(&bt_sk(sk)->src, conn->src); | 3765 | bacpy(&bt_sk(sk)->src, conn->src); |
| 3759 | bacpy(&bt_sk(sk)->dst, conn->dst); | 3766 | bacpy(&bt_sk(sk)->dst, conn->dst); |
| 3760 | chan->psm = psm; | 3767 | chan->psm = psm; |
