Bluetooth: Fix mgmt connected notification
This patch fixes a regression that was introduced by commit cb77c3ec075a50e9f956f62dc2e4c0394df1d578. In addition to BT_CONFIG, BT_CONNECTED is also a state in which we may get a remote name and need to indicate over mgmt the connection status. This scenario is particularly likely to happen for incoming connections that do not need authentication since there the hci_conn state will reach BT_CONNECTED before the remote name is received. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
f662614086
commit
60cb49d2c9
@ -1581,7 +1581,13 @@ static void hci_check_pending_name(struct hci_dev *hdev, struct hci_conn *conn,
|
||||
struct discovery_state *discov = &hdev->discovery;
|
||||
struct inquiry_entry *e;
|
||||
|
||||
if (conn && conn->state == BT_CONFIG &&
|
||||
/* Update the mgmt connected state if necessary. Be careful with
|
||||
* conn objects that exist but are not (yet) connected however.
|
||||
* Only those in BT_CONFIG or BT_CONNECTED states can be
|
||||
* considered connected.
|
||||
*/
|
||||
if (conn &&
|
||||
(conn->state == BT_CONFIG || conn->state == BT_CONNECTED) &&
|
||||
!test_and_set_bit(HCI_CONN_MGMT_CONNECTED, &conn->flags))
|
||||
mgmt_device_connected(hdev, conn, 0, name, name_len);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user