monitor: Decode ATT Signed Write Command

Signed Write Command data is as follow:
Attribute Handle (2 octets)
Data (0 or more octets)
Signature (12 octets).

> ACL Data RX: Handle 64 flags 0x02 dlen 20
      ATT: Signed Write Command (0xd2) len 15
        Handle: 0x001f
          Data: 00
          Signature: 00000000df559de6549e1757
This commit is contained in:
Szymon Janc 2015-05-29 00:13:44 +02:00 committed by Luiz Augusto von Dentz
parent e1f8ee8106
commit ef62429702

View File

@ -2319,6 +2319,13 @@ static void att_write_command(const struct l2cap_frame *frame)
print_hex_field(" Data", frame->data + 2, frame->size - 2);
}
static void att_signed_write_command(const struct l2cap_frame *frame)
{
print_field("Handle: 0x%4.4x", get_le16(frame->data));
print_hex_field(" Data", frame->data + 2, frame->size - 2 - 12);
print_hex_field(" Signature", frame->data + frame->size - 12, 12);
}
struct att_opcode_data {
uint8_t opcode;
const char *str;
@ -2380,7 +2387,7 @@ static const struct att_opcode_data att_opcode_table[] = {
att_handle_value_conf, 0, true },
{ 0x52, "Write Command",
att_write_command, 2, false },
{ 0xd2, "Signed Write Command" },
{ 0xd2, "Signed Write Command", att_signed_write_command, 14, false },
{ }
};