Bluetooth: ATT: Fix att_op_get_type when client is disabled
When CONFIG_BT_GATT_CLIENT is not set att_op_get_type would return unkown operation instead of properly return the opcode. Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This commit is contained in:
parent
68bfd1422e
commit
3b271b8455
1 changed files with 34 additions and 10 deletions
|
@ -1929,17 +1929,41 @@ static const struct att_handler {
|
|||
|
||||
static att_type_t att_op_get_type(u8_t op)
|
||||
{
|
||||
const struct att_handler *handler;
|
||||
int i;
|
||||
|
||||
for (i = 0, handler = NULL; i < ARRAY_SIZE(handlers); i++) {
|
||||
if (op == handlers[i].op) {
|
||||
return handlers[i].type;
|
||||
}
|
||||
}
|
||||
|
||||
if (op & ATT_CMD_MASK) {
|
||||
switch (op) {
|
||||
case BT_ATT_OP_MTU_REQ:
|
||||
case BT_ATT_OP_FIND_INFO_REQ:
|
||||
case BT_ATT_OP_FIND_TYPE_REQ:
|
||||
case BT_ATT_OP_READ_TYPE_REQ:
|
||||
case BT_ATT_OP_READ_REQ:
|
||||
case BT_ATT_OP_READ_BLOB_REQ:
|
||||
case BT_ATT_OP_READ_MULT_REQ:
|
||||
case BT_ATT_OP_READ_GROUP_REQ:
|
||||
case BT_ATT_OP_WRITE_REQ:
|
||||
case BT_ATT_OP_PREPARE_WRITE_REQ:
|
||||
case BT_ATT_OP_EXEC_WRITE_REQ:
|
||||
return ATT_REQUEST;
|
||||
case BT_ATT_OP_CONFIRM:
|
||||
return ATT_CONFIRMATION;
|
||||
case BT_ATT_OP_WRITE_CMD:
|
||||
case BT_ATT_OP_SIGNED_WRITE_CMD:
|
||||
return ATT_COMMAND;
|
||||
case BT_ATT_OP_ERROR_RSP:
|
||||
case BT_ATT_OP_MTU_RSP:
|
||||
case BT_ATT_OP_FIND_INFO_RSP:
|
||||
case BT_ATT_OP_FIND_TYPE_RSP:
|
||||
case BT_ATT_OP_READ_TYPE_RSP:
|
||||
case BT_ATT_OP_READ_RSP:
|
||||
case BT_ATT_OP_READ_BLOB_RSP:
|
||||
case BT_ATT_OP_READ_MULT_RSP:
|
||||
case BT_ATT_OP_READ_GROUP_RSP:
|
||||
case BT_ATT_OP_WRITE_RSP:
|
||||
case BT_ATT_OP_PREPARE_WRITE_RSP:
|
||||
case BT_ATT_OP_EXEC_WRITE_RSP:
|
||||
return ATT_RESPONSE;
|
||||
case BT_ATT_OP_NOTIFY:
|
||||
return ATT_NOTIFICATION;
|
||||
case BT_ATT_OP_INDICATE:
|
||||
return ATT_INDICATION;
|
||||
}
|
||||
|
||||
return ATT_UNKNOWN;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue