From d9e1bf339129a4f992bbdf413a18d9a53ed2dff1 Mon Sep 17 00:00:00 2001 From: Matthias Ringwald Date: Mon, 18 Dec 2023 18:38:36 +0100 Subject: [PATCH] hci: handle le identity addresses in gap functions --- src/hci.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/hci.c b/src/hci.c index ba8ab2271..bb600b1f2 100644 --- a/src/hci.c +++ b/src/hci.c @@ -9536,6 +9536,8 @@ bool gap_authenticated(hci_con_handle_t con_handle){ #ifdef ENABLE_BLE case BD_ADDR_TYPE_LE_PUBLIC: case BD_ADDR_TYPE_LE_RANDOM: + case BD_ADDR_TYPE_LE_PUBLIC_IDENTITY: + case BD_ADDR_TYPE_LE_RANDOM_IDENTITY: if (hci_connection->sm_connection.sm_connection_encrypted == 0) return 0; // unencrypted connection cannot be authenticated return hci_connection->sm_connection.sm_connection_authenticated != 0; #endif @@ -9557,6 +9559,8 @@ bool gap_secure_connection(hci_con_handle_t con_handle){ #ifdef ENABLE_BLE case BD_ADDR_TYPE_LE_PUBLIC: case BD_ADDR_TYPE_LE_RANDOM: + case BD_ADDR_TYPE_LE_PUBLIC_IDENTITY: + case BD_ADDR_TYPE_LE_RANDOM_IDENTITY: if (hci_connection->sm_connection.sm_connection_encrypted == 0) return false; // unencrypted connection cannot be authenticated return hci_connection->sm_connection.sm_connection_sc; #endif @@ -9582,7 +9586,9 @@ bool gap_bonded(hci_con_handle_t con_handle){ #ifdef ENABLE_BLE case BD_ADDR_TYPE_LE_PUBLIC: case BD_ADDR_TYPE_LE_RANDOM: - return hci_connection->sm_connection.sm_le_db_index >= 0; + case BD_ADDR_TYPE_LE_PUBLIC_IDENTITY: + case BD_ADDR_TYPE_LE_RANDOM_IDENTITY: + return hci_connection->sm_connection.sm_le_db_index >= 0; #endif #ifdef ENABLE_CLASSIC case BD_ADDR_TYPE_SCO: