From d6197868c4ba96d6e2b7f0c69b86749ce67f17c4 Mon Sep 17 00:00:00 2001 From: Simon Mikuda Date: Thu, 23 Mar 2023 11:28:58 +0100 Subject: [PATCH] monitor: Fix printing Signed Write Command Data field were print twice (1 time incorrectly): > ACL Data RX: Handle 64 flags 0x02 dlen 19 ATT: Signed Write Command (0xd2) len 14 Handle: 0x006f Type: Vendor specific (f7debc9a-7856-3412-7856-341278563412) Data: 0800000087f303c224516133 Data: Signature: 0800000087f303c224516133 --- monitor/att.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/monitor/att.c b/monitor/att.c index cd319cf..ef193f9 100644 --- a/monitor/att.c +++ b/monitor/att.c @@ -2933,13 +2933,14 @@ static void print_write(const struct l2cap_frame *frame, uint16_t handle, struct gatt_handler *handler; print_handle(frame, handle, false); - print_hex_field(" Data", frame->data, frame->size); if (len > frame->size) { print_text(COLOR_ERROR, "invalid size"); return; } + print_hex_field(" Data", frame->data, len); + attr = get_attribute(frame, handle, false); if (!attr) return; @@ -3104,7 +3105,6 @@ static void att_signed_write_command(const struct l2cap_frame *frame) } print_write(frame, handle, frame->size - 12); - print_hex_field(" Data", frame->data, frame->size - 12); print_hex_field(" Signature", frame->data + frame->size - 12, 12); } -- 2.7.4