aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Dieb Martins <andre.dieb@signove.com>2011-03-30 11:01:34 -0300
committerJohan Hedberg <johan.hedberg@nokia.com>2011-03-30 19:46:35 +0300
commitae742edc21c9b6a4bf4d7fecb749732d91544727 (patch)
tree5aa2632bb04847ce14b94daa40ab956b26f783dc
parent33a50369148f4cb03099c6d79c8b2b15f65e1340 (diff)
downloadhcidump-ae742edc21c9b6a4bf4d7fecb749732d91544727.tar.gz
Add parsing for ATT Execute Write command
BT's Core V4.0 document is buggy regarding Execute Write Response, so we'll leave it out until a proper description is given.
-rw-r--r--parser/att.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/parser/att.c b/parser/att.c
index 7046357..a6f42df 100644
--- a/parser/att.c
+++ b/parser/att.c
@@ -523,6 +523,19 @@ static void att_prep_write_dump(int level, struct frame *frm)
printf("\n");
}
+static void att_exec_write_req_dump(int level, struct frame *frm)
+{
+ uint8_t flags = get_u8(frm);
+
+ p_indent(level, frm);
+ if (flags == 0x00)
+ printf("cancel all prepared writes ");
+ else
+ printf("immediatelly write all pending prepared values ");
+
+ printf("(0x%2.2x)\n", flags);
+}
+
static void att_handle_notify_dump(int level, struct frame *frm)
{
uint16_t handle = btohs(htons(get_u16(frm)));
@@ -607,6 +620,9 @@ void att_dump(int level, struct frame *frm)
case ATT_OP_PREP_WRITE_RESP:
att_prep_write_dump(level + 1, frm);
break;
+ case ATT_OP_EXEC_WRITE_REQ:
+ att_exec_write_req_dump(level + 1, frm);
+ break;
case ATT_OP_HANDLE_NOTIFY:
att_handle_notify_dump(level + 1, frm);
break;