diff mbox series

[v1] att: Check security level before setting

Message ID 20241120080447.233393-1-quic_jiaymao@quicinc.com
State New
Headers show
Series [v1] att: Check security level before setting | expand

Commit Message

Jiayang Mao Nov. 20, 2024, 8:04 a.m. UTC
bt_gatt_client_set_security could fail if the security level in
kernel is already BT_ATT_SECURITY_MEDIUM but long term key is not
ready. So, get and check the security level before setting it.

Signed-off-by: Jiayang Mao <quic_jiaymao@quicinc.com>
---
 src/shared/att.c | 3 +++
 1 file changed, 3 insertions(+)
diff mbox series

Patch

diff --git a/src/shared/att.c b/src/shared/att.c
index 4a406f4b9..dabbdb431 100644
--- a/src/shared/att.c
+++ b/src/shared/att.c
@@ -727,6 +727,9 @@  static bool bt_att_chan_set_security(struct bt_att_chan *chan, int level)
 {
 	struct bt_security sec;
 
+	if (level == bt_att_chan_get_security(chan))
+		return true;
+
 	if (chan->type == BT_ATT_LOCAL) {
 		chan->sec_level = level;
 		return true;