From: Ola Martin Lykkja Date: Thu, 27 Jun 2013 11:28:10 +0000 (+0200) Subject: Improved quality, bug fixes, typos. Added test case X-Git-Tag: tcpdump-4.5.0~66^2 X-Git-Url: https://git.tcpdump.org/tcpdump/commitdiff_plain/0c78d433d90dc8368efea9cdf738523703d034b9 Improved quality, bug fixes, typos. Added test case --- diff --git a/ethertype.h b/ethertype.h index 484e01e1..a74c3a8f 100644 --- a/ethertype.h +++ b/ethertype.h @@ -187,7 +187,7 @@ #define ETHERTYPE_CALM_FAST 0x1111 /* ISO CALM FAST */ #endif #ifndef ETHERTYPE_GEONET_OLD -#define ETHERTYPE_GEONET_OLD 0x0707 /* ETSI GeoNetworking (before an 2013) */ +#define ETHERTYPE_GEONET_OLD 0x0707 /* ETSI GeoNetworking (before Jan 2013) */ #endif #ifndef ETHERTYPE_GEONET #define ETHERTYPE_GEONET 0x8947 /* ETSI GeoNetworking (Official IEEE registration from Jan 2013) */ diff --git a/print-calm-fast.c b/print-calm-fast.c index bd88bd81..ba9776ca 100644 --- a/print-calm-fast.c +++ b/print-calm-fast.c @@ -1,20 +1,18 @@ /* - * Copyright (c) 2013 - * lykkja@hotmail.com All rights reserved. + * Copyright (c) 2013 The TCPDUMP project * * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that: (1) source code distributions - * retain the above copyright notice and this paragraph in its entirety, (2) - * distributions including binary code include the above copyright notice and - * this paragraph in its entirety in the documentation or other materials - * provided with the distribution, and (3) all advertising materials mentioning - * features or use of this software display the following acknowledgement: - * ``This product includes software developed by Paolo Abeni.'' - * The name of author may not be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * modification, are permitted provided that: (1) source code + * distributions retain the above copyright notice and this paragraph + * in its entirety, and (2) distributions including binary code include + * the above copyright notice and this paragraph in its entirety in + * the documentation or other materials provided with the distribution. + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND + * WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT + * LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE. + * + * Original code by Ola Martin Lykkja (ola.lykkja@q-free.com) */ #ifdef HAVE_CONFIG_H @@ -31,31 +29,28 @@ #include "extract.h" #include "addrtoname.h" - -static const char * -hex48_to_string(const u_char *bp) -{ - int i; - static char sz[6*3+2]; - memset(sz, 0, sizeof(sz)); - for (i=0; i<6; i++) { - if (i) strcat(sz,":"); - sprintf(sz+strlen(sz), "%02x", bp[i]); - } - return sz; -} +/* + ISO 29281:2009 + Intelligent Transport Systems . Communications access for land mobiles (CALM) + CALM non-IP networking +*/ /* - * This is the top level routine of the printer. 'p' points + * This is the top level routine of the printer. 'bp' points * to the calm header of the packet. */ void calm_fast_print(netdissect_options *ndo, const u_char *eth, const u_char *bp, u_int length) { - printf("CALM FAST src:%s; ", hex48_to_string(eth+6)); + printf("CALM FAST src:%s; ", etheraddr_string(eth+6)); + + int srcNwref = bp[0]; + int dstNwref = bp[1]; + length -= 2; + bp += 2; - length -= 0; - bp += 0; + printf("SrcNwref:%d; ", srcNwref); + printf("DstNwref:%d; ", dstNwref); if (ndo->ndo_vflag) default_print(bp, length); diff --git a/print-geonet.c b/print-geonet.c index b9c60ddc..7cc06229 100644 --- a/print-geonet.c +++ b/print-geonet.c @@ -1,20 +1,18 @@ /* - * Copyright (c) 2013 - * lykkja@hotmail.com All rights reserved. + * Copyright (c) 2013 The TCPDUMP project * * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that: (1) source code distributions - * retain the above copyright notice and this paragraph in its entirety, (2) - * distributions including binary code include the above copyright notice and - * this paragraph in its entirety in the documentation or other materials - * provided with the distribution, and (3) all advertising materials mentioning - * features or use of this software display the following acknowledgement: - * ``This product includes software developed by Paolo Abeni.'' - * The name of author may not be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * modification, are permitted provided that: (1) source code + * distributions retain the above copyright notice and this paragraph + * in its entirety, and (2) distributions including binary code include + * the above copyright notice and this paragraph in its entirety in + * the documentation or other materials provided with the distribution. + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND + * WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT + * LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE. + * + * Original code by Ola Martin Lykkja (ola.lykkja@q-free.com) */ #ifdef HAVE_CONFIG_H @@ -43,44 +41,37 @@ Sub-part 1: Media-Independent Functionality */ -static const char * -hex48_to_string(const u_char *bp) -{ - int i; - static char sz[6*3+2]; - memset(sz, 0, sizeof(sz)); - for (i=0; i<6; i++) { - if (i) strcat(sz,":"); - sprintf(sz+strlen(sz), "%02x", bp[i]); - } - return sz; -} +static const struct tok msg_type_values[] = { + { 0, "CAM" }, + { 1, "DENM" }, + { 101, "TPEGM" }, + { 102, "TSPDM" }, + { 103, "VPM" }, + { 104, "SRM" }, + { 105, "SLAM" }, + { 106, "ecoCAM" }, + { 107, "ITM" }, + { 150, "SA" }, + { 0, NULL } +}; static void print_btp_body(const u_char *bp, u_int length) { + if (length <= 2) { + return; + } + // Assuming ItsDpuHeader int version = bp[0]; int msg_type = bp[1]; - const char *msg_type_str = "Unknown"; + const char *msg_type_str = tok2str(msg_type_values, "unknown (%u)", msg_type); - switch (msg_type) { - case 0: msg_type_str = "CAM"; break; - case 1: msg_type_str = "DENM"; break; - case 101: msg_type_str = "TPEGM"; break; - case 102: msg_type_str = "TSPDM"; break; - case 103: msg_type_str = "VPM"; break; - case 104: msg_type_str = "SRM"; break; - case 105: msg_type_str = "SLAM"; break; - case 106: msg_type_str = "ecoCAM"; break; - case 107: msg_type_str = "ITM"; break; - case 150: msg_type_str = "SA"; break; - } printf("; ItsPduHeader v:%d t:%d-%s", version, msg_type, msg_type_str); } static void -print_btp(const u_char *bp, u_int length) +print_btp(const u_char *bp) { u_int16_t dest = EXTRACT_16BITS(bp+0); u_int16_t src = EXTRACT_16BITS(bp+2); @@ -88,7 +79,7 @@ print_btp(const u_char *bp, u_int length) } static void -print_long_pos_vector(const char *type, const u_char *bp, u_int length) +print_long_pos_vector(const u_char *bp) { int i; u_int32_t lat, lon; @@ -114,7 +105,7 @@ print_long_pos_vector(const char *type, const u_char *bp, u_int length) void geonet_print(netdissect_options *ndo, const u_char *eth, const u_char *bp, u_int length) { - printf("GeoNet src:%s; ", hex48_to_string(eth+6)); + printf("GeoNet src:%s; ", etheraddr_string(eth+6)); if (length >= 36) { // Process Common Header @@ -168,7 +159,7 @@ geonet_print(netdissect_options *ndo, const u_char *eth, const u_char *bp, u_int printf("HT:%d-%d-%s ", hdr_type, hdr_subtype, hdr_type_txt); printf("HopLim:%d ", hop_limit); printf("Payload:%d ", payload_length); - print_long_pos_vector("Sender", bp + 8, 36-8); + print_long_pos_vector(bp + 8); // Skip Common Header length -= 36; @@ -229,7 +220,7 @@ geonet_print(netdissect_options *ndo, const u_char *eth, const u_char *bp, u_int break; case 1: case 2: /* BTP A/B */ - print_btp(bp, length); + print_btp(bp); length -= 4; bp += 4; print_btp_body(bp, length); diff --git a/tests/TESTLIST b/tests/TESTLIST index 53f993de..ede96e4a 100644 --- a/tests/TESTLIST +++ b/tests/TESTLIST @@ -121,3 +121,6 @@ mptcp-fclose mptcp-fclose.pcap mptcp-fclose.out -t # OpenFlow tests of10_p3295-vv of10_p3295.pcap of10_p3295-vv.out -t -vv + +# GeoNetworking and CALM FAST tests +geonet-calm-fast geonet_and_calm_fast.pcap geonet_and_calm_fast.out -t -vv -n diff --git a/tests/geonet_and_calm_fast.out b/tests/geonet_and_calm_fast.out new file mode 100644 index 00000000..eae996fd --- /dev/null +++ b/tests/geonet_and_calm_fast.out @@ -0,0 +1,169 @@ +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769562 lon:56597275 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770788 lon:56598784 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769562 lon:56597275 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770788 lon:56598784 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769562 lon:56597275 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770822 lon:56598670 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769562 lon:56597275 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770711 lon:56598670 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769562 lon:56597275 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770711 lon:56598670 +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:29 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:5000 Src:5000; ItsPduHeader v:0 t:0-CAM + 0x0000: 0000 013c f7d0 912d 0000 0019 8400 6bf4 ...<...-......k. + 0x0010: d607 abb5 6c80 09f6 00 ....l.... +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769429 lon:56597103 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770711 lon:56598670 +CALM FAST src:00:0c:42:69:68:be; SrcNwref:0; DstNwref:0; + 0x0000: 0000 01ac 8005 4455 3540 1c02 a2b3 0290 ......DU5@...... + 0x0010: 2035 6fa0 6041 a4b6 1737 4656 56c2 0547 .5o.`A...7FVV..G + 0x0020: 2617 6657 2736 52f5 a756 9646 5696 e646 &.fW'6R..V.FV..F + 0x0030: 5020 4047 063f 9300 0030 P.@G.?...0 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769429 lon:56597103 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770641 lon:56598655 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769429 lon:56597103 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770641 lon:56598655 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769429 lon:56597103 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770717 lon:56598526 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769415 lon:56597089 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770717 lon:56598526 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769415 lon:56597089 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770606 lon:56598526 +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:29 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:5000 Src:5000; ItsPduHeader v:0 t:0-CAM + 0x0000: 0000 013c f7d0 9ce7 0000 0019 8400 6bf4 ...<..........k. + 0x0010: d607 abb5 6c80 09f6 00 ....l.... +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769422 lon:56596946 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770606 lon:56598526 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769422 lon:56596946 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770620 lon:56598541 +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:29 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:5000 Src:5000; ItsPduHeader v:0 t:0-CAM + 0x0000: 0000 013c f7d0 a0d0 0000 0019 8400 6bf4 ...<..........k. + 0x0010: d607 abb5 6c80 09f6 00 ....l.... +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +CALM FAST src:00:0c:42:69:68:be; SrcNwref:0; DstNwref:0; + 0x0000: 0000 02dc 8005 4455 3540 1c02 0513 04f3 ......DU5@...... + 0x0010: 0380 2030 0ff8 4020 356f a060 a010 2300 ...0..@.5o.`..#. + 0x0020: a020 4512 4d10 e020 202c 9300 c020 402b ..E.M....,....@+ + 0x0030: 2fc1 5020 4188 be06 5300 6020 1000 2010 /.P.A...S.`..... + 0x0040: 0020 1000 2010 00a0 101a 1133 0000 2010 ...........3.... + 0x0050: 0020 1000 a010 2020 1000 2010 0040 0060 .............@.` +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769408 lon:56596932 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770514 lon:56598397 +CALM FAST src:00:0c:42:69:68:be; SrcNwref:0; DstNwref:0; + 0x0000: 0000 01ac 8005 4455 3540 1c02 a2b3 0290 ......DU5@...... + 0x0010: 2035 6fa0 6041 a4b6 1737 4656 56c2 0547 .5o.`A...7FVV..G + 0x0020: 2617 6657 2736 52f5 a756 9646 5696 e646 &.fW'6R..V.FV..F + 0x0030: 5020 4039 226f 5300 0030 P.@9"oS..0 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769408 lon:56596932 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770514 lon:56598397 +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:29 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:5000 Src:5000; ItsPduHeader v:0 t:0-CAM + 0x0000: 0000 013c f7d0 a4b9 0000 0019 8400 6bf4 ...<..........k. + 0x0010: d607 abb5 6c80 09f6 00 ....l.... +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769352 lon:56596932 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770514 lon:56598397 +CALM FAST src:00:0c:42:69:68:be; SrcNwref:0; DstNwref:0; + 0x0000: 0000 01ac 8005 4455 3540 1c02 a2b3 0290 ......DU5@...... + 0x0010: 2035 6fa0 6041 a4b6 1737 4656 56c2 0547 .5o.`A...7FVV..G + 0x0020: 2617 6657 2736 52f5 a756 9646 5696 e646 &.fW'6R..V.FV..F + 0x0030: 5020 4039 226f 5300 0030 P.@9"oS..0 +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:138 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:6103 Src:6103; ItsPduHeader v:0 t:106-ecoCAM + 0x0000: 006a 013c f7d0 a6aa 0000 0066 0026 013c .j.<.......f.&.< + 0x0010: f7d0 ba32 0080 0280 00cc 0407 d456 4c00 ...2.........VL. + 0x0020: 8000 9e7b e857 2100 9e7b e857 2100 00cc ...{.W!..{.W!... + 0x0030: 0407 d4ab cc00 8000 9e7b e85a ed00 9e7b .........{.Z...{ + 0x0040: e85a ed00 00cc 0407 d501 cc00 8000 9e7b .Z.............{ + 0x0050: e85e b900 9e7b e85e b900 00cc 0407 d557 .^...{.^.......W + 0x0060: 4c00 8000 9e7b e862 8500 9e7b e862 8500 L....{.b...{.b.. + 0x0070: 00cc 0407 d5ad 4c00 8000 9e7b e866 5100 ......L....{.fQ. + 0x0080: 9e7b e866 5100 .{.fQ. +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:29 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:5000 Src:5000; ItsPduHeader v:0 t:0-CAM + 0x0000: 0000 013c f7d0 a6ae 0000 0019 8400 6bf4 ...<..........k. + 0x0010: d607 abb5 6c80 09f6 00 ....l.... +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:236 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:6102 Src:6102; ItsPduHeader v:0 t:106-ecoCAM + 0x0000: 006a 013c f7d0 a6e1 0000 0066 fe7f 013c .j.<.......f...< + 0x0010: f7d0 ba69 0006 6000 b402 03e9 0004 4e34 ...i..`.......N4 + 0x0020: 4030 000f de81 770f 4602 03ea 0204 4e4a @0....w.F.....NJ + 0x0030: 044e 4a80 3000 0fde 85dc 0f20 0004 0203 .NJ.0........... + 0x0040: eb00 044e 5c40 3000 0fde 8947 0f44 0207 ...N\@0....G.D.. + 0x0050: d400 049c 9040 3000 0fde 80bb 8f44 0207 .....@0......D.. + 0x0060: d500 049c a440 3000 0fde 8232 8f44 0207 .....@0....2.D.. + 0x0070: d600 044e 9840 3000 0fde 8232 8f44 020b ...N.@0....2.D.. + 0x0080: bf00 04ea ec40 3000 0fde 83a9 8f46 020b .....@0......F.. + 0x0090: c002 04eb 0204 eb02 8030 000f de85 dc0f .........0...... + 0x00a0: 2000 0602 0bc1 0004 eb14 4030 000f de86 ..........@0.... + 0x00b0: 978f 4000 1402 0faa 0006 0139 4840 3000 ..@........9H@0. + 0x00c0: 0fde 86d6 0f44 020f ab00 0601 395c 4030 .....D......9\@0 + 0x00d0: 000f de8a 7f8f 4402 0fac 0006 0139 7040 ......D......9p@ + 0x00e0: 3000 0fde 8b3b 0f40 0....;.@ +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769352 lon:56596932 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770473 lon:56598412 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769345 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770473 lon:56598412 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +CALM FAST src:00:0c:42:69:68:be; SrcNwref:0; DstNwref:0; + 0x0000: 0000 02dc 8005 4455 3540 1c02 0513 04f3 ......DU5@...... + 0x0010: 0380 2030 0ff8 9020 356f a060 a010 2300 ...0....5o.`..#. + 0x0020: a020 4512 4d11 1020 200d e300 c020 402b ..E.M.........@+ + 0x0030: 2fc1 5020 4188 be06 5300 6020 1000 2010 /.P.A...S.`..... + 0x0040: 0020 1000 2010 00a0 101a 1133 0000 2010 ...........3.... + 0x0050: 0020 1000 a010 2020 1000 2010 0040 0060 .............@.` +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769345 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770528 lon:56598412 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769345 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770528 lon:56598412 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769345 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770473 lon:56598412 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770473 lon:56598412 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770486 lon:56598426 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770486 lon:56598426 +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:29 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:5000 Src:5000; ItsPduHeader v:0 t:0-CAM + 0x0000: 0000 013c f7d0 b651 0000 0019 8400 6bf4 ...<...Q......k. + 0x0010: d607 abb5 6c80 09f6 00 ....l.... +GeoNet src:00:0c:42:69:68:be; v:0 NH:1-BTP-A HT:5-1-TopoScopeBcast-MH HopLim:2 Payload:138 GN_ADDR:c0:cc:00:0c:42:69:68:be lat:514775183 lon:56605966; BTP Dst:6103 Src:6103; ItsPduHeader v:0 t:106-ecoCAM + 0x0000: 006a 013c f7d0 b650 0000 0066 002e 013c .j.<...P...f...< + 0x0010: f7d0 c9d8 0080 0280 00cc 0407 d456 4c00 .............VL. + 0x0020: 8000 9e7b e85e f400 9e7b e85e f400 00cc ...{.^...{.^.... + 0x0030: 0407 d4ab cc00 8000 9e7b e862 c000 9e7b .........{.b...{ + 0x0040: e862 c000 00cc 0407 d501 cc00 8000 9e7b .b.............{ + 0x0050: e866 8c00 9e7b e866 8c00 00cc 0407 d557 .f...{.f.......W + 0x0060: 4c00 8000 9e7b e86a 5800 9e7b e86a 5800 L....{.jX..{.jX. + 0x0070: 00cc 0407 d5ad 4c00 8000 9e7b e86e 2400 ......L....{.n$. + 0x0080: 9e7b e86e 2400 .{.n$. +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770486 lon:56598426 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770486 lon:56598426 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770592 lon:56598569 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 +GeoNet src:00:0c:42:6d:54:df; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:df lat:514770592 lon:56598569 +GeoNet src:00:0c:42:6d:54:db; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:db lat:0 lon:0 +GeoNet src:00:0c:42:6d:54:d5; v:0 NH:0-Any HT:1-0-Beacon HopLim:1 Payload:0 GN_ADDR:00:00:00:0c:42:6d:54:d5 lat:514769289 lon:56597075 diff --git a/tests/geonet_and_calm_fast.pcap b/tests/geonet_and_calm_fast.pcap index 62ab4252..eaaebe59 100644 Binary files a/tests/geonet_and_calm_fast.pcap and b/tests/geonet_and_calm_fast.pcap differ