From 61a9b8d98e474ef2a4b200e887c9279f0230049a Mon Sep 17 00:00:00 2001 From: Oliver Hartkopp Date: Sun, 16 Nov 2014 22:14:02 +0100 Subject: [PATCH 1/1] isotpdump: add support for FF_DL escape sequence for 32 bit PDU length Signed-off-by: Oliver Hartkopp --- isotpdump.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/isotpdump.c b/isotpdump.c index b2de8c2..85be399 100644 --- a/isotpdump.c +++ b/isotpdump.c @@ -94,6 +94,7 @@ int main(int argc, char **argv) int color = 0; int timestamp = 0; int datidx = 0; + unsigned long fflen = 0; struct ifreq ifr; int ifindex; struct timeval tv, last_tv; @@ -295,9 +296,17 @@ int main(int argc, char **argv) break; case 0x10: - printf("[FF] ln: %-4d data:", - ((n_pci & 0x0F)<<8) + frame.data[ext+1] ); - datidx = ext+2; + fflen = ((n_pci & 0x0F)<<8) + frame.data[ext+1]; + if (fflen) + datidx = ext+2; + else { + fflen = (frame.data[ext+2]<<24) + + (frame.data[ext+3]<<16) + + (frame.data[ext+4]<<8) + + frame.data[ext+5]; + datidx = ext+6; + } + printf("[FF] ln: %-4lu data:", fflen); break; case 0x20: -- 2.39.2