Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Bluetooth: GATT: Add missing LESC_MASK for encrypt check
The LE Secure connection (LESC) mask also require encryption,
and some users have been using e.g. BT_GATT_PERM_READ_LESC
without BT_GATT_PERM_READ_ENCRYPT, and then the encryption
check in bt_gatt_check_perm was never properly applied.

cherry-picked from commit d9ff7eb
Signed-off-by: Yiheng Cao([email protected])
  • Loading branch information
Crispy-fried-chicken authored Aug 20, 2024
1 parent d21148f commit 7277e26
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions subsys/bluetooth/host/gatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -3103,8 +3103,8 @@ uint8_t bt_gatt_check_perm(struct bt_conn *conn, const struct bt_gatt_attr *attr
* the error code “Insufficient Encryption”.
*/

if (mask & (BT_GATT_PERM_ENCRYPT_MASK | BT_GATT_PERM_AUTHEN_MASK |
BT_GATT_PERM_LESC_MASK)) {
if (mask & (BT_GATT_PERM_ENCRYPT_MASK | BT_GATT_PERM_AUTHEN_MASK |
BT_GATT_PERM_LESC_MASK)) {
#if defined(CONFIG_BT_SMP)
if (!conn->encrypt) {
if (bt_conn_ltk_present(conn)) {
Expand Down

0 comments on commit 7277e26

Please sign in to comment.