diff options
author | Andre Dieb Martins <andre.dieb@signove.com> | 2011-02-09 14:28:51 -0300 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2012-12-17 23:53:02 +0100 |
commit | 6b066c9b8da6d0068492355f72e588b07a63086f (patch) | |
tree | 286564cdce2cc590b53d993bb1aa01b745877c94 /tools/parser/att.c | |
parent | 6098c44af05d4691c221b67c6313d0a317fb4a71 (diff) | |
download | bluez-6b066c9b8da6d0068492355f72e588b07a63086f.tar.gz |
hcidump: Add ATT MTU req/resp and notify value
Diffstat (limited to 'tools/parser/att.c')
-rw-r--r-- | tools/parser/att.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tools/parser/att.c b/tools/parser/att.c index eb0d00b7b..261dfe632 100644 --- a/tools/parser/att.c +++ b/tools/parser/att.c @@ -132,12 +132,35 @@ static const char *attop2str(uint8_t op) } } +static void att_mtu_req_dump(int level, struct frame *frm) +{ + uint16_t client_rx_mtu = btohs(htons(get_u16(frm))); + + p_indent(level, frm); + printf("client rx mtu %d\n", client_rx_mtu); +} + +static void att_mtu_resp_dump(int level, struct frame *frm) +{ + uint16_t server_rx_mtu = btohs(htons(get_u16(frm))); + + p_indent(level, frm); + printf("server rx mtu %d\n", server_rx_mtu); +} + static void att_handle_notify_dump(int level, struct frame *frm) { uint16_t handle = btohs(htons(get_u16(frm))); p_indent(level, frm); printf("handle 0x%2.2x\n", handle); + + p_indent(level, frm); + printf("value "); + while (frm->len > 0) { + printf("0x%.2x ", get_u8(frm)); + } + printf("\n"); } void att_dump(int level, struct frame *frm) @@ -150,6 +173,12 @@ void att_dump(int level, struct frame *frm) printf("ATT: %s (0x%.2x)\n", attop2str(op), op); switch (op) { + case ATT_OP_MTU_REQ: + att_mtu_req_dump(level + 1, frm); + break; + case ATT_OP_MTU_RESP: + att_mtu_resp_dump(level + 1, frm); + break; case ATT_OP_HANDLE_NOTIFY: att_handle_notify_dump(level + 1, frm); break; |