diff options
-rw-r--r-- | include/net/bluetooth/hci.h | 1 | ||||
-rw-r--r-- | net/bluetooth/hci_conn.c | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h index 15da4460f24..ac91fbd3bc0 100644 --- a/include/net/bluetooth/hci.h +++ b/include/net/bluetooth/hci.h @@ -1436,6 +1436,7 @@ struct hci_conn_info_req { struct hci_auth_info_req { bdaddr_t bdaddr; __u8 type; + __u8 sec_level; }; struct hci_inquiry_req { diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c index c91f6d90793..6226dc4e9ef 100644 --- a/net/bluetooth/hci_conn.c +++ b/net/bluetooth/hci_conn.c @@ -948,8 +948,10 @@ int hci_get_auth_info(struct hci_dev *hdev, void __user *arg) hci_dev_lock(hdev); conn = hci_conn_hash_lookup_ba(hdev, ACL_LINK, &req.bdaddr); - if (conn) + if (conn) { req.type = conn->auth_type; + req.sec_level = max(conn->sec_level, conn->pending_sec_level); + } hci_dev_unlock(hdev); if (!conn) |