|
@@ -745,6 +745,9 @@ static inline void hci_encrypt_cfm(struct hci_conn *conn, __u8 status,
|
|
if (conn->sec_level == BT_SECURITY_SDP)
|
|
if (conn->sec_level == BT_SECURITY_SDP)
|
|
conn->sec_level = BT_SECURITY_LOW;
|
|
conn->sec_level = BT_SECURITY_LOW;
|
|
|
|
|
|
|
|
+ if (conn->pending_sec_level > conn->sec_level)
|
|
|
|
+ conn->sec_level = conn->pending_sec_level;
|
|
|
|
+
|
|
hci_proto_encrypt_cfm(conn, status, encrypt);
|
|
hci_proto_encrypt_cfm(conn, status, encrypt);
|
|
|
|
|
|
read_lock_bh(&hci_cb_list_lock);
|
|
read_lock_bh(&hci_cb_list_lock);
|