diff --git a/src/shared/att.c b/src/shared/att.c
index 3a84783..7b20757 100644
--- a/src/shared/att.c
+++ b/src/shared/att.c
{
int security;
- security = bt_att_get_security(att);
- if (security != BT_ATT_SECURITY_AUTO)
+ if (att->io_sec_level != BT_ATT_SECURITY_AUTO)
return false;
+ security = bt_att_get_security(att);
+
if (ecode == BT_ATT_ERROR_INSUFFICIENT_ENCRYPTION &&
security < BT_ATT_SECURITY_MEDIUM)
security = BT_ATT_SECURITY_MEDIUM;
att->io_on_l2cap = is_io_l2cap_based(att->fd);
if (!att->io_on_l2cap)
- att->io_sec_level = BT_SECURITY_LOW;
+ att->io_sec_level = BT_ATT_SECURITY_LOW;
return bt_att_ref(att);