summaryrefslogtreecommitdiff
path: root/tools/parser/att.c
diff options
context:
space:
mode:
authorAndre Dieb Martins <andre.dieb@signove.com>2011-02-09 14:28:51 -0300
committerMarcel Holtmann <marcel@holtmann.org>2012-12-17 23:53:02 +0100
commit6b066c9b8da6d0068492355f72e588b07a63086f (patch)
tree286564cdce2cc590b53d993bb1aa01b745877c94 /tools/parser/att.c
parent6098c44af05d4691c221b67c6313d0a317fb4a71 (diff)
downloadbluez-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.c29
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;