Bluetooth: Avoid redundant authentication
authorYing Hsu <yinghsu@chromium.org>
Thu, 7 Sep 2023 04:39:34 +0000 (04:39 +0000)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Wed, 20 Sep 2023 18:02:22 +0000 (11:02 -0700)
commit1d8e801422d66e4b8c7b187c52196bef94eed887
treec5a69047b1375809c7b7e0ab0d75972d2443a81a
parente0275ea52169412b8faccb4e2f4fed8a057844c6
Bluetooth: Avoid redundant authentication

While executing the Android 13 CTS Verifier Secure Server test on a
ChromeOS device, it was observed that the Bluetooth host initiates
authentication for an RFCOMM connection after SSP completes.
When this happens, some Intel Bluetooth controllers, like AC9560, would
disconnect with "Connection Rejected due to Security Reasons (0x0e)".

Historically, BlueZ did not mandate this authentication while an
authenticated combination key was already in use for the connection.
This behavior was changed since commit 7b5a9241b780
("Bluetooth: Introduce requirements for security level 4").
So, this patch addresses the aforementioned disconnection issue by
restoring the previous behavior.

Signed-off-by: Ying Hsu <yinghsu@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
net/bluetooth/hci_conn.c