Browse Source

Bluetooth: Controller: Fix return value for apto with illegal handles

If the connection handle given to a Read/Write Authenticated Payload
Timeout HCI command is a CIS or BIS handle, the error returned has to
be BT_HCI_ERR_CMD_DISALLOWED with the new TCRL

Fixes EBQ test failures in HCI/BIS/BI-14-C, HCI/BIS/BI-15-C,
HCI/CIS/BI-20-C and HCI/CIS/BI-22-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
pull/87931/head
Troels Nilsson 4 months ago committed by Benjamin Cabé
parent
commit
c64494a32d
  1. 12
      subsys/bluetooth/controller/ll_sw/ull_conn.c

12
subsys/bluetooth/controller/ll_sw/ull_conn.c

@ -706,6 +706,12 @@ uint8_t ll_apto_get(uint16_t handle, uint16_t *apto) @@ -706,6 +706,12 @@ uint8_t ll_apto_get(uint16_t handle, uint16_t *apto)
{
struct ll_conn *conn;
#if defined(CONFIG_BT_CTLR_ISO)
if (IS_CIS_HANDLE(handle) || IS_SYNC_ISO_HANDLE(handle) || IS_ADV_ISO_HANDLE(handle)) {
return BT_HCI_ERR_CMD_DISALLOWED;
}
#endif /* CONFIG_BT_CTLR_ISO */
conn = ll_connected_get(handle);
if (!conn) {
return BT_HCI_ERR_UNKNOWN_CONN_ID;
@ -726,6 +732,12 @@ uint8_t ll_apto_set(uint16_t handle, uint16_t apto) @@ -726,6 +732,12 @@ uint8_t ll_apto_set(uint16_t handle, uint16_t apto)
{
struct ll_conn *conn;
#if defined(CONFIG_BT_CTLR_ISO)
if (IS_CIS_HANDLE(handle) || IS_SYNC_ISO_HANDLE(handle) || IS_ADV_ISO_HANDLE(handle)) {
return BT_HCI_ERR_CMD_DISALLOWED;
}
#endif /* CONFIG_BT_CTLR_ISO */
conn = ll_connected_get(handle);
if (!conn) {
return BT_HCI_ERR_UNKNOWN_CONN_ID;

Loading…
Cancel
Save