Message ID | 20241119163731.2767660-1-luiz.dentz@gmail.com |
---|---|
State | New |
Headers | show |
Series | [BlueZ,v1] shared/att: Fix failing to set security level | expand |
diff --git a/src/shared/att.c b/src/shared/att.c index 4a406f4b91a4..dabbdb4315eb 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;
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> bt_att_chan_set_security attempts to set BT_SECURITY without first checking what is the current security level which may cause errors since the kernel does actually return -EINVAL when the security doesn't change. --- src/shared/att.c | 3 +++ 1 file changed, 3 insertions(+)