summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--print-802_11.c6
-rw-r--r--print-ahcp.c34
-rw-r--r--print-aoe.c60
-rw-r--r--print-atm.c2
-rw-r--r--print-babel.c8
-rw-r--r--print-bfd.c4
-rw-r--r--print-bgp.c46
-rw-r--r--print-calm-fast.c3
-rw-r--r--print-cdp.c10
-rw-r--r--print-chdlc.c2
-rw-r--r--print-cnfp.c2
-rw-r--r--print-dccp.c4
-rw-r--r--print-domain.c6
-rw-r--r--print-dtp.c2
-rw-r--r--print-dvmrp.c18
-rw-r--r--print-forces.c8
-rw-r--r--print-fr.c8
-rw-r--r--print-geneve.c2
-rw-r--r--print-geonet.c8
-rw-r--r--print-gre.c26
-rw-r--r--print-icmp6.c2
-rw-r--r--print-igmp.c12
-rw-r--r--print-ip.c2
-rw-r--r--print-ip6.c4
-rw-r--r--print-isoclns.c8
-rw-r--r--print-juniper.c18
-rw-r--r--print-l2tp.c14
-rw-r--r--print-lisp.c8
-rw-r--r--print-llc.c2
-rw-r--r--print-loopback.c6
-rw-r--r--print-lwapp.c4
-rw-r--r--print-mobility.c2
-rw-r--r--print-msdp.c6
-rw-r--r--print-olsr.c4
-rw-r--r--print-openflow-1.0.c334
-rw-r--r--print-openflow.c8
-rw-r--r--print-ospf.c12
-rw-r--r--print-ospf6.c16
-rw-r--r--print-otv.c4
-rw-r--r--print-pgm.c4
-rw-r--r--print-pim.c28
-rw-r--r--print-ppp.c24
-rw-r--r--print-pppoe.c2
-rw-r--r--print-radius.c30
-rw-r--r--print-rrcp.c8
-rw-r--r--print-rsvp.c20
-rw-r--r--print-rx.c2
-rw-r--r--print-slow.c2
-rw-r--r--print-smb.c28
-rw-r--r--print-syslog.c8
-rw-r--r--print-tcp.c2
-rw-r--r--print-telnet.c3
-rw-r--r--print-udld.c2
-rw-r--r--print-vtp.c6
-rw-r--r--print-zeromq.c4
-rw-r--r--smbutil.c38
56 files changed, 469 insertions, 467 deletions
diff --git a/print-802_11.c b/print-802_11.c
index 65988706..67300ee6 100644
--- a/print-802_11.c
+++ b/print-802_11.c
@@ -1019,7 +1019,7 @@ parse_elements(netdissect_options *ndo,
while (length != 0) {
/* Make sure we at least have the element ID and length. */
- if (!ND_TTEST2(*(p + offset), 2))
+ if (!ND_TTEST_2(p + offset))
return 0;
if (length < 2)
return 0;
@@ -1447,7 +1447,7 @@ handle_auth(netdissect_options *ndo,
memset(&pbody, 0, sizeof(pbody));
- if (!ND_TTEST2(*p, 6))
+ if (!ND_TTEST_6(p))
return 0;
if (length < 6)
return 0;
@@ -1580,7 +1580,7 @@ static int
handle_action(netdissect_options *ndo,
const uint8_t *src, const u_char *p, u_int length)
{
- if (!ND_TTEST2(*p, 2))
+ if (!ND_TTEST_2(p))
return 0;
if (length < 2)
return 0;
diff --git a/print-ahcp.c b/print-ahcp.c
index 5fb049e5..f12e5cf9 100644
--- a/print-ahcp.c
+++ b/print-ahcp.c
@@ -106,7 +106,7 @@ ahcp_time_print(netdissect_options *ndo, const u_char *cp, const u_char *ep)
if (cp + 4 != ep)
goto invalid;
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
t = EXTRACT_BE_U_4(cp);
if (NULL == (tm = gmtime(&t)))
ND_PRINT((ndo, ": gmtime() error"));
@@ -130,7 +130,7 @@ ahcp_seconds_print(netdissect_options *ndo, const u_char *cp, const u_char *ep)
{
if (cp + 4 != ep)
goto invalid;
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ": %us", EXTRACT_BE_U_4(cp)));
return 0;
@@ -151,7 +151,7 @@ ahcp_ipv6_addresses_print(netdissect_options *ndo, const u_char *cp, const u_cha
while (cp < ep) {
if (cp + 16 > ep)
goto invalid;
- ND_TCHECK2(*cp, 16);
+ ND_TCHECK_16(cp);
ND_PRINT((ndo, "%s%s", sep, ip6addr_string(ndo, cp)));
cp += 16;
sep = ", ";
@@ -175,7 +175,7 @@ ahcp_ipv4_addresses_print(netdissect_options *ndo, const u_char *cp, const u_cha
while (cp < ep) {
if (cp + 4 > ep)
goto invalid;
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "%s%s", sep, ipaddr_string(ndo, cp)));
cp += 4;
sep = ", ";
@@ -223,7 +223,7 @@ ahcp_ipv4_prefixes_print(netdissect_options *ndo, const u_char *cp, const u_char
while (cp < ep) {
if (cp + 5 > ep)
goto invalid;
- ND_TCHECK2(*cp, 5);
+ ND_TCHECK_5(cp);
ND_PRINT((ndo, "%s%s/%u", sep, ipaddr_string(ndo, cp), *(cp + 4)));
cp += 5;
sep = ", ";
@@ -265,7 +265,7 @@ ahcp1_options_print(netdissect_options *ndo, const u_char *cp, const u_char *ep)
while (cp < ep) {
/* Option no */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
option_no = *cp;
cp += 1;
ND_PRINT((ndo, "\n\t %s", tok2str(ahcp1_opt_str, "Unknown-%u", option_no)));
@@ -274,7 +274,7 @@ ahcp1_options_print(netdissect_options *ndo, const u_char *cp, const u_char *ep)
/* Length */
if (cp + 1 > ep)
goto invalid;
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
option_len = *cp;
cp += 1;
if (cp + option_len > ep)
@@ -308,15 +308,15 @@ ahcp1_body_print(netdissect_options *ndo, const u_char *cp, const u_char *ep)
if (cp + AHCP1_BODY_MIN_LEN > ep)
goto invalid;
/* Type */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
type = *cp;
cp += 1;
/* MBZ */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
mbz = *cp;
cp += 1;
/* Length */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
body_len = EXTRACT_BE_U_2(cp);
cp += 2;
@@ -354,12 +354,12 @@ ahcp_print(netdissect_options *ndo, const u_char *cp, const u_int len)
if (len < 2)
goto invalid;
/* Magic */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
if (*cp != AHCP_MAGIC_NUMBER)
goto invalid;
cp += 1;
/* Version */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
version = *cp;
cp += 1;
switch (version) {
@@ -372,23 +372,23 @@ ahcp_print(netdissect_options *ndo, const u_char *cp, const u_int len)
cp += AHCP1_HEADER_FIX_LEN - 2;
} else {
/* Hopcount */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\tHopcount %u", *cp));
cp += 1;
/* Original Hopcount */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", Original Hopcount %u", *cp));
cp += 1;
/* Nonce */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", Nonce 0x%08x", EXTRACT_BE_U_4(cp)));
cp += 4;
/* Source Id */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", Source Id %s", linkaddr_string(ndo, cp, 0, 8)));
cp += 8;
/* Destination Id */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", Destination Id %s", linkaddr_string(ndo, cp, 0, 8)));
cp += 8;
}
diff --git a/print-aoe.c b/print-aoe.c
index 2c97bfd6..dfc5e315 100644
--- a/print-aoe.c
+++ b/print-aoe.c
@@ -148,47 +148,47 @@ aoev1_issue_print(netdissect_options *ndo,
if (len < AOEV1_ISSUE_ARG_LEN)
goto invalid;
/* AFlags */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\tAFlags: [%s]", bittok2str(aoev1_aflag_str, "none", EXTRACT_U_1(cp))));
cp += 1;
/* Err/Feature */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", Err/Feature: %u", *cp));
cp += 1;
/* Sector Count (not correlated with the length) */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", Sector Count: %u", *cp));
cp += 1;
/* Cmd/Status */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", Cmd/Status: %u", *cp));
cp += 1;
/* lba0 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\tlba0: %u", *cp));
cp += 1;
/* lba1 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", lba1: %u", *cp));
cp += 1;
/* lba2 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", lba2: %u", *cp));
cp += 1;
/* lba3 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", lba3: %u", *cp));
cp += 1;
/* lba4 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", lba4: %u", *cp));
cp += 1;
/* lba5 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", lba5: %u", *cp));
cp += 1;
/* Reserved */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* Data */
if (len > AOEV1_ISSUE_ARG_LEN)
@@ -213,24 +213,24 @@ aoev1_query_print(netdissect_options *ndo,
if (len < AOEV1_QUERY_ARG_LEN)
goto invalid;
/* Buffer Count */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\tBuffer Count: %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* Firmware Version */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", Firmware Version: %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* Sector Count */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", Sector Count: %u", *cp));
cp += 1;
/* AoE/CCmd */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", AoE: %u, CCmd: %s", (EXTRACT_U_1(cp) & 0xF0) >> 4,
tok2str(aoev1_ccmd_str, "Unknown (0x02x)", EXTRACT_U_1(cp) & 0x0F)));
cp += 1;
/* Config String Length */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cslen = EXTRACT_BE_U_2(cp);
cp += 2;
if (cslen > AOEV1_MAX_CONFSTR_LEN || AOEV1_QUERY_ARG_LEN + cslen > len)
@@ -262,18 +262,18 @@ aoev1_mac_print(netdissect_options *ndo,
if (len < AOEV1_MAC_ARG_LEN)
goto invalid;
/* Reserved */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* MCmd */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\tMCmd: %s", tok2str(aoev1_mcmd_str, "Unknown (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* MError */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", MError: %s", tok2str(aoev1_merror_str, "Unknown (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* Dir Count */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
dircount = *cp;
cp += 1;
ND_PRINT((ndo, ", Dir Count: %u", dircount));
@@ -282,10 +282,10 @@ aoev1_mac_print(netdissect_options *ndo,
/* directives */
for (i = 0; i < dircount; i++) {
/* Reserved */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* DCmd */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\t DCmd: %s", tok2str(aoev1_dcmd_str, "Unknown (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* Ethernet Address */
@@ -313,11 +313,11 @@ aoev1_reserve_print(netdissect_options *ndo,
if (len < AOEV1_RESERVE_ARG_LEN || (len - AOEV1_RESERVE_ARG_LEN) % ETHER_ADDR_LEN)
goto invalid;
/* RCmd */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\tRCmd: %s", tok2str(aoev1_rcmd_str, "Unknown (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* NMacs (correlated with the length) */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
nmacs = *cp;
cp += 1;
ND_PRINT((ndo, ", NMacs: %u", nmacs));
@@ -356,25 +356,25 @@ aoev1_print(netdissect_options *ndo,
if (! ndo->ndo_vflag)
return;
/* Error */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
if (flags & AOEV1_FLAG_E)
ND_PRINT((ndo, "\n\tError: %s", tok2str(aoev1_errcode_str, "Invalid (%u)", EXTRACT_U_1(cp))));
cp += 1;
/* Major */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\tMajor: 0x%04x", EXTRACT_BE_U_2(cp)));
cp += 2;
/* Minor */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", Minor: 0x%02x", *cp));
cp += 1;
/* Command */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
command = *cp;
cp += 1;
ND_PRINT((ndo, ", Command: %s", tok2str(cmdcode_str, "Unknown (0x%02x)", command)));
/* Tag */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", Tag: 0x%08x", EXTRACT_BE_U_4(cp)));
cp += 4;
/* Arg */
@@ -408,7 +408,7 @@ aoe_print(netdissect_options *ndo,
if (len < 1)
goto invalid;
/* Ver/Flags */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ver = (EXTRACT_U_1(cp) & 0xF0) >> 4;
/* Don't advance cp yet: low order 4 bits are version-specific. */
ND_PRINT((ndo, ", Ver %u", ver));
diff --git a/print-atm.c b/print-atm.c
index e2218c42..03c39ff0 100644
--- a/print-atm.c
+++ b/print-atm.c
@@ -538,7 +538,7 @@ oam_print (netdissect_options *ndo,
}
/* crc10 checksum verification */
- ND_TCHECK2(*(p + OAM_CELLTYPE_FUNCTYPE_LEN + OAM_FUNCTION_SPECIFIC_LEN), 2);
+ ND_TCHECK_2(p + OAM_CELLTYPE_FUNCTYPE_LEN + OAM_FUNCTION_SPECIFIC_LEN);
cksum = EXTRACT_BE_U_2(p + OAM_CELLTYPE_FUNCTYPE_LEN + OAM_FUNCTION_SPECIFIC_LEN)
& OAM_CRC10_MASK;
cksum_shouldbe = verify_crc10_cksum(0, p, OAM_PAYLOAD_LEN);
diff --git a/print-babel.c b/print-babel.c
index 3a694421..3c807174 100644
--- a/print-babel.c
+++ b/print-babel.c
@@ -51,7 +51,7 @@ babel_print(netdissect_options *ndo,
{
ND_PRINT((ndo, "babel"));
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
if(cp[0] != 42) {
ND_PRINT((ndo, " invalid header"));
@@ -350,7 +350,7 @@ babel_print_v2(netdissect_options *ndo,
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF, 0xFF, 0, 0, 0, 0 };
u_char v6_prefix[16] = {0};
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
if (length < 4)
goto invalid;
bodylen = EXTRACT_BE_U_2(cp + 2);
@@ -364,14 +364,14 @@ babel_print_v2(netdissect_options *ndo,
message = cp + 4 + i;
- ND_TCHECK2(*message, 1);
+ ND_TCHECK_1(message);
if((type = message[0]) == MESSAGE_PAD1) {
ND_PRINT((ndo, ndo->ndo_vflag ? "\n\tPad 1" : " pad1"));
i += 1;
continue;
}
- ND_TCHECK2(*message, 2);
+ ND_TCHECK_2(message);
ICHECK(i, 2);
len = message[1];
diff --git a/print-bfd.c b/print-bfd.c
index b2cfd61b..74030d03 100644
--- a/print-bfd.c
+++ b/print-bfd.c
@@ -242,7 +242,7 @@ auth_print(netdissect_options *ndo, register const u_char *pptr)
break;
}
pptr += 2;
- ND_TCHECK2(*pptr, 4);
+ ND_TCHECK_4(pptr);
ND_PRINT((ndo, ", Sequence Number: 0x%08x", EXTRACT_BE_U_4(pptr)));
pptr += 4;
ND_TCHECK2(*pptr, AUTH_MD5_HASH_LEN);
@@ -273,7 +273,7 @@ auth_print(netdissect_options *ndo, register const u_char *pptr)
break;
}
pptr += 2;
- ND_TCHECK2(*pptr, 4);
+ ND_TCHECK_4(pptr);
ND_PRINT((ndo, ", Sequence Number: 0x%08x", EXTRACT_BE_U_4(pptr)));
pptr += 4;
ND_TCHECK2(*pptr, AUTH_SHA1_HASH_LEN);
diff --git a/print-bgp.c b/print-bgp.c
index af7bef48..c225f6eb 100644
--- a/print-bgp.c
+++ b/print-bgp.c
@@ -572,7 +572,7 @@ decode_labeled_prefix4(netdissect_options *ndo,
u_int plen, plenbytes;
/* prefix length and label = 4 bytes */
- ND_TCHECK2(pptr[0], 4);
+ ND_TCHECK_4(pptr);
ITEMCHECK(4);
plen = pptr[0]; /* get prefix length */
@@ -881,7 +881,7 @@ decode_mdt_vpn_nlri(netdissect_options *ndo,
pptr++;
/* RD */
- ND_TCHECK2(pptr[0], 8);
+ ND_TCHECK_8(pptr);
rd = pptr;
pptr+=8;
@@ -929,7 +929,7 @@ decode_multicast_vpn(netdissect_options *ndo,
uint8_t route_type, route_length, addr_length, sg_length;
u_int offset;
- ND_TCHECK2(pptr[0], 2);
+ ND_TCHECK_2(pptr);
route_type = EXTRACT_U_1(pptr);
pptr++;
route_length = EXTRACT_U_1(pptr);
@@ -1076,7 +1076,7 @@ decode_labeled_vpn_l2(netdissect_options *ndo,
while (tlen>0) {
if (tlen < 3)
return -1;
- ND_TCHECK2(pptr[0], 3);
+ ND_TCHECK_3(pptr);
tlv_type=EXTRACT_U_1(pptr);
pptr++;
tlv_len=EXTRACT_BE_U_2(pptr);
@@ -1167,7 +1167,7 @@ decode_labeled_prefix6(netdissect_options *ndo,
u_int plen, plenbytes;
/* prefix length and label = 4 bytes */
- ND_TCHECK2(pptr[0], 4);
+ ND_TCHECK_4(pptr);
ITEMCHECK(4);
plen = pptr[0]; /* get prefix length */
@@ -1450,7 +1450,7 @@ bgp_attr_print(netdissect_options *ndo,
if (len != 4)
ND_PRINT((ndo, "invalid len"));
else {
- ND_TCHECK2(tptr[0], 4);
+ ND_TCHECK_4(tptr);
ND_PRINT((ndo, "%s", ipaddr_string(ndo, tptr)));
}
break;
@@ -1493,7 +1493,7 @@ bgp_attr_print(netdissect_options *ndo,
ND_PRINT((ndo, "invalid len"));
break;
}
- ND_TCHECK2(tptr[0], 8);
+ ND_TCHECK_8(tptr);
ND_PRINT((ndo, " AS #%s, origin %s",
as_printf(ndo, astostr, sizeof(astostr), EXTRACT_BE_U_4(tptr)),
ipaddr_string(ndo, tptr + 4)));
@@ -1533,7 +1533,7 @@ bgp_attr_print(netdissect_options *ndo,
ND_PRINT((ndo, "invalid len"));
break;
}
- ND_TCHECK2(tptr[0], 4);
+ ND_TCHECK_4(tptr);
ND_PRINT((ndo, "%s",ipaddr_string(ndo, tptr)));
break;
case BGPTYPE_CLUSTER_LIST:
@@ -1542,7 +1542,7 @@ bgp_attr_print(netdissect_options *ndo,
break;
}
while (tlen>0) {
- ND_TCHECK2(tptr[0], 4);
+ ND_TCHECK_4(tptr);
ND_PRINT((ndo, "%s%s",
ipaddr_string(ndo, tptr),
(tlen>4) ? ", " : ""));
@@ -1551,7 +1551,7 @@ bgp_attr_print(netdissect_options *ndo,
}
break;
case BGPTYPE_MP_REACH_NLRI:
- ND_TCHECK2(tptr[0], 3);
+ ND_TCHECK_3(tptr);
af = EXTRACT_BE_U_2(tptr);
safi = EXTRACT_U_1(tptr + 2);
@@ -2075,7 +2075,7 @@ bgp_attr_print(netdissect_options *ndo,
extd_comm,
bittok2str(bgp_extd_comm_flag_values, "none", extd_comm)));
- ND_TCHECK2(*(tptr+2), 6);
+ ND_TCHECK_6(tptr + 2);
switch(extd_comm) {
case BGP_EXT_COM_RT_0:
case BGP_EXT_COM_RO_0:
@@ -2134,7 +2134,7 @@ bgp_attr_print(netdissect_options *ndo,
ND_PRINT((ndo, ": AS %u", EXTRACT_BE_U_2(tptr + 2)));
break;
default:
- ND_TCHECK2(*tptr,8);
+ ND_TCHECK_8(tptr);
print_unknown_data(ndo, tptr, "\n\t ", 8);
break;
}
@@ -2147,7 +2147,7 @@ bgp_attr_print(netdissect_options *ndo,
{
uint8_t tunnel_type, flags;
- ND_TCHECK2(tptr[0], 5);
+ ND_TCHECK_5(tptr);
flags = EXTRACT_U_1(tptr);
tunnel_type = EXTRACT_U_1(tptr + 1);
tlen = len;
@@ -2164,32 +2164,32 @@ bgp_attr_print(netdissect_options *ndo,
switch (tunnel_type) {
case BGP_PMSI_TUNNEL_PIM_SM: /* fall through */
case BGP_PMSI_TUNNEL_PIM_BIDIR:
- ND_TCHECK2(tptr[0], 8);
+ ND_TCHECK_8(tptr);
ND_PRINT((ndo, "\n\t Sender %s, P-Group %s",
ipaddr_string(ndo, tptr),
ipaddr_string(ndo, tptr+4)));
break;
case BGP_PMSI_TUNNEL_PIM_SSM:
- ND_TCHECK2(tptr[0], 8);
+ ND_TCHECK_8(tptr);
ND_PRINT((ndo, "\n\t Root-Node %s, P-Group %s",
ipaddr_string(ndo, tptr),
ipaddr_string(ndo, tptr+4)));
break;
case BGP_PMSI_TUNNEL_INGRESS:
- ND_TCHECK2(tptr[0], 4);
+ ND_TCHECK_4(tptr);
ND_PRINT((ndo, "\n\t Tunnel-Endpoint %s",
ipaddr_string(ndo, tptr)));
break;
case BGP_PMSI_TUNNEL_LDP_P2MP: /* fall through */
case BGP_PMSI_TUNNEL_LDP_MP2MP:
- ND_TCHECK2(tptr[0], 8);
+ ND_TCHECK_8(tptr);
ND_PRINT((ndo, "\n\t Root-Node %s, LSP-ID 0x%08x",
ipaddr_string(ndo, tptr),
EXTRACT_BE_U_4(tptr + 4)));
break;
case BGP_PMSI_TUNNEL_RSVP_P2MP:
- ND_TCHECK2(tptr[0], 8);
+ ND_TCHECK_8(tptr);
ND_PRINT((ndo, "\n\t Extended-Tunnel-ID %s, P2MP-ID 0x%08x",
ipaddr_string(ndo, tptr),
EXTRACT_BE_U_4(tptr + 4)));
@@ -2210,7 +2210,7 @@ bgp_attr_print(netdissect_options *ndo,
while (tlen >= 3) {
- ND_TCHECK2(tptr[0], 3);
+ ND_TCHECK_3(tptr);
type = EXTRACT_U_1(tptr);
length = EXTRACT_BE_U_2(tptr + 1);
@@ -2262,7 +2262,7 @@ bgp_attr_print(netdissect_options *ndo,
while (len) {
u_int aflags, alenlen, alen;
- ND_TCHECK2(tptr[0], 2);
+ ND_TCHECK_2(tptr);
if (len < 2)
goto trunc;
aflags = EXTRACT_U_1(tptr);
@@ -2555,7 +2555,7 @@ bgp_update_print(netdissect_options *ndo,
while (len) {
int aflags, atype, alenlen, alen;
- ND_TCHECK2(p[0], 2);
+ ND_TCHECK_2(p);
if (len < 2)
goto trunc;
if (length < 2)
@@ -2700,7 +2700,7 @@ bgp_notification_print(netdissect_options *ndo,
*/
if(bgpn.bgpn_minor == BGP_NOTIFY_MINOR_CEASE_MAXPRFX && length >= BGP_NOTIFICATION_SIZE + 7) {
tptr = dat + BGP_NOTIFICATION_SIZE;
- ND_TCHECK2(*tptr, 7);
+ ND_TCHECK_7(tptr);
ND_PRINT((ndo, ", AFI %s (%u), SAFI %s (%u), Max Prefixes: %u",
tok2str(af_values, "Unknown",
EXTRACT_BE_U_2(tptr)),
@@ -2854,7 +2854,7 @@ bgp_print(netdissect_options *ndo,
p = dat;
start = p;
while (p < ep) {
- if (!ND_TTEST2(p[0], 1))
+ if (!ND_TTEST_1(p))
break;
if (p[0] != 0xff) {
p++;
diff --git a/print-calm-fast.c b/print-calm-fast.c
index c9be008c..16b416a3 100644
--- a/print-calm-fast.c
+++ b/print-calm-fast.c
@@ -24,6 +24,7 @@
#include <netdissect-stdinc.h>
#include "netdissect.h"
+#include "extract.h"
#include "addrtoname.h"
/*
@@ -42,7 +43,7 @@ calm_fast_print(netdissect_options *ndo, const u_char *bp, u_int length, const s
int srcNwref;
int dstNwref;
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
if (length < 2)
goto trunc;
srcNwref = bp[0];
diff --git a/print-cdp.c b/print-cdp.c
index 1db0675d..dc75f8eb 100644
--- a/print-cdp.c
+++ b/print-cdp.c
@@ -285,21 +285,21 @@ cdp_print_addr(netdissect_options *ndo,
0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0x86, 0xdd
};
- ND_TCHECK2(*p, 4);
+ ND_TCHECK_4(p);
if (p + 4 > endp)
goto trunc;
num = EXTRACT_BE_U_4(p);
p += 4;
while (p < endp && num >= 0) {
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
if (p + 2 > endp)
goto trunc;
pt = p[0]; /* type of "protocol" field */
pl = p[1]; /* length of "protocol" field */
p += 2;
- ND_TCHECK2(p[pl], 2);
+ ND_TCHECK_2(p + pl);
if (p + pl + 2 > endp)
goto trunc;
al = EXTRACT_BE_U_2(p + pl); /* address length */
@@ -312,7 +312,7 @@ cdp_print_addr(netdissect_options *ndo,
*/
p += 3;
- ND_TCHECK2(*p, 4);
+ ND_TCHECK_4(p);
if (p + 4 > endp)
goto trunc;
ND_PRINT((ndo, "IPv4 (%u) %s", num, ipaddr_string(ndo, p)));
@@ -346,7 +346,7 @@ cdp_print_addr(netdissect_options *ndo,
ND_PRINT((ndo, " %02x", EXTRACT_U_1(p)));
p++;
}
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
if (p + 2 > endp)
goto trunc;
ND_PRINT((ndo, ", al=%d, a=", al));
diff --git a/print-chdlc.c b/print-chdlc.c
index a9af8924..47a7b165 100644
--- a/print-chdlc.c
+++ b/print-chdlc.c
@@ -177,7 +177,7 @@ chdlc_slarp_print(netdissect_options *ndo, const u_char *cp, u_int length)
if (length >= SLARP_MAX_LEN) { /* uptime-stamp is optional */
cp += SLARP_MIN_LEN;
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
sec = EXTRACT_BE_U_4(cp) / 1000;
min = sec / 60; sec -= min * 60;
hrs = min / 60; min -= hrs * 60;
diff --git a/print-cnfp.c b/print-cnfp.c
index 73570d95..162b1f9f 100644
--- a/print-cnfp.c
+++ b/print-cnfp.c
@@ -446,7 +446,7 @@ cnfp_print(netdissect_options *ndo, const u_char *cp)
/*
* First 2 bytes are the version number.
*/
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ver = EXTRACT_BE_U_2(cp);
switch (ver) {
diff --git a/print-dccp.c b/print-dccp.c
index 0d58d439..e351aeb8 100644
--- a/print-dccp.c
+++ b/print-dccp.c
@@ -245,10 +245,10 @@ static void dccp_print_ack_no(netdissect_options *ndo, const u_char *bp)
uint64_t ackno;
if (DCCPH_X(dh) != 0) {
- ND_TCHECK2(*ackp, 8);
+ ND_TCHECK_8(ackp);
ackno = EXTRACT_BE_U_6(ackp + 2);
} else {
- ND_TCHECK2(*ackp, 4);
+ ND_TCHECK_4(ackp);
ackno = EXTRACT_BE_U_3(ackp + 1);
}
diff --git a/print-domain.c b/print-domain.c
index 95301a9f..ee39c436 100644
--- a/print-domain.c
+++ b/print-domain.c
@@ -338,7 +338,7 @@ ns_qprint(netdissect_options *ndo,
cp = ns_nskip(ndo, cp);
- if (cp == NULL || !ND_TTEST2(*cp, 4))
+ if (cp == NULL || !ND_TTEST_4(cp))
return(NULL);
/* print the qtype */
@@ -467,7 +467,7 @@ ns_rprint(netdissect_options *ndo,
break;
case T_MX:
ND_PRINT((ndo, " "));
- if (!ND_TTEST2(*cp, 2))
+ if (!ND_TTEST_2(cp))
return(NULL);
if (ns_nprint(ndo, cp + 2, bp) == NULL)
return(NULL);
@@ -486,7 +486,7 @@ ns_rprint(netdissect_options *ndo,
case T_SRV:
ND_PRINT((ndo, " "));
- if (!ND_TTEST2(*cp, 6))
+ if (!ND_TTEST_6(cp))
return(NULL);
if (ns_nprint(ndo, cp + 6, bp) == NULL)
return(NULL);
diff --git a/print-dtp.c b/print-dtp.c
index e0b670fa..cd7a1845 100644
--- a/print-dtp.c
+++ b/print-dtp.c
@@ -71,7 +71,7 @@ dtp_print (netdissect_options *ndo, const u_char *pptr, u_int length)
while (tptr < (pptr+length)) {
- ND_TCHECK2(*tptr, 4);
+ ND_TCHECK_4(tptr);
type = EXTRACT_BE_U_2(tptr);
len = EXTRACT_BE_U_2(tptr + 2);
/* XXX: should not be but sometimes it is, see the test captures */
diff --git a/print-dvmrp.c b/print-dvmrp.c
index 9aa405d8..4c54f53c 100644
--- a/print-dvmrp.c
+++ b/print-dvmrp.c
@@ -122,7 +122,7 @@ dvmrp_print(netdissect_options *ndo,
* extract version from IGMP group address field
*/
bp -= 4;
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
major_version = EXTRACT_U_1(bp + 3);
minor_version = EXTRACT_U_1(bp + 2);
bp += 4;
@@ -174,7 +174,7 @@ print_report(netdissect_options *ndo,
ND_PRINT((ndo, " [|]"));
return (0);
}
- ND_TCHECK2(bp[0], 3);
+ ND_TCHECK_3(bp);
mask = (uint32_t)0xff << 24 | bp[0] << 16 | bp[1] << 8 | bp[2];
width = 1;
if (bp[0])
@@ -227,7 +227,7 @@ print_probe(netdissect_options *ndo,
{
register uint32_t genid;
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
if ((len < 4) || ((bp + 4) > ep)) {
/* { (ctags) */
ND_PRINT((ndo, " [|}"));
@@ -242,7 +242,7 @@ print_probe(netdissect_options *ndo,
return (0);
while ((len > 0) && (bp < ep)) {
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
ND_PRINT((ndo, "\n\tneighbor %s", ipaddr_string(ndo, bp)));
bp += 4; len -= 4;
}
@@ -262,7 +262,7 @@ print_neighbors(netdissect_options *ndo,
register int ncount;
while (len > 0 && bp < ep) {
- ND_TCHECK2(bp[0], 7);
+ ND_TCHECK_7(bp);
laddr = bp;
bp += 4;
metric = EXTRACT_U_1(bp);
@@ -273,7 +273,7 @@ print_neighbors(netdissect_options *ndo,
bp++;
len -= 7;
while (--ncount >= 0) {
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
ND_PRINT((ndo, " [%s ->", ipaddr_string(ndo, laddr)));
ND_PRINT((ndo, " %s, (%d/%d)]",
ipaddr_string(ndo, bp), metric, thresh));
@@ -299,7 +299,7 @@ print_neighbors2(netdissect_options *ndo,
ND_PRINT((ndo, " (v %u.%u):", major_version, minor_version));
while (len > 0 && bp < ep) {
- ND_TCHECK2(bp[0], 8);
+ ND_TCHECK_8(bp);
laddr = bp;
bp += 4;
metric = EXTRACT_U_1(bp);
@@ -357,7 +357,7 @@ static int
print_graft(netdissect_options *ndo,
register const u_char *bp)
{
- ND_TCHECK2(bp[0], 8);
+ ND_TCHECK_8(bp);
ND_PRINT((ndo, " src %s grp %s", ipaddr_string(ndo, bp), ipaddr_string(ndo, bp + 4)));
return (0);
trunc:
@@ -368,7 +368,7 @@ static int
print_graft_ack(netdissect_options *ndo,
register const u_char *bp)
{
- ND_TCHECK2(bp[0], 8);
+ ND_TCHECK_8(bp);
ND_PRINT((ndo, " src %s grp %s", ipaddr_string(ndo, bp), ipaddr_string(ndo, bp + 4)));
return (0);
trunc:
diff --git a/print-forces.c b/print-forces.c
index c5d2e035..f3ca76a3 100644
--- a/print-forces.c
+++ b/print-forces.c
@@ -843,7 +843,7 @@ pdatacnt_print(netdissect_options *ndo,
ND_PRINT((ndo, "%sTABLE APPEND\n", ib));
}
for (i = 0; i < IDcnt; i++) {
- ND_TCHECK2(*pptr, 4);
+ ND_TCHECK_4(pptr);
if (len < 4)
goto trunc;
id = EXTRACT_BE_U_4(pptr);
@@ -1228,7 +1228,7 @@ asttlv_print(netdissect_options *ndo,
ND_PRINT((ndo, "illegal ASTresult-TLV: %d bytes!\n", dlen));
return -1;
}
- ND_TCHECK2(*pptr, 4);
+ ND_TCHECK_4(pptr);
rescode = EXTRACT_BE_U_4(pptr);
if (rescode > ASTMCD) {
ND_PRINT((ndo, "illegal ASTresult result code: %d!\n", rescode));
@@ -1286,7 +1286,7 @@ asrtlv_print(netdissect_options *ndo,
ND_PRINT((ndo, "illegal ASRresult-TLV: %d bytes!\n", dlen));
return -1;
}
- ND_TCHECK2(*pptr, 4);
+ ND_TCHECK_4(pptr);
rescode = EXTRACT_BE_U_4(pptr);
if (rescode > ASRMCD) {
@@ -1706,7 +1706,7 @@ forces_print(netdissect_options *ndo,
goto error;
}
- ND_TCHECK2(*(pptr + 20), 4);
+ ND_TCHECK_4(pptr + 20);
flg_raw = EXTRACT_BE_U_4(pptr + 20);
if (ndo->ndo_vflag >= 1) {
ND_PRINT((ndo, "\n\tForCES Version %d len %uB flags 0x%08x ",
diff --git a/print-fr.c b/print-fr.c
index ae08ef04..94587ac0 100644
--- a/print-fr.c
+++ b/print-fr.c
@@ -222,7 +222,7 @@ fr_if_print(netdissect_options *ndo,
register u_int length = h->len;
register u_int caplen = h->caplen;
- ND_TCHECK2(*p, 4); /* minimum frame header length */
+ ND_TCHECK_4(p); /* minimum frame header length */
if ((length = fr_print(ndo, p, length)) == 0)
return (0);
@@ -378,7 +378,7 @@ mfr_if_print(netdissect_options *ndo,
register u_int length = h->len;
register u_int caplen = h->caplen;
- ND_TCHECK2(*p, 2); /* minimum frame header length */
+ ND_TCHECK_2(p); /* minimum frame header length */
if ((length = mfr_print(ndo, p, length)) == 0)
return (0);
@@ -456,7 +456,7 @@ mfr_print(netdissect_options *ndo,
* +----+----+----+----+----+----+----+----+
*/
- ND_TCHECK2(*p, 4); /* minimum frame header length */
+ ND_TCHECK_4(p); /* minimum frame header length */
if ((EXTRACT_U_1(p) & MFR_BEC_MASK) == MFR_CTRL_FRAME && EXTRACT_U_1(p + 1) == 0) {
ND_PRINT((ndo, "FRF.16 Control, Flags [%s], %s, length %u",
@@ -602,7 +602,7 @@ frf15_print(netdissect_options *ndo,
if (length < 2)
goto trunc;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
flags = EXTRACT_U_1(p)&MFR_BEC_MASK;
sequence_num = (EXTRACT_U_1(p)&0x1e)<<7 | EXTRACT_U_1(p + 1);
diff --git a/print-geneve.c b/print-geneve.c
index 140a722b..c8d55d88 100644
--- a/print-geneve.c
+++ b/print-geneve.c
@@ -155,7 +155,7 @@ geneve_print(netdissect_options *ndo, const u_char *bp, u_int len)
ND_PRINT((ndo, "Geneve"));
- ND_TCHECK2(*bp, 8);
+ ND_TCHECK_8(bp);
ver_opt = EXTRACT_U_1(bp);
bp += 1;
diff --git a/print-geonet.c b/print-geonet.c
index 1e98fc5f..e40c6511 100644
--- a/print-geonet.c
+++ b/print-geonet.c
@@ -90,7 +90,7 @@ print_long_pos_vector(netdissect_options *ndo,
return (-1);
ND_PRINT((ndo, "GN_ADDR:%s ", linkaddr_string (ndo, bp, 0, GEONET_ADDR_LEN)));
- if (!ND_TTEST2(*(bp+12), 8))
+ if (!ND_TTEST_8(bp + 12))
return (-1);
lat = EXTRACT_BE_U_4(bp + 12);
ND_PRINT((ndo, "lat:%d ", lat));
@@ -127,7 +127,7 @@ geonet_print(netdissect_options *ndo, const u_char *bp, u_int length,
if (length < 36)
goto invalid;
- ND_TCHECK2(*bp, 8);
+ ND_TCHECK_8(bp);
version = bp[0] >> 4;
next_hdr = bp[0] & 0x0f;
hdr_type = bp[1] >> 4;
@@ -242,7 +242,7 @@ geonet_print(netdissect_options *ndo, const u_char *bp, u_int length,
case 2: /* BTP A/B */
if (length < 4)
goto invalid;
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
print_btp(ndo, bp);
length -= 4;
bp += 4;
@@ -254,7 +254,7 @@ geonet_print(netdissect_options *ndo, const u_char *bp, u_int length,
* or was that just not
* reporting genuine errors?
*/
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
print_btp_body(ndo, bp);
}
break;
diff --git a/print-gre.c b/print-gre.c
index 64768d6a..672ed956 100644
--- a/print-gre.c
+++ b/print-gre.c
@@ -89,7 +89,7 @@ gre_print(netdissect_options *ndo, const u_char *bp, u_int length)
{
u_int len = length, vers;
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
if (len < 2)
goto trunc;
vers = EXTRACT_BE_U_2(bp) & GRE_VERS_MASK;
@@ -128,7 +128,7 @@ gre_print_0(netdissect_options *ndo, const u_char *bp, u_int length)
len -= 2;
bp += 2;
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
if (len < 2)
goto trunc;
prot = EXTRACT_BE_U_2(bp);
@@ -136,7 +136,7 @@ gre_print_0(netdissect_options *ndo, const u_char *bp, u_int length)
bp += 2;
if ((flags & GRE_CP) | (flags & GRE_RP)) {
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
if (len < 2)
goto trunc;
if (ndo->ndo_vflag)
@@ -144,7 +144,7 @@ gre_print_0(netdissect_options *ndo, const u_char *bp, u_int length)
bp += 2;
len -= 2;
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
if (len < 2)
goto trunc;
ND_PRINT((ndo, ", off 0x%x", EXTRACT_BE_U_2(bp)));
@@ -153,7 +153,7 @@ gre_print_0(netdissect_options *ndo, const u_char *bp, u_int length)
}
if (flags & GRE_KP) {
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
if (len < 4)
goto trunc;
ND_PRINT((ndo, ", key=0x%x", EXTRACT_BE_U_4(bp)));
@@ -162,7 +162,7 @@ gre_print_0(netdissect_options *ndo, const u_char *bp, u_int length)
}
if (flags & GRE_SP) {
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
if (len < 4)
goto trunc;
ND_PRINT((ndo, ", seq %u", EXTRACT_BE_U_4(bp)));
@@ -176,7 +176,7 @@ gre_print_0(netdissect_options *ndo, const u_char *bp, u_int length)
uint8_t sreoff;
uint8_t srelen;
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
if (len < 4)
goto trunc;
af = EXTRACT_BE_U_2(bp);
@@ -256,7 +256,7 @@ gre_print_1(netdissect_options *ndo, const u_char *bp, u_int length)
ND_PRINT((ndo, ", Flags [%s]",
bittok2str(gre_flag_values,"none",flags)));
- ND_TCHECK2(*bp, 2);
+ ND_TCHECK_2(bp);
if (len < 2)
goto trunc;
prot = EXTRACT_BE_U_2(bp);
@@ -267,7 +267,7 @@ gre_print_1(netdissect_options *ndo, const u_char *bp, u_int length)
if (flags & GRE_KP) {
uint32_t k;
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
if (len < 4)
goto trunc;
k = EXTRACT_BE_U_4(bp);
@@ -277,7 +277,7 @@ gre_print_1(netdissect_options *ndo, const u_char *bp, u_int length)
}
if (flags & GRE_SP) {
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
if (len < 4)
goto trunc;
ND_PRINT((ndo, ", seq %u", EXTRACT_BE_U_4(bp)));
@@ -286,7 +286,7 @@ gre_print_1(netdissect_options *ndo, const u_char *bp, u_int length)
}
if (flags & GRE_AP) {
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
if (len < 4)
goto trunc;
ND_PRINT((ndo, ", ack %u", EXTRACT_BE_U_4(bp)));
@@ -371,7 +371,7 @@ gre_sre_ip_print(netdissect_options *ndo, uint8_t sreoff, uint8_t srelen,
}
while (srelen != 0) {
- if (!ND_TTEST2(*bp, 4))
+ if (!ND_TTEST_4(bp))
return (0);
if (len < 4)
return (0);
@@ -407,7 +407,7 @@ gre_sre_asn_print(netdissect_options *ndo, uint8_t sreoff, uint8_t srelen,
}
while (srelen != 0) {
- if (!ND_TTEST2(*bp, 2))
+ if (!ND_TTEST_2(bp))
return (0);
if (len < 2)
return (0);
diff --git a/print-icmp6.c b/print-icmp6.c
index dfda92bd..bf17993c 100644
--- a/print-icmp6.c
+++ b/print-icmp6.c
@@ -1505,7 +1505,7 @@ mldv2_query_print(netdissect_options *ndo, const u_char *bp, u_int len)
ND_PRINT((ndo," qqi=%d", qqi));
}
- ND_TCHECK2(bp[26], 2);
+ ND_TCHECK_2(bp + 26);
nsrcs = EXTRACT_BE_U_2(bp + 26);
if (nsrcs > 0) {
if (len < 28 + nsrcs * sizeof(struct in6_addr))
diff --git a/print-igmp.c b/print-igmp.c
index d5259093..1c672775 100644
--- a/print-igmp.c
+++ b/print-igmp.c
@@ -175,7 +175,7 @@ print_igmpv3_report(netdissect_options *ndo,
ND_PRINT((ndo, " [invalid number of groups]"));
return;
}
- ND_TCHECK2(bp[group+4], 4);
+ ND_TCHECK_4(bp + (group + 4));
ND_PRINT((ndo, " [gaddr %s", ipaddr_string(ndo, &bp[group+4])));
ND_PRINT((ndo, " %s", tok2str(igmpv3report2str, " [v3-report-#%d]",
EXTRACT_U_1(bp + group))));
@@ -191,7 +191,7 @@ print_igmpv3_report(netdissect_options *ndo,
/* Print the sources */
ND_PRINT((ndo, " {"));
for (j=0; j<nsrcs; j++) {
- ND_TCHECK2(bp[group+8+(j<<2)], 4);
+ ND_TCHECK_4(bp + (group + 8 + (j << 2)));
ND_PRINT((ndo, " %s", ipaddr_string(ndo, &bp[group+8+(j<<2)])));
}
ND_PRINT((ndo, " }"));
@@ -249,7 +249,7 @@ print_igmpv3_query(netdissect_options *ndo,
else if (ndo->ndo_vflag > 1) {
ND_PRINT((ndo, " {"));
for (i=0; i<nsrcs; i++) {
- ND_TCHECK2(bp[12+(i<<2)], 4);
+ ND_TCHECK_4(bp + (12 + (i << 2)));
ND_PRINT((ndo, " %s", ipaddr_string(ndo, &bp[12+(i<<2)])));
}
ND_PRINT((ndo, " }"));
@@ -295,13 +295,13 @@ igmp_print(netdissect_options *ndo,
}
break;
case 0x12:
- ND_TCHECK2(bp[4], 4);
+ ND_TCHECK_4(bp + 4);
ND_PRINT((ndo, "igmp v1 report %s", ipaddr_string(ndo, &bp[4])));
if (len != 8)
ND_PRINT((ndo, " [len %d]", len));
break;
case 0x16:
- ND_TCHECK2(bp[4], 4);
+ ND_TCHECK_4(bp + 4);
ND_PRINT((ndo, "igmp v2 report %s", ipaddr_string(ndo, &bp[4])));
break;
case 0x22:
@@ -309,7 +309,7 @@ igmp_print(netdissect_options *ndo,
print_igmpv3_report(ndo, bp, len);
break;
case 0x17:
- ND_TCHECK2(bp[4], 4);
+ ND_TCHECK_4(bp + 4);
ND_PRINT((ndo, "igmp leave %s", ipaddr_string(ndo, &bp[4])));
break;
case 0x13:
diff --git a/print-ip.c b/print-ip.c
index 8e58299d..de278aad 100644
--- a/print-ip.c
+++ b/print-ip.c
@@ -73,7 +73,7 @@ ip_printroute(netdissect_options *ndo,
ND_PRINT((ndo, " [bad ptr %u]", cp[2]));
for (len = 3; len < length; len += 4) {
- ND_TCHECK2(cp[len], 4);
+ ND_TCHECK_4(cp + len);
ND_PRINT((ndo, " %s", ipaddr_string(ndo, &cp[len])));
if (ptr > len)
ND_PRINT((ndo, ","));
diff --git a/print-ip6.c b/print-ip6.c
index e13b365a..237c36d4 100644
--- a/print-ip6.c
+++ b/print-ip6.c
@@ -76,7 +76,7 @@ ip6_finddst(netdissect_options *ndo, struct in6_addr *dst,
* the header, in units of 8 octets, excluding
* the first 8 octets.
*/
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
advance = (EXTRACT_U_1(cp + 1) + 1) << 3;
nh = *cp;
break;
@@ -87,7 +87,7 @@ ip6_finddst(netdissect_options *ndo, struct in6_addr *dst,
* marked as reserved, and the header is always
* the same size.
*/
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
advance = sizeof(struct ip6_frag);
nh = *cp;
break;
diff --git a/print-isoclns.c b/print-isoclns.c
index e2d0aec7..0f2c179e 100644
--- a/print-isoclns.c
+++ b/print-isoclns.c
@@ -2015,7 +2015,7 @@ isis_print_ext_is_reach(netdissect_options *ndo,
if (subtlv_sum_len) {
ND_PRINT((ndo, " (%u)", subtlv_sum_len));
while (subtlv_sum_len>0) {
- if (!ND_TTEST2(*tptr,2))
+ if (!ND_TTEST_2(tptr))
return(0);
subtlv_type=EXTRACT_U_1(tptr);
subtlv_len=EXTRACT_U_1(tptr + 1);
@@ -2092,7 +2092,7 @@ isis_print_extd_ip_reach(netdissect_options *ndo,
}
processed++;
} else if (afi == AF_INET6) {
- if (!ND_TTEST2(*tptr, 2)) /* fetch status & prefix_len byte */
+ if (!ND_TTEST_2(tptr)) /* fetch status & prefix_len byte */
return (0);
status_byte=EXTRACT_U_1(tptr);
bit_length=EXTRACT_U_1(tptr + 1);
@@ -2153,7 +2153,7 @@ isis_print_extd_ip_reach(netdissect_options *ndo,
ND_PRINT((ndo, " (%u)", sublen)); /* print out subTLV length */
while (sublen>0) {
- if (!ND_TTEST2(*tptr,2))
+ if (!ND_TTEST_2(tptr))
return (0);
subtlvtype=EXTRACT_U_1(tptr);
subtlvlen=EXTRACT_U_1(tptr + 1);
@@ -3189,7 +3189,7 @@ osi_print_cksum(netdissect_options *ndo, const uint8_t *pptr,
*/
if (!checksum
|| checksum_offset < 0
- || !ND_TTEST2(*(pptr + checksum_offset), 2)
+ || !ND_TTEST_2(pptr + checksum_offset)
|| (u_int)checksum_offset > length
|| !ND_TTEST2(*pptr, length)) {
ND_PRINT((ndo, " (unverified)"));
diff --git a/print-juniper.c b/print-juniper.c
index 0202e416..f25b9f61 100644
--- a/print-juniper.c
+++ b/print-juniper.c
@@ -760,7 +760,7 @@ juniper_pppoe_atm_if_print(netdissect_options *ndo,
p+=l2info.header_len;
- ND_TCHECK2(p[0], 2);
+ ND_TCHECK_2(p);
extracted_ethertype = EXTRACT_BE_U_2(p);
/* this DLT contains nothing but raw PPPoE frames,
* prepended with a type field*/
@@ -965,7 +965,7 @@ juniper_atm1_if_print(netdissect_options *ndo,
return l2info.header_len;
}
- ND_TCHECK2(p[0], 3);
+ ND_TCHECK_3(p);
if (EXTRACT_BE_U_3(p) == 0xfefe03 || /* NLPID encaps ? */
EXTRACT_BE_U_3(p) == 0xaaaa03) { /* SNAP encaps ? */
@@ -1019,7 +1019,7 @@ juniper_atm2_if_print(netdissect_options *ndo,
return l2info.header_len;
}
- ND_TCHECK2(p[0], 3);
+ ND_TCHECK_3(p);
if (EXTRACT_BE_U_3(p) == 0xfefe03 || /* NLPID encaps ? */
EXTRACT_BE_U_3(p) == 0xaaaa03) { /* SNAP encaps ? */
@@ -1194,7 +1194,7 @@ juniper_parse_header(netdissect_options *ndo,
l2info->length = h->len;
l2info->caplen = h->caplen;
- ND_TCHECK2(p[0], 4);
+ ND_TCHECK_4(p);
l2info->flags = p[3];
l2info->direction = p[3]&JUNIPER_BPF_PKT_IN;
@@ -1219,7 +1219,7 @@ juniper_parse_header(netdissect_options *ndo,
tptr = p+jnx_header_len;
/* ok to read extension length ? */
- ND_TCHECK2(tptr[0], 2);
+ ND_TCHECK_2(tptr);
jnx_ext_len = EXTRACT_BE_U_2(tptr);
jnx_header_len += 2;
tptr +=2;
@@ -1302,7 +1302,7 @@ juniper_parse_header(netdissect_options *ndo,
* perform the v4/v6 heuristics
* to figure out what it is
*/
- ND_TCHECK2(p[jnx_header_len + 4], 1);
+ ND_TCHECK_1(p + (jnx_header_len + 4));
if (ip_heuristic_guess(ndo, p + jnx_header_len + 4,
l2info->length - (jnx_header_len + 4)) == 0)
ND_PRINT((ndo, "no IP-hdr found!"));
@@ -1399,7 +1399,7 @@ juniper_parse_header(netdissect_options *ndo,
case DLT_JUNIPER_MLFR:
switch (l2info->cookie_type) {
case LS_COOKIE_ID:
- ND_TCHECK2(p[0], 2);
+ ND_TCHECK_2(p);
l2info->bundle = l2info->cookie[1];
l2info->proto = EXTRACT_BE_U_2(p);
l2info->header_len += 2;
@@ -1423,7 +1423,7 @@ juniper_parse_header(netdissect_options *ndo,
case DLT_JUNIPER_MFR:
switch (l2info->cookie_type) {
case LS_COOKIE_ID:
- ND_TCHECK2(p[0], 2);
+ ND_TCHECK_2(p);
l2info->bundle = l2info->cookie[1];
l2info->proto = EXTRACT_BE_U_2(p);
l2info->header_len += 2;
@@ -1442,7 +1442,7 @@ juniper_parse_header(netdissect_options *ndo,
#endif
#ifdef DLT_JUNIPER_ATM2
case DLT_JUNIPER_ATM2:
- ND_TCHECK2(p[0], 4);
+ ND_TCHECK_4(p);
/* ATM cell relay control word present ? */
if (l2info->cookie[7] & ATM2_PKT_TYPE_MASK) {
control_word = EXTRACT_BE_U_4(p);
diff --git a/print-l2tp.c b/print-l2tp.c
index 9852ff50..7feab704 100644
--- a/print-l2tp.c
+++ b/print-l2tp.c
@@ -777,7 +777,7 @@ l2tp_print(netdissect_options *ndo, const u_char *dat, u_int length)
flag_t = flag_l = flag_s = flag_o = FALSE;
- ND_TCHECK2(*ptr, 2); /* Flags & Version */
+ ND_TCHECK_2(ptr); /* Flags & Version */
if ((EXTRACT_BE_U_2(ptr) & L2TP_VERSION_MASK) == L2TP_VERSION_L2TP) {
ND_PRINT((ndo, " l2tp:"));
} else if ((EXTRACT_BE_U_2(ptr) & L2TP_VERSION_MASK) == L2TP_VERSION_L2F) {
@@ -813,7 +813,7 @@ l2tp_print(netdissect_options *ndo, const u_char *dat, u_int length)
cnt += 2;
if (flag_l) {
- ND_TCHECK2(*ptr, 2); /* Length */
+ ND_TCHECK_2(ptr); /* Length */
l2tp_len = EXTRACT_BE_U_2(ptr);
ptr += 2;
cnt += 2;
@@ -821,28 +821,28 @@ l2tp_print(netdissect_options *ndo, const u_char *dat, u_int length)
l2tp_len = 0;
}
- ND_TCHECK2(*ptr, 2); /* Tunnel ID */
+ ND_TCHECK_2(ptr); /* Tunnel ID */
ND_PRINT((ndo, "(%u/", EXTRACT_BE_U_2(ptr)));
ptr += 2;
cnt += 2;
- ND_TCHECK2(*ptr, 2); /* Session ID */
+ ND_TCHECK_2(ptr); /* Session ID */
ND_PRINT((ndo, "%u)", EXTRACT_BE_U_2(ptr)));
ptr += 2;
cnt += 2;
if (flag_s) {
- ND_TCHECK2(*ptr, 2); /* Ns */
+ ND_TCHECK_2(ptr); /* Ns */
ND_PRINT((ndo, "Ns=%u,", EXTRACT_BE_U_2(ptr)));
ptr += 2;
cnt += 2;
- ND_TCHECK2(*ptr, 2); /* Nr */
+ ND_TCHECK_2(ptr); /* Nr */
ND_PRINT((ndo, "Nr=%u", EXTRACT_BE_U_2(ptr)));
ptr += 2;
cnt += 2;
}
if (flag_o) {
- ND_TCHECK2(*ptr, 2); /* Offset Size */
+ ND_TCHECK_2(ptr); /* Offset Size */
pad = EXTRACT_BE_U_2(ptr);
ptr += (2 + pad);
cnt += (2 + pad);
diff --git a/print-lisp.c b/print-lisp.c
index 6a25b27b..cccc266e 100644
--- a/print-lisp.c
+++ b/print-lisp.c
@@ -306,13 +306,13 @@ lisp_print(netdissect_options *ndo, const u_char *bp, u_int length)
switch (eid_afi) {
case IPv4_AFI:
- ND_TCHECK2(*(packet_iterator + packet_offset), 4);
+ ND_TCHECK_4(packet_iterator + packet_offset);
ND_PRINT((ndo, " EID %s/%u,", ipaddr_string(ndo,
packet_iterator + packet_offset), mask_len));
packet_offset += 4;
break;
case IPv6_AFI:
- ND_TCHECK2(*(packet_iterator + packet_offset), 16);
+ ND_TCHECK_16(packet_iterator + packet_offset);
ND_PRINT((ndo, " EID %s/%u,", ip6addr_string(ndo,
packet_iterator + packet_offset), mask_len));
packet_offset += 16;
@@ -339,12 +339,12 @@ lisp_print(netdissect_options *ndo, const u_char *bp, u_int length)
switch (loc_afi) {
case IPv4_AFI:
- ND_TCHECK2(*(packet_iterator + packet_offset), 4);
+ ND_TCHECK_4(packet_iterator + packet_offset);
ND_PRINT((ndo, " LOC %s", ipaddr_string(ndo, loc_ip_pointer)));
packet_offset += 4;
break;
case IPv6_AFI:
- ND_TCHECK2(*(packet_iterator + packet_offset), 16);
+ ND_TCHECK_16(packet_iterator + packet_offset);
ND_PRINT((ndo, " LOC %s", ip6addr_string(ndo, loc_ip_pointer)));
packet_offset += 16;
break;
diff --git a/print-llc.c b/print-llc.c
index b4716bcb..289667c3 100644
--- a/print-llc.c
+++ b/print-llc.c
@@ -425,7 +425,7 @@ snap_print(netdissect_options *ndo, const u_char *p, u_int length, u_int caplen,
register u_short et;
register int ret;
- ND_TCHECK2(*p, 5);
+ ND_TCHECK_5(p);
if (caplen < 5 || length < 5)
goto trunc;
orgcode = EXTRACT_BE_U_3(p);
diff --git a/print-loopback.c b/print-loopback.c
index ac7b1779..9ef77a97 100644
--- a/print-loopback.c
+++ b/print-loopback.c
@@ -63,7 +63,7 @@ loopback_message_print(netdissect_options *ndo, const u_char *cp, const u_int le
if (len < 2)
goto invalid;
/* function */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
function = EXTRACT_LE_U_2(cp);
cp += 2;
ND_PRINT((ndo, ", %s", tok2str(fcode_str, " invalid (%u)", function)));
@@ -73,7 +73,7 @@ loopback_message_print(netdissect_options *ndo, const u_char *cp, const u_int le
if (len < 4)
goto invalid;
/* receipt number */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", receipt number %u", EXTRACT_LE_U_2(cp)));
cp += 2;
/* data */
@@ -115,7 +115,7 @@ loopback_print(netdissect_options *ndo, const u_char *cp, const u_int len)
if (len < 2)
goto invalid;
/* skipCount */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
skipCount = EXTRACT_LE_U_2(cp);
cp += 2;
ND_PRINT((ndo, ", skipCount %u", skipCount));
diff --git a/print-lwapp.c b/print-lwapp.c
index 78dbafe5..a33c6d3c 100644
--- a/print-lwapp.c
+++ b/print-lwapp.c
@@ -175,7 +175,7 @@ lwapp_control_print(netdissect_options *ndo,
if (has_ap_ident) {
/* check if enough bytes for AP identity */
- ND_TCHECK2(*tptr, 6);
+ ND_TCHECK_6(tptr);
lwapp_trans_header = (const struct lwapp_transport_header *)(pptr+6);
} else {
lwapp_trans_header = (const struct lwapp_transport_header *)pptr;
@@ -295,7 +295,7 @@ lwapp_data_print(netdissect_options *ndo,
tptr=pptr;
/* check if enough bytes for AP identity */
- ND_TCHECK2(*tptr, 6);
+ ND_TCHECK_6(tptr);
lwapp_trans_header = (const struct lwapp_transport_header *)pptr;
ND_TCHECK(*lwapp_trans_header);
diff --git a/print-mobility.c b/print-mobility.c
index 1a9b657a..8b93df17 100644
--- a/print-mobility.c
+++ b/print-mobility.c
@@ -323,7 +323,7 @@ mobility_print(netdissect_options *ndo,
ND_PRINT((ndo, " status=%u", mh->ip6m_data8[0]));
/* Reserved */
hlen = IP6M_MINLEN;
- ND_TCHECK2(bp[hlen], 16);
+ ND_TCHECK_16(bp + hlen);
ND_PRINT((ndo, " homeaddr %s", ip6addr_string(ndo, &bp[hlen])));
hlen += 16;
break;
diff --git a/print-msdp.c b/print-msdp.c
index 6ac780b8..91416876 100644
--- a/print-msdp.c
+++ b/print-msdp.c
@@ -35,7 +35,7 @@ msdp_print(netdissect_options *ndo, const u_char *sp, u_int length)
{
unsigned int type, len;
- ND_TCHECK2(*sp, 3);
+ ND_TCHECK_3(sp);
/* See if we think we're at the beginning of a compound packet */
type = *sp;
len = EXTRACT_BE_U_2(sp + 1);
@@ -43,7 +43,7 @@ msdp_print(netdissect_options *ndo, const u_char *sp, u_int length)
goto trunc; /* not really truncated, but still not decodable */
ND_PRINT((ndo, " msdp:"));
while (length > 0) {
- ND_TCHECK2(*sp, 3);
+ ND_TCHECK_3(sp);
type = *sp;
len = EXTRACT_BE_U_2(sp + 1);
if (len > 1400 || ndo->ndo_vflag)
@@ -72,7 +72,7 @@ msdp_print(netdissect_options *ndo, const u_char *sp, u_int length)
break;
case 2:
ND_PRINT((ndo, " SA-Request"));
- ND_TCHECK2(*sp, 5);
+ ND_TCHECK_5(sp);
ND_PRINT((ndo, " for %s", ipaddr_string(ndo, sp + 1)));
break;
case 4:
diff --git a/print-olsr.c b/print-olsr.c
index cb0d6b20..fdfe706b 100644
--- a/print-olsr.c
+++ b/print-olsr.c
@@ -623,7 +623,7 @@ olsr_print(netdissect_options *ndo,
if (msg_tlen < 4)
goto trunc;
- ND_TCHECK2(*msg_data, 4);
+ ND_TCHECK_4(msg_data);
name_entries = EXTRACT_BE_U_2(msg_data + 2);
addr_size = 4;
@@ -650,7 +650,7 @@ olsr_print(netdissect_options *ndo,
if (msg_tlen < 4)
break;
- ND_TCHECK2(*msg_data, 4);
+ ND_TCHECK_4(msg_data);
name_entry_type = EXTRACT_BE_U_2(msg_data);
name_entry_len = EXTRACT_BE_U_2(msg_data + 2);
diff --git a/print-openflow-1.0.c b/print-openflow-1.0.c
index f328dbb3..ed95be8e 100644
--- a/print-openflow-1.0.c
+++ b/print-openflow-1.0.c
@@ -762,7 +762,7 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len < 4)
goto invalid;
/* subtype */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
subtype = EXTRACT_BE_U_4(cp);
cp += 4;
ND_PRINT((ndo, "\n\t subtype %s", tok2str(bsn_subtype_str, "unknown (0x%08x)", subtype)));
@@ -783,11 +783,11 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len != 12)
goto invalid;
/* index */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", index %u", *cp));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 7);
+ ND_TCHECK_7(cp);
cp += 7;
break;
case BSN_SET_IP_MASK:
@@ -807,14 +807,14 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len != 12)
goto invalid;
/* index */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", index %u", *cp));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
/* mask */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", mask %s", ipaddr_string(ndo, cp)));
cp += 4;
break;
@@ -834,11 +834,11 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len != 8)
goto invalid;
/* report_mirror_ports */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", report_mirror_ports %s", tok2str(bsn_onoff_str, "bogus (%u)", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
break;
case BSN_GET_INTERFACES_REQUEST:
@@ -871,7 +871,7 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len != 8)
goto invalid;
/* vport_no */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", vport_no %u", EXTRACT_BE_U_4(cp)));
cp += 4;
break;
@@ -891,7 +891,7 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len < 8)
goto invalid;
/* service */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", service %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* data */
@@ -938,7 +938,7 @@ of10_bsn_message_print(netdissect_options *ndo,
if (len != 8)
goto invalid;
/* status */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", status 0x%08x", EXTRACT_BE_U_4(cp)));
cp += 4;
break;
@@ -967,7 +967,7 @@ of10_bsn_actions_print(netdissect_options *ndo,
if (len < 4)
goto invalid;
/* subtype */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
subtype = EXTRACT_BE_U_4(cp);
cp += 4;
ND_PRINT((ndo, "\n\t subtype %s", tok2str(bsn_action_subtype_str, "unknown (0x%08x)", subtype)));
@@ -990,11 +990,11 @@ of10_bsn_actions_print(netdissect_options *ndo,
if (len != 16)
goto invalid;
/* dest_port */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", dest_port %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* vlan_tag */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
vlan_tag = EXTRACT_BE_U_4(cp);
cp += 4;
switch (vlan_tag >> 16) {
@@ -1008,11 +1008,11 @@ of10_bsn_actions_print(netdissect_options *ndo,
ND_PRINT((ndo, ", vlan_tag unknown (0x%04x)", vlan_tag >> 16));
}
/* copy_stage */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", copy_stage %s", tok2str(bsn_mirror_copy_stage_str, "unknown (%u)", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
break;
default:
@@ -1041,7 +1041,7 @@ of10_vendor_action_print(netdissect_options *ndo,
if (len < 4)
goto invalid;
/* vendor */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
vendor = EXTRACT_BE_U_4(cp);
cp += 4;
ND_PRINT((ndo, ", vendor 0x%08x (%s)", vendor, of_vendor_name(vendor)));
@@ -1070,7 +1070,7 @@ of10_vendor_message_print(netdissect_options *ndo,
if (len < 4)
goto invalid;
/* vendor */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
vendor = EXTRACT_BE_U_4(cp);
cp += 4;
ND_PRINT((ndo, ", vendor 0x%08x (%s)", vendor, of_vendor_name(vendor)));
@@ -1099,7 +1099,7 @@ of10_vendor_data_print(netdissect_options *ndo,
if (len < 4)
goto invalid;
/* vendor */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
vendor = EXTRACT_BE_U_4(cp);
cp += 4;
ND_PRINT((ndo, ", vendor 0x%08x (%s)", vendor, of_vendor_name(vendor)));
@@ -1149,7 +1149,7 @@ of10_phy_ports_print(netdissect_options *ndo,
if (len < OF_PHY_PORT_LEN)
goto invalid;
/* port_no */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* hw_addr */
@@ -1169,37 +1169,37 @@ of10_phy_ports_print(netdissect_options *ndo,
goto next_port;
}
/* config */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t config 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppc_bm, EXTRACT_BE_U_4(cp),
OFPPC_U);
cp += 4;
/* state */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t state 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofpps_bm, EXTRACT_BE_U_4(cp),
OFPPS_U);
cp += 4;
/* curr */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t curr 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppf_bm, EXTRACT_BE_U_4(cp),
OFPPF_U);
cp += 4;
/* advertised */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t advertised 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppf_bm, EXTRACT_BE_U_4(cp),
OFPPF_U);
cp += 4;
/* supported */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t supported 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppf_bm, EXTRACT_BE_U_4(cp),
OFPPF_U);
cp += 4;
/* peer */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t peer 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppf_bm, EXTRACT_BE_U_4(cp),
OFPPF_U);
@@ -1233,19 +1233,19 @@ of10_queue_props_print(netdissect_options *ndo,
if (len < OF_QUEUE_PROP_HEADER_LEN)
goto invalid;
/* property */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
property = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, "\n\t property %s", tok2str(ofpqt_str, "invalid (0x%04x)", property)));
/* len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
plen = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, ", len %u", plen));
if (plen < OF_QUEUE_PROP_HEADER_LEN || plen > len)
goto invalid;
/* pad */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
cp += 4;
/* property-specific constraints and decoding */
switch (property) {
@@ -1269,7 +1269,7 @@ of10_queue_props_print(netdissect_options *ndo,
}
if (property == OFPQT_MIN_RATE) { /* the only case of property decoding */
/* rate */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
rate = EXTRACT_BE_U_2(cp);
cp += 2;
if (rate > 1000)
@@ -1277,7 +1277,7 @@ of10_queue_props_print(netdissect_options *ndo,
else
ND_PRINT((ndo, ", rate %u.%u%%", rate / 10, rate % 10));
/* pad */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
cp += 6;
}
next_property:
@@ -1307,18 +1307,18 @@ of10_queues_print(netdissect_options *ndo,
if (len < OF_PACKET_QUEUE_LEN)
goto invalid;
/* queue_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t queue_id %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
desclen = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, ", len %u", desclen));
if (desclen < OF_PACKET_QUEUE_LEN || desclen > len)
goto invalid;
/* pad */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* properties */
if (ndo->ndo_vflag < 2) {
@@ -1354,13 +1354,13 @@ of10_match_print(netdissect_options *ndo,
const char *field_name;
/* wildcards */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
wildcards = EXTRACT_BE_U_4(cp);
if (wildcards & OFPFW_U)
ND_PRINT((ndo, "%swildcards 0x%08x (bogus)", pfx, wildcards));
cp += 4;
/* in_port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (! (wildcards & OFPFW_IN_PORT))
ND_PRINT((ndo, "%smatch in_port %s", pfx, tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
@@ -1375,31 +1375,31 @@ of10_match_print(netdissect_options *ndo,
ND_PRINT((ndo, "%smatch dl_dst %s", pfx, etheraddr_string(ndo, cp)));
cp += ETHER_ADDR_LEN;
/* dl_vlan */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (! (wildcards & OFPFW_DL_VLAN))
ND_PRINT((ndo, "%smatch dl_vlan %s", pfx, vlan_str(EXTRACT_BE_U_2(cp))));
cp += 2;
/* dl_vlan_pcp */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
if (! (wildcards & OFPFW_DL_VLAN_PCP))
ND_PRINT((ndo, "%smatch dl_vlan_pcp %s", pfx, pcp_str(EXTRACT_U_1(cp))));
cp += 1;
/* pad1 */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* dl_type */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
dl_type = EXTRACT_BE_U_2(cp);
cp += 2;
if (! (wildcards & OFPFW_DL_TYPE))
ND_PRINT((ndo, "%smatch dl_type 0x%04x", pfx, dl_type));
/* nw_tos */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
if (! (wildcards & OFPFW_NW_TOS))
ND_PRINT((ndo, "%smatch nw_tos 0x%02x", pfx, *cp));
cp += 1;
/* nw_proto */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
nw_proto = *cp;
cp += 1;
if (! (wildcards & OFPFW_NW_PROTO)) {
@@ -1408,22 +1408,22 @@ of10_match_print(netdissect_options *ndo,
ND_PRINT((ndo, "%smatch %s %u", pfx, field_name, nw_proto));
}
/* pad2 */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* nw_src */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
nw_bits = (wildcards & OFPFW_NW_SRC_MASK) >> OFPFW_NW_SRC_SHIFT;
if (nw_bits < 32)
ND_PRINT((ndo, "%smatch nw_src %s/%u", pfx, ipaddr_string(ndo, cp), 32 - nw_bits));
cp += 4;
/* nw_dst */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
nw_bits = (wildcards & OFPFW_NW_DST_MASK) >> OFPFW_NW_DST_SHIFT;
if (nw_bits < 32)
ND_PRINT((ndo, "%smatch nw_dst %s/%u", pfx, ipaddr_string(ndo, cp), 32 - nw_bits));
cp += 4;
/* tp_src */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (! (wildcards & OFPFW_TP_SRC)) {
field_name = ! (wildcards & OFPFW_DL_TYPE) && dl_type == ETHERTYPE_IP
&& ! (wildcards & OFPFW_NW_PROTO) && nw_proto == IPPROTO_ICMP
@@ -1432,7 +1432,7 @@ of10_match_print(netdissect_options *ndo,
}
cp += 2;
/* tp_dst */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (! (wildcards & OFPFW_TP_DST)) {
field_name = ! (wildcards & OFPFW_DL_TYPE) && dl_type == ETHERTYPE_IP
&& ! (wildcards & OFPFW_NW_PROTO) && nw_proto == IPPROTO_ICMP
@@ -1462,12 +1462,12 @@ of10_actions_print(netdissect_options *ndo,
if (len < OF_ACTION_HEADER_LEN)
goto invalid;
/* type */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
type = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, "%saction type %s", pfx, tok2str(ofpat_str, "invalid (0x%04x)", type)));
/* length */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
alen = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, ", len %u", alen));
@@ -1512,32 +1512,32 @@ of10_actions_print(netdissect_options *ndo,
switch (type) {
case OFPAT_OUTPUT:
/* port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
output_port = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, ", port %s", tok2str(ofpp_str, "%u", output_port)));
/* max_len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (output_port == OFPP_CONTROLLER)
ND_PRINT((ndo, ", max_len %u", EXTRACT_BE_U_2(cp)));
cp += 2;
break;
case OFPAT_SET_VLAN_VID:
/* vlan_vid */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", vlan_vid %s", vlan_str(EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
break;
case OFPAT_SET_VLAN_PCP:
/* vlan_pcp */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", vlan_pcp %s", pcp_str(EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
break;
case OFPAT_SET_DL_SRC:
@@ -1547,45 +1547,45 @@ of10_actions_print(netdissect_options *ndo,
ND_PRINT((ndo, ", dl_addr %s", etheraddr_string(ndo, cp)));
cp += ETHER_ADDR_LEN;
/* pad */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
cp += 6;
break;
case OFPAT_SET_NW_SRC:
case OFPAT_SET_NW_DST:
/* nw_addr */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", nw_addr %s", ipaddr_string(ndo, cp)));
cp += 4;
break;
case OFPAT_SET_NW_TOS:
/* nw_tos */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", nw_tos 0x%02x", *cp));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
break;
case OFPAT_SET_TP_SRC:
case OFPAT_SET_TP_DST:
/* nw_tos */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", tp_port %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
break;
case OFPAT_ENQUEUE:
/* port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", port %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
cp += 6;
/* queue_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", queue_id %s", tok2str(ofpq_str, "%u", EXTRACT_BE_U_4(cp))));
cp += 4;
break;
@@ -1595,7 +1595,7 @@ of10_actions_print(netdissect_options *ndo,
break;
case OFPAT_STRIP_VLAN:
/* pad */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
cp += 4;
break;
} /* switch */
@@ -1619,28 +1619,28 @@ of10_features_reply_print(netdissect_options *ndo,
const u_char *cp, const u_char *ep, const u_int len)
{
/* datapath_id */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, "\n\t dpid 0x%016" PRIx64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* n_buffers */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", n_buffers %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* n_tables */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", n_tables %u", *cp));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
/* capabilities */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t capabilities 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofp_capabilities_bm, EXTRACT_BE_U_4(cp),
OFPCAP_U);
cp += 4;
/* actions */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t actions 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofpat_bm, EXTRACT_BE_U_4(cp), OFPAT_U);
cp += 4;
@@ -1663,42 +1663,42 @@ of10_flow_mod_print(netdissect_options *ndo,
if (ep == (cp = of10_match_print(ndo, "\n\t ", cp, ep)))
return ep; /* end of snapshot */
/* cookie */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, "\n\t cookie 0x%016" PRIx64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* command */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
command = EXTRACT_BE_U_2(cp);
ND_PRINT((ndo, ", command %s", tok2str(ofpfc_str, "invalid (0x%04x)", command)));
cp += 2;
/* idle_timeout */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (EXTRACT_BE_U_2(cp))
ND_PRINT((ndo, ", idle_timeout %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* hard_timeout */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (EXTRACT_BE_U_2(cp))
ND_PRINT((ndo, ", hard_timeout %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* priority */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (EXTRACT_BE_U_2(cp))
ND_PRINT((ndo, ", priority %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* buffer_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
if (command == OFPFC_ADD || command == OFPFC_MODIFY ||
command == OFPFC_MODIFY_STRICT)
ND_PRINT((ndo, ", buffer_id %s", tok2str(bufferid_str, "0x%08x", EXTRACT_BE_U_4(cp))));
cp += 4;
/* out_port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (command == OFPFC_DELETE || command == OFPFC_DELETE_STRICT)
ND_PRINT((ndo, ", out_port %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* flags */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", flags 0x%04x", EXTRACT_BE_U_2(cp)));
of10_bitmap_print(ndo, ofpff_bm, EXTRACT_BE_U_2(cp), OFPFF_U);
cp += 2;
@@ -1716,7 +1716,7 @@ of10_port_mod_print(netdissect_options *ndo,
const u_char *cp, const u_char *ep)
{
/* port_no */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* hw_addr */
@@ -1724,22 +1724,22 @@ of10_port_mod_print(netdissect_options *ndo,
ND_PRINT((ndo, ", hw_addr %s", etheraddr_string(ndo, cp)));
cp += ETHER_ADDR_LEN;
/* config */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t config 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppc_bm, EXTRACT_BE_U_4(cp), OFPPC_U);
cp += 4;
/* mask */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t mask 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppc_bm, EXTRACT_BE_U_4(cp), OFPPC_U);
cp += 4;
/* advertise */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t advertise 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofppf_bm, EXTRACT_BE_U_4(cp), OFPPF_U);
cp += 4;
/* pad */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
return cp + 4;
trunc:
@@ -1757,12 +1757,12 @@ of10_stats_request_print(netdissect_options *ndo,
uint16_t type;
/* type */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
type = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, "\n\t type %s", tok2str(ofpst_str, "invalid (0x%04x)", type)));
/* flags */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", flags 0x%04x", EXTRACT_BE_U_2(cp)));
if (EXTRACT_BE_U_2(cp))
ND_PRINT((ndo, " (bogus)"));
@@ -1783,38 +1783,38 @@ of10_stats_request_print(netdissect_options *ndo,
if (ep == (cp = of10_match_print(ndo, "\n\t ", cp, ep)))
return ep; /* end of snapshot */
/* table_id */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\t table_id %s", tok2str(tableid_str, "%u", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* out_port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", out_port %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
return cp + 2;
case OFPST_PORT:
if (len != OF_PORT_STATS_REQUEST_LEN)
goto invalid;
/* port_no */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
return cp + 6;
case OFPST_QUEUE:
if (len != OF_QUEUE_STATS_REQUEST_LEN)
goto invalid;
/* port_no */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* queue_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", queue_id %s", tok2str(ofpq_str, "%u", EXTRACT_BE_U_4(cp))));
return cp + 4;
case OFPST_VENDOR:
@@ -1891,55 +1891,55 @@ of10_flow_stats_reply_print(netdissect_options *ndo,
if (len < OF_FLOW_STATS_LEN)
goto invalid;
/* length */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
entry_len = EXTRACT_BE_U_2(cp);
ND_PRINT((ndo, "\n\t length %u", entry_len));
if (entry_len < OF_FLOW_STATS_LEN || entry_len > len)
goto invalid;
cp += 2;
/* table_id */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", table_id %s", tok2str(tableid_str, "%u", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* match */
if (ep == (cp = of10_match_print(ndo, "\n\t ", cp, ep)))
return ep; /* end of snapshot */
/* duration_sec */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t duration_sec %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* duration_nsec */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", duration_nsec %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* priority */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", priority %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* idle_timeout */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", idle_timeout %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* hard_timeout */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", hard_timeout %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* pad2 */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
cp += 6;
/* cookie */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", cookie 0x%016" PRIx64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* packet_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", packet_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* byte_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", byte_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* actions */
@@ -1968,19 +1968,19 @@ of10_aggregate_stats_reply_print(netdissect_options *ndo,
if (len != OF_AGGREGATE_STATS_REPLY_LEN)
goto invalid;
/* packet_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, "\n\t packet_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* byte_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", byte_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* flow_count */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", flow_count %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* pad */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
return cp + 4;
invalid: /* skip the message body */
@@ -2004,11 +2004,11 @@ of10_table_stats_reply_print(netdissect_options *ndo,
if (len < OF_TABLE_STATS_LEN)
goto invalid;
/* table_id */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\t table_id %s", tok2str(tableid_str, "%u", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 3);
+ ND_TCHECK_3(cp);
cp += 3;
/* name */
ND_TCHECK2(*cp, OFP_MAX_TABLE_NAME_LEN);
@@ -2017,25 +2017,25 @@ of10_table_stats_reply_print(netdissect_options *ndo,
ND_PRINT((ndo, "'"));
cp += OFP_MAX_TABLE_NAME_LEN;
/* wildcards */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t wildcards 0x%08x", EXTRACT_BE_U_4(cp)));
of10_bitmap_print(ndo, ofpfw_bm, EXTRACT_BE_U_4(cp),
OFPFW_U);
cp += 4;
/* max_entries */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t max_entries %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* active_count */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", active_count %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* lookup_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", lookup_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* matched_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", matched_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
@@ -2064,7 +2064,7 @@ of10_port_stats_reply_print(netdissect_options *ndo,
if (len < OF_PORT_STATS_LEN)
goto invalid;
/* port_no */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
if (ndo->ndo_vflag < 2) {
@@ -2073,54 +2073,54 @@ of10_port_stats_reply_print(netdissect_options *ndo,
goto next_port;
}
/* pad */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
cp += 6;
/* rx_packets */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_packets %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* tx_packets */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_packets %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* rx_bytes */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_bytes %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* tx_bytes */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_bytes %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* rx_dropped */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_dropped %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* tx_dropped */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_dropped %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* rx_errors */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_errors %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* tx_errors */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_errors %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* rx_frame_err */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_frame_err %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* rx_over_err */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_over_err %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* rx_crc_err */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", rx_crc_err %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* collisions */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", collisions %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
next_port:
@@ -2149,26 +2149,26 @@ of10_queue_stats_reply_print(netdissect_options *ndo,
if (len < OF_QUEUE_STATS_LEN)
goto invalid;
/* port_no */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* queue_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", queue_id %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* tx_bytes */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_bytes %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* tx_packets */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_packets %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* tx_errors */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", tx_errors %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
@@ -2194,12 +2194,12 @@ of10_stats_reply_print(netdissect_options *ndo,
uint16_t type;
/* type */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
type = EXTRACT_BE_U_2(cp);
ND_PRINT((ndo, "\n\t type %s", tok2str(ofpst_str, "invalid (0x%04x)", type)));
cp += 2;
/* flags */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", flags 0x%04x", EXTRACT_BE_U_2(cp)));
of10_bitmap_print(ndo, ofpsf_reply_bm, EXTRACT_BE_U_2(cp),
OFPSF_REPLY_U);
@@ -2236,15 +2236,15 @@ of10_packet_out_print(netdissect_options *ndo,
uint16_t actions_len;
/* buffer_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t buffer_id 0x%08x", EXTRACT_BE_U_4(cp)));
cp += 4;
/* in_port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", in_port %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* actions_len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
actions_len = EXTRACT_BE_U_2(cp);
cp += 2;
if (actions_len > len - OF_PACKET_OUT_LEN)
@@ -2270,23 +2270,23 @@ of10_packet_in_print(netdissect_options *ndo,
const u_char *cp, const u_char *ep, const u_int len)
{
/* buffer_id */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, "\n\t buffer_id %s", tok2str(bufferid_str, "0x%08x", EXTRACT_BE_U_4(cp))));
cp += 4;
/* total_len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", total_len %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* in_port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", in_port %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* reason */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", reason %s", tok2str(ofpr_str, "invalid (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* data */
/* 2 mock octets count in OF_PACKET_IN_LEN but not in len */
@@ -2306,43 +2306,43 @@ of10_flow_removed_print(netdissect_options *ndo,
if (ep == (cp = of10_match_print(ndo, "\n\t ", cp, ep)))
return ep; /* end of snapshot */
/* cookie */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, "\n\t cookie 0x%016" PRIx64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* priority */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (EXTRACT_BE_U_2(cp))
ND_PRINT((ndo, ", priority %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* reason */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, ", reason %s", tok2str(ofprr_str, "unknown (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
cp += 1;
/* duration_sec */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", duration_sec %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* duration_nsec */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", duration_nsec %u", EXTRACT_BE_U_4(cp)));
cp += 4;
/* idle_timeout */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
if (EXTRACT_BE_U_2(cp))
ND_PRINT((ndo, ", idle_timeout %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* pad2 */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* packet_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", packet_count %" PRIu64, EXTRACT_BE_U_8(cp)));
cp += 8;
/* byte_count */
- ND_TCHECK2(*cp, 8);
+ ND_TCHECK_8(cp);
ND_PRINT((ndo, ", byte_count %" PRIu64, EXTRACT_BE_U_8(cp)));
return cp + 8;
@@ -2360,12 +2360,12 @@ of10_error_print(netdissect_options *ndo,
const struct tok *code_str;
/* type */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
type = EXTRACT_BE_U_2(cp);
cp += 2;
ND_PRINT((ndo, "\n\t type %s", tok2str(ofpet_str, "invalid (0x%04x)", type)));
/* code */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
code_str =
type == OFPET_HELLO_FAILED ? ofphfc_str :
type == OFPET_BAD_REQUEST ? ofpbrc_str :
@@ -2419,11 +2419,11 @@ of10_header_body_print(netdissect_options *ndo,
if (ndo->ndo_vflag < 1)
goto next_message;
/* flags */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t flags %s", tok2str(ofp_config_str, "invalid (0x%04x)", EXTRACT_BE_U_2(cp))));
cp += 2;
/* miss_send_len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", miss_send_len %u", EXTRACT_BE_U_2(cp)));
return cp + 2;
case OFPT_PORT_MOD:
@@ -2438,11 +2438,11 @@ of10_header_body_print(netdissect_options *ndo,
if (ndo->ndo_vflag < 1)
goto next_message;
/* port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
return cp + 2;
case OFPT_FLOW_REMOVED:
if (len != OF_FLOW_REMOVED_LEN)
@@ -2456,11 +2456,11 @@ of10_header_body_print(netdissect_options *ndo,
if (ndo->ndo_vflag < 1)
goto next_message;
/* reason */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
ND_PRINT((ndo, "\n\t reason %s", tok2str(ofppr_str, "invalid (0x%02x)", EXTRACT_U_1(cp))));
cp += 1;
/* pad */
- ND_TCHECK2(*cp, 7);
+ ND_TCHECK_7(cp);
cp += 7;
/* desc */
return of10_phy_ports_print(ndo, cp, ep, OF_PHY_PORT_LEN);
@@ -2547,11 +2547,11 @@ of10_header_body_print(netdissect_options *ndo,
if (ndo->ndo_vflag < 1)
goto next_message;
/* port */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\t port_no %s", tok2str(ofpp_str, "%u", EXTRACT_BE_U_2(cp))));
cp += 2;
/* pad */
- ND_TCHECK2(*cp, 6);
+ ND_TCHECK_6(cp);
cp += 6;
/* queues */
return of10_queues_print(ndo, cp, ep, len - OF_QUEUE_GET_CONFIG_REPLY_LEN);
diff --git a/print-openflow.c b/print-openflow.c
index 92956292..16d1e18b 100644
--- a/print-openflow.c
+++ b/print-openflow.c
@@ -85,19 +85,19 @@ of_header_body_print(netdissect_options *ndo, const u_char *cp, const u_char *ep
if (ep < cp + OF_HEADER_LEN)
goto invalid;
/* version */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
version = *cp;
cp += 1;
/* type */
- ND_TCHECK2(*cp, 1);
+ ND_TCHECK_1(cp);
type = *cp;
cp += 1;
/* length */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
length = EXTRACT_BE_U_2(cp);
cp += 2;
/* xid */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
xid = EXTRACT_BE_U_4(cp);
cp += 4;
/* Message length includes the header length and a message always includes
diff --git a/print-ospf.c b/print-ospf.c
index fd68325f..aaaecf0e 100644
--- a/print-ospf.c
+++ b/print-ospf.c
@@ -922,24 +922,24 @@ ospf_decode_lls(netdissect_options *ndo,
ND_PRINT((ndo, "\n\t[LLS truncated]"));
return (1);
}
- ND_TCHECK2(*dptr, 2);
+ ND_TCHECK_2(dptr);
ND_PRINT((ndo, "\n\t LLS: checksum: 0x%04x", (u_int) EXTRACT_BE_U_2(dptr)));
dptr += 2;
- ND_TCHECK2(*dptr, 2);
+ ND_TCHECK_2(dptr);
length2 = EXTRACT_BE_U_2(dptr);
ND_PRINT((ndo, ", length: %u", length2));
dptr += 2;
ND_TCHECK(*dptr);
while (dptr < dataend) {
- ND_TCHECK2(*dptr, 2);
+ ND_TCHECK_2(dptr);
lls_type = EXTRACT_BE_U_2(dptr);
ND_PRINT((ndo, "\n\t %s (%u)",
tok2str(ospf_lls_tlv_values,"Unknown TLV",lls_type),
lls_type));
dptr += 2;
- ND_TCHECK2(*dptr, 2);
+ ND_TCHECK_2(dptr);
lls_len = EXTRACT_BE_U_2(dptr);
ND_PRINT((ndo, ", length: %u", lls_len));
dptr += 2;
@@ -950,7 +950,7 @@ ospf_decode_lls(netdissect_options *ndo,
ND_PRINT((ndo, " [should be 4]"));
lls_len = 4;
}
- ND_TCHECK2(*dptr, 4);
+ ND_TCHECK_4(dptr);
lls_flags = EXTRACT_BE_U_4(dptr);
ND_PRINT((ndo, "\n\t Options: 0x%08x [%s]", lls_flags,
bittok2str(ospf_lls_eo_options, "?", lls_flags)));
@@ -962,7 +962,7 @@ ospf_decode_lls(netdissect_options *ndo,
ND_PRINT((ndo, " [should be 20]"));
lls_len = 20;
}
- ND_TCHECK2(*dptr, 4);
+ ND_TCHECK_4(dptr);
ND_PRINT((ndo, "\n\t Sequence number: 0x%08x", EXTRACT_BE_U_4(dptr)));
break;
}
diff --git a/print-ospf6.c b/print-ospf6.c
index 8ce0fdf5..b08aa50e 100644
--- a/print-ospf6.c
+++ b/print-ospf6.c
@@ -856,11 +856,11 @@ ospf6_print_lls(netdissect_options *ndo,
if (len < OSPF_LLS_HDRLEN)
goto trunc;
/* Checksum */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\tLLS Checksum 0x%04x", EXTRACT_BE_U_2(cp)));
cp += 2;
/* LLS Data Length */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
llsdatalen = EXTRACT_BE_U_2(cp);
ND_PRINT((ndo, ", Data Length %u", llsdatalen));
if (llsdatalen < OSPF_LLS_HDRLEN || llsdatalen > len)
@@ -887,29 +887,29 @@ ospf6_decode_at(netdissect_options *ndo,
if (len < OSPF6_AT_HDRLEN)
goto trunc;
/* Authentication Type */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, "\n\tAuthentication Type %s", tok2str(ospf6_auth_type_str, "unknown (0x%04x)", EXTRACT_BE_U_2(cp))));
cp += 2;
/* Auth Data Len */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
authdatalen = EXTRACT_BE_U_2(cp);
ND_PRINT((ndo, ", Length %u", authdatalen));
if (authdatalen < OSPF6_AT_HDRLEN || authdatalen > len)
goto trunc;
cp += 2;
/* Reserved */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
cp += 2;
/* Security Association ID */
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
ND_PRINT((ndo, ", SAID %u", EXTRACT_BE_U_2(cp)));
cp += 2;
/* Cryptographic Sequence Number (High-Order 32 Bits) */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ", CSN 0x%08x", EXTRACT_BE_U_4(cp)));
cp += 4;
/* Cryptographic Sequence Number (Low-Order 32 Bits) */
- ND_TCHECK2(*cp, 4);
+ ND_TCHECK_4(cp);
ND_PRINT((ndo, ":%08x", EXTRACT_BE_U_4(cp)));
cp += 4;
/* Authentication Data */
diff --git a/print-otv.c b/print-otv.c
index b500c2f6..f4daacfa 100644
--- a/print-otv.c
+++ b/print-otv.c
@@ -54,11 +54,11 @@ otv_print(netdissect_options *ndo, const u_char *bp, u_int len)
ND_PRINT((ndo, "flags [%s] (0x%02x), ", flags & 0x08 ? "I" : ".", flags));
bp += 1;
- ND_TCHECK2(*bp, 3);
+ ND_TCHECK_3(bp);
ND_PRINT((ndo, "overlay %u, ", EXTRACT_BE_U_3(bp)));
bp += 3;
- ND_TCHECK2(*bp, 3);
+ ND_TCHECK_3(bp);
ND_PRINT((ndo, "instance %u\n", EXTRACT_BE_U_3(bp)));
bp += 3;
diff --git a/print-pgm.c b/print-pgm.c
index 723a074d..aee7d574 100644
--- a/print-pgm.c
+++ b/print-pgm.c
@@ -459,7 +459,7 @@ pgm_print(netdissect_options *ndo,
ND_PRINT((ndo, "[Total option length leaves no room for final option]"));
return;
}
- if (!ND_TTEST2(*bp, 2)) {
+ if (!ND_TTEST_2(bp)) {
ND_PRINT((ndo, " [|OPT]"));
return;
}
@@ -521,7 +521,7 @@ pgm_print(netdissect_options *ndo,
ND_PRINT((ndo, "[Option length not a multiple of 4]"));
return;
}
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
ND_PRINT((ndo, " %u", EXTRACT_BE_U_4(bp)));
bp += 4;
opt_len -= 4;
diff --git a/print-pim.c b/print-pim.c
index 1674537e..5c5cdf40 100644
--- a/print-pim.c
+++ b/print-pim.c
@@ -179,7 +179,7 @@ pimv1_join_prune_print(netdissect_options *ndo,
len -= 4;
if (len < 4)
goto trunc;
- ND_TCHECK2(bp[2], 2);
+ ND_TCHECK_2(bp + 2);
if (ndo->ndo_vflag > 1)
ND_PRINT((ndo, "\n"));
ND_PRINT((ndo, " Hold time: "));
@@ -191,7 +191,7 @@ pimv1_join_prune_print(netdissect_options *ndo,
if (len < 4)
goto trunc;
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
ngroups = bp[3];
bp += 4;
len -= 4;
@@ -215,7 +215,7 @@ pimv1_join_prune_print(netdissect_options *ndo,
len -= 4;
if (len < 4)
goto trunc;
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
njoin = EXTRACT_BE_U_2(bp);
nprune = EXTRACT_BE_U_2(bp + 2);
ND_PRINT((ndo, " joined: %d pruned: %d", njoin, nprune));
@@ -230,7 +230,7 @@ pimv1_join_prune_print(netdissect_options *ndo,
type = "Prune";
if (len < 6)
goto trunc;
- ND_TCHECK2(bp[0], 6);
+ ND_TCHECK_6(bp);
ND_PRINT((ndo, "\n\t%s %s%s%s%s/%d", type,
(bp[0] & 0x01) ? "Sparse " : "Dense ",
(bp[1] & 0x80) ? "WC " : "",
@@ -276,7 +276,7 @@ pimv1_print(netdissect_options *ndo,
}
}
if (ndo->ndo_vflag) {
- ND_TCHECK2(bp[10],2);
+ ND_TCHECK_2(bp + 10);
ND_PRINT((ndo, " (Hold-time "));
unsigned_relts_print(ndo, EXTRACT_BE_U_2(bp + 10));
ND_PRINT((ndo, ")"));
@@ -295,7 +295,7 @@ pimv1_print(netdissect_options *ndo,
break;
case PIMV1_TYPE_RP_REACHABILITY:
if (ndo->ndo_vflag) {
- ND_TCHECK2(bp[22], 2);
+ ND_TCHECK_2(bp + 22);
ND_PRINT((ndo, " group %s", ipaddr_string(ndo, &bp[8])));
if (EXTRACT_BE_U_4(bp + 12) != 0xffffffff)
ND_PRINT((ndo, "/%s", ipaddr_string(ndo, &bp[12])));
@@ -309,7 +309,7 @@ pimv1_print(netdissect_options *ndo,
ipaddr_string(ndo, &bp[8])));
if (EXTRACT_BE_U_4(bp + 12) != 0xffffffff)
ND_PRINT((ndo, "/%s", ipaddr_string(ndo, &bp[12])));
- ND_TCHECK2(bp[24], 4);
+ ND_TCHECK_4(bp + 24);
ND_PRINT((ndo, " %s pref %d metric %d",
(bp[20] & 0x80) ? "RP-tree" : "SPT",
EXTRACT_BE_U_4(bp + 20) & 0x7fffffff,
@@ -369,7 +369,7 @@ cisco_autorp_print(netdissect_options *ndo,
ND_TCHECK(bp[1]);
numrps = bp[1];
- ND_TCHECK2(bp[2], 2);
+ ND_TCHECK_2(bp + 2);
ND_PRINT((ndo, " Hold "));
hold = EXTRACT_BE_U_2(bp + 2);
if (hold)
@@ -400,7 +400,7 @@ cisco_autorp_print(netdissect_options *ndo,
if (len < 4)
goto trunc;
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
ND_PRINT((ndo, " RP %s", ipaddr_string(ndo, bp)));
bp += 4;
len -= 4;
@@ -431,7 +431,7 @@ cisco_autorp_print(netdissect_options *ndo,
for (; nentries; nentries--) {
if (len < 6)
goto trunc;
- ND_TCHECK2(bp[0], 6);
+ ND_TCHECK_6(bp);
ND_PRINT((ndo, "%c%s%s/%d", s, bp[0] & 1 ? "!" : "",
ipaddr_string(ndo, &bp[2]), bp[1]));
if (bp[0] & 0x02) {
@@ -759,7 +759,7 @@ pimv2_print(netdissect_options *ndo,
while (len > 0) {
if (len < 4)
goto trunc;
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
otype = EXTRACT_BE_U_2(bp);
olen = EXTRACT_BE_U_2(bp + 2);
ND_PRINT((ndo, "\n\t %s Option (%u), length %u, Value: ",
@@ -975,7 +975,7 @@ pimv2_print(netdissect_options *ndo,
}
if (len < 4)
goto trunc;
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
ngroup = bp[1];
holdtime = EXTRACT_BE_U_2(bp + 2);
ND_PRINT((ndo, "\n\t %u group(s)", ngroup));
@@ -994,7 +994,7 @@ pimv2_print(netdissect_options *ndo,
bp += advance; len -= advance;
if (len < 4)
goto trunc;
- ND_TCHECK2(*bp, 4);
+ ND_TCHECK_4(bp);
njoin = EXTRACT_BE_U_2(bp);
nprune = EXTRACT_BE_U_2(bp + 2);
ND_PRINT((ndo, ", joined sources: %u, pruned sources: %u", njoin, nprune));
@@ -1107,7 +1107,7 @@ pimv2_print(netdissect_options *ndo,
bp += advance; len -= advance;
if (len < 8)
goto trunc;
- ND_TCHECK2(*bp, 8);
+ ND_TCHECK_8(bp);
if (bp[0] & 0x80)
ND_PRINT((ndo, " RPT"));
ND_PRINT((ndo, " pref=%u", EXTRACT_BE_U_4(bp) & 0x7fffffff));
diff --git a/print-ppp.c b/print-ppp.c
index d17420f5..b62fd37c 100644
--- a/print-ppp.c
+++ b/print-ppp.c
@@ -426,7 +426,7 @@ handle_ctrl_proto(netdissect_options *ndo,
if (length < 4) /* FIXME weak boundary checking */
goto trunc;
- ND_TCHECK2(*tptr, 2);
+ ND_TCHECK_2(tptr);
code = EXTRACT_U_1(tptr);
tptr++;
@@ -597,7 +597,7 @@ print_lcp_config_options(netdissect_options *ndo,
if (length < 2)
return 0;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
opt = EXTRACT_U_1(p);
len = EXTRACT_U_1(p + 1);
if (length < len)
@@ -743,7 +743,7 @@ print_lcp_config_options(netdissect_options *ndo,
ND_PRINT((ndo, " (length bogus, should be = 7)"));
return 0;
}
- ND_TCHECK2(*(p + 3), 4);
+ ND_TCHECK_4(p + 3);
ND_PRINT((ndo, ": IPv4 %s", ipaddr_string(ndo, p + 3)));
break;
case MEDCLASS_MAC:
@@ -751,7 +751,7 @@ print_lcp_config_options(netdissect_options *ndo,
ND_PRINT((ndo, " (length bogus, should be = 9)"));
return 0;
}
- ND_TCHECK2(*(p + 3), 6);
+ ND_TCHECK_6(p + 3);
ND_PRINT((ndo, ": MAC %s", etheraddr_string(ndo, p + 3)));
break;
case MEDCLASS_MNB:
@@ -1048,7 +1048,7 @@ print_ipcp_config_options(netdissect_options *ndo,
if (length < 2)
return 0;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
opt = EXTRACT_U_1(p);
len = EXTRACT_U_1(p + 1);
if (length < len)
@@ -1072,7 +1072,7 @@ print_ipcp_config_options(netdissect_options *ndo,
ND_PRINT((ndo, " (length bogus, should be = 10)"));
return len;
}
- ND_TCHECK2(*(p + 6), 4);
+ ND_TCHECK_4(p + 6);
ND_PRINT((ndo, ": src %s, dst %s",
ipaddr_string(ndo, p + 2),
ipaddr_string(ndo, p + 6)));
@@ -1117,7 +1117,7 @@ print_ipcp_config_options(netdissect_options *ndo,
ND_PRINT((ndo, "\n\t Suboptions, length %u", ipcomp_subopttotallen));
while (ipcomp_subopttotallen >= 2) {
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
ipcomp_subopt = EXTRACT_U_1(p);
ipcomp_suboptlen = EXTRACT_U_1(p + 1);
@@ -1154,7 +1154,7 @@ print_ipcp_config_options(netdissect_options *ndo,
ND_PRINT((ndo, " (length bogus, should be = 6)"));
return 0;
}
- ND_TCHECK2(*(p + 2), 4);
+ ND_TCHECK_4(p + 2);
ND_PRINT((ndo, ": %s", ipaddr_string(ndo, p + 2)));
break;
default:
@@ -1184,7 +1184,7 @@ print_ip6cp_config_options(netdissect_options *ndo,
if (length < 2)
return 0;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
opt = EXTRACT_U_1(p);
len = EXTRACT_U_1(p + 1);
if (length < len)
@@ -1208,7 +1208,7 @@ print_ip6cp_config_options(netdissect_options *ndo,
ND_PRINT((ndo, " (length bogus, should be = 10)"));
return len;
}
- ND_TCHECK2(*(p + 2), 8);
+ ND_TCHECK_8(p + 2);
ND_PRINT((ndo, ": %04x:%04x:%04x:%04x",
EXTRACT_BE_U_2(p + 2),
EXTRACT_BE_U_2(p + 4),
@@ -1244,7 +1244,7 @@ print_ccp_config_options(netdissect_options *ndo,
if (length < 2)
return 0;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
opt = EXTRACT_U_1(p);
len = EXTRACT_U_1(p + 1);
if (length < len)
@@ -1343,7 +1343,7 @@ print_bacp_config_options(netdissect_options *ndo,
if (length < 2)
return 0;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
opt = EXTRACT_U_1(p);
len = EXTRACT_U_1(p + 1);
if (length < len)
diff --git a/print-pppoe.c b/print-pppoe.c
index 85af9f09..74ebcbc7 100644
--- a/print-pppoe.c
+++ b/print-pppoe.c
@@ -141,7 +141,7 @@ pppoe_print(netdissect_options *ndo, register const u_char *bp, u_int length)
* tag_type is previous tag or 0xffff for first iteration
*/
while (tag_type && p < pppoe_payload + pppoe_length) {
- ND_TCHECK2(*p, 4);
+ ND_TCHECK_4(p);
tag_type = EXTRACT_BE_U_2(p);
tag_len = EXTRACT_BE_U_2(p + 2);
p += 4;
diff --git a/print-radius.c b/print-radius.c
index 2e7dd78d..403db1d3 100644
--- a/print-radius.c
+++ b/print-radius.c
@@ -655,7 +655,7 @@ print_vendor_attr(netdissect_options *ndo,
if (length < 4)
goto trunc;
- ND_TCHECK2(*data, 4);
+ ND_TCHECK_4(data);
vendor_id = EXTRACT_BE_U_4(data);
data+=4;
length-=4;
@@ -665,7 +665,7 @@ print_vendor_attr(netdissect_options *ndo,
vendor_id));
while (length >= 2) {
- ND_TCHECK2(*data, 2);
+ ND_TCHECK_2(data);
vendor_type = *(data);
vendor_length = EXTRACT_U_1(data + 1);
@@ -721,7 +721,7 @@ print_attr_num(netdissect_options *ndo,
return;
}
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
/* This attribute has standard values */
if (attr_type[attr_code].siz_subtypes)
{
@@ -842,7 +842,7 @@ print_attr_address(netdissect_options *ndo,
return;
}
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
switch(attr_code)
{
@@ -885,7 +885,7 @@ print_attr_address6(netdissect_options *ndo,
return;
}
- ND_TCHECK2(data[0], 16);
+ ND_TCHECK_16(data);
ND_PRINT((ndo, "%s", ip6addr_string(ndo, data)));
@@ -949,7 +949,7 @@ print_attr_time(netdissect_options *ndo,
return;
}
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
attr_time = EXTRACT_BE_U_4(data);
strlcpy(string, ctime(&attr_time), sizeof(string));
@@ -985,11 +985,11 @@ print_attr_strange(netdissect_options *ndo,
return;
}
ND_PRINT((ndo, "User_challenge ("));
- ND_TCHECK2(data[0],8);
+ ND_TCHECK_8(data);
len_data = 8;
PRINT_HEX(len_data, data);
ND_PRINT((ndo, ") User_resp("));
- ND_TCHECK2(data[0],8);
+ ND_TCHECK_8(data);
len_data = 8;
PRINT_HEX(len_data, data);
ND_PRINT((ndo, ")"));
@@ -1001,25 +1001,25 @@ print_attr_strange(netdissect_options *ndo,
ND_PRINT((ndo, "ERROR: length %u != 14", length));
return;
}
- ND_TCHECK2(data[0],1);
+ ND_TCHECK_1(data);
if (*data)
ND_PRINT((ndo, "User can change password"));
else
ND_PRINT((ndo, "User cannot change password"));
data++;
- ND_TCHECK2(data[0],1);
+ ND_TCHECK_1(data);
ND_PRINT((ndo, ", Min password length: %d", *data));
data++;
ND_PRINT((ndo, ", created at: "));
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
len_data = 4;
PRINT_HEX(len_data, data);
ND_PRINT((ndo, ", expires in: "));
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
len_data = 4;
PRINT_HEX(len_data, data);
ND_PRINT((ndo, ", Current Time: "));
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
len_data = 4;
PRINT_HEX(len_data, data);
break;
@@ -1030,7 +1030,7 @@ print_attr_strange(netdissect_options *ndo,
ND_PRINT((ndo, "ERROR: length %u != 8", length));
return;
}
- ND_TCHECK2(data[0],8);
+ ND_TCHECK_8(data);
len_data = 8;
PRINT_HEX(len_data, data);
break;
@@ -1041,7 +1041,7 @@ print_attr_strange(netdissect_options *ndo,
ND_PRINT((ndo, "Error: length %u != 4", length));
return;
}
- ND_TCHECK2(data[0],4);
+ ND_TCHECK_4(data);
error_cause_value = EXTRACT_BE_U_4(data);
ND_PRINT((ndo, "Error cause %u: %s", error_cause_value, tok2str(errorcausetype, "Error-Cause %u not known", error_cause_value)));
diff --git a/print-rrcp.c b/print-rrcp.c
index 5b612e83..0dbb6faf 100644
--- a/print-rrcp.c
+++ b/print-rrcp.c
@@ -114,19 +114,19 @@ rrcp_print(netdissect_options *ndo,
tok2str(opcode_values,"unknown opcode (0x%02x)",rrcp_opcode)));
}
if (rrcp_opcode==1 || rrcp_opcode==2){
- ND_TCHECK2(*(cp + RRCP_REG_ADDR_OFFSET), 6);
+ ND_TCHECK_6(cp + RRCP_REG_ADDR_OFFSET);
ND_PRINT((ndo, " addr=0x%04x, data=0x%08x",
EXTRACT_LE_U_2(cp + RRCP_REG_ADDR_OFFSET),
EXTRACT_LE_U_4(cp + RRCP_REG_DATA_OFFSET)));
}
if (rrcp_proto==1){
- ND_TCHECK2(*(cp + RRCP_AUTHKEY_OFFSET), 2);
+ ND_TCHECK_2(cp + RRCP_AUTHKEY_OFFSET);
ND_PRINT((ndo, ", auth=0x%04x",
EXTRACT_BE_U_2(cp + RRCP_AUTHKEY_OFFSET)));
}
if (rrcp_proto==1 && rrcp_opcode==0 &&
((*(cp + RRCP_OPCODE_ISREPLY_OFFSET)) & RRCP_ISREPLY)){
- ND_TCHECK2(*(cp + RRCP_VENDOR_ID_OFFSET), 4);
+ ND_TCHECK_4(cp + RRCP_VENDOR_ID_OFFSET);
ND_PRINT((ndo, " downlink_port=%d, uplink_port=%d, uplink_mac=%s, vendor_id=%08x ,chip_id=%04x ",
*(cp + RRCP_DOWNLINK_PORT_OFFSET),
*(cp + RRCP_UPLINK_PORT_OFFSET),
@@ -134,7 +134,7 @@ rrcp_print(netdissect_options *ndo,
EXTRACT_BE_U_4(cp + RRCP_VENDOR_ID_OFFSET),
EXTRACT_BE_U_2(cp + RRCP_CHIP_ID_OFFSET)));
}else if (rrcp_opcode==1 || rrcp_opcode==2 || rrcp_proto==2){
- ND_TCHECK2(*(cp + RRCP_COOKIE2_OFFSET), 4);
+ ND_TCHECK_4(cp + RRCP_COOKIE2_OFFSET);
ND_PRINT((ndo, ", cookie=0x%08x%08x ",
EXTRACT_BE_U_4(cp + RRCP_COOKIE2_OFFSET),
EXTRACT_BE_U_4(cp + RRCP_COOKIE1_OFFSET)));
diff --git a/print-rsvp.c b/print-rsvp.c
index 6b1fe90f..8d82e356 100644
--- a/print-rsvp.c
+++ b/print-rsvp.c
@@ -500,7 +500,7 @@ rsvp_intserv_print(netdissect_options *ndo,
if (obj_tlen < 4)
return 0;
parameter_id = *(tptr);
- ND_TCHECK2(*(tptr + 2), 2);
+ ND_TCHECK_2(tptr + 2);
parameter_length = EXTRACT_BE_U_2(tptr + 2)<<2; /* convert wordcount to bytecount */
ND_PRINT((ndo, "\n\t Parameter ID: %s (%u), length: %u, Flags: [0x%02x]",
@@ -522,7 +522,7 @@ rsvp_intserv_print(netdissect_options *ndo,
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
if (parameter_length == 4) {
- ND_TCHECK2(*(tptr + 4), 4);
+ ND_TCHECK_4(tptr + 4);
ND_PRINT((ndo, "\n\t\tIS hop count: %u", EXTRACT_BE_U_4(tptr + 4)));
}
break;
@@ -536,7 +536,7 @@ rsvp_intserv_print(netdissect_options *ndo,
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
if (parameter_length == 4) {
- ND_TCHECK2(*(tptr + 4), 4);
+ ND_TCHECK_4(tptr + 4);
bw.i = EXTRACT_BE_U_4(tptr + 4);
ND_PRINT((ndo, "\n\t\tPath b/w estimate: %.10g Mbps", bw.f / 125000));
}
@@ -551,7 +551,7 @@ rsvp_intserv_print(netdissect_options *ndo,
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
if (parameter_length == 4) {
- ND_TCHECK2(*(tptr + 4), 4);
+ ND_TCHECK_4(tptr + 4);
ND_PRINT((ndo, "\n\t\tMinimum path latency: "));
if (EXTRACT_BE_U_4(tptr + 4) == 0xffffffff)
ND_PRINT((ndo, "don't care"));
@@ -570,7 +570,7 @@ rsvp_intserv_print(netdissect_options *ndo,
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
if (parameter_length == 4) {
- ND_TCHECK2(*(tptr + 4), 4);
+ ND_TCHECK_4(tptr + 4);
ND_PRINT((ndo, "\n\t\tComposed MTU: %u bytes", EXTRACT_BE_U_4(tptr + 4)));
}
break;
@@ -616,7 +616,7 @@ rsvp_intserv_print(netdissect_options *ndo,
*/
if (parameter_length == 8) {
- ND_TCHECK2(*(tptr + 4), 8);
+ ND_TCHECK_8(tptr + 4);
bw.i = EXTRACT_BE_U_4(tptr + 4);
ND_PRINT((ndo, "\n\t\tRate: %.10g Mbps", bw.f / 125000));
ND_PRINT((ndo, "\n\t\tSlack Term: %u", EXTRACT_BE_U_4(tptr + 8)));
@@ -628,7 +628,7 @@ rsvp_intserv_print(netdissect_options *ndo,
case 135:
case 136:
if (parameter_length == 4) {
- ND_TCHECK2(*(tptr + 4), 4);
+ ND_TCHECK_4(tptr + 4);
ND_PRINT((ndo, "\n\t\tValue: %u", EXTRACT_BE_U_4(tptr + 4)));
}
break;
@@ -1068,7 +1068,7 @@ rsvp_obj_print(netdissect_options *ndo,
while(obj_tlen >= 4 ) {
u_char length;
- ND_TCHECK2(*obj_tptr, 4);
+ ND_TCHECK_4(obj_tptr);
length = EXTRACT_U_1(obj_tptr + 1);
ND_PRINT((ndo, "%s Subobject Type: %s, length %u",
indent,
@@ -1090,7 +1090,7 @@ rsvp_obj_print(netdissect_options *ndo,
ND_PRINT((ndo, " ERROR: length != 8"));
goto invalid;
}
- ND_TCHECK2(*obj_tptr, 8);
+ ND_TCHECK_8(obj_tptr);
prefix_length = EXTRACT_U_1(obj_tptr + 6);
if (prefix_length != 32) {
ND_PRINT((ndo, " ERROR: Prefix length %u != 32",
@@ -1110,7 +1110,7 @@ rsvp_obj_print(netdissect_options *ndo,
ND_PRINT((ndo, " ERROR: length != 8"));
goto invalid;
}
- ND_TCHECK2(*obj_tptr, 8);
+ ND_TCHECK_8(obj_tptr);
ND_PRINT((ndo, ", Flags: [%s] (%#x), Class-Type: %s (%u), %u",
bittok2str(rsvp_obj_rro_label_flag_values,
"none",
diff --git a/print-rx.c b/print-rx.c
index 99545d48..f6e738d7 100644
--- a/print-rx.c
+++ b/print-rx.c
@@ -948,7 +948,7 @@ fs_print(netdissect_options *ndo,
{
char a[AFSOPAQUEMAX+1];
FIDOUT();
- ND_TCHECK2(bp[0], 4);
+ ND_TCHECK_4(bp);
i = EXTRACT_BE_U_4(bp);
bp += sizeof(uint32_t);
ND_TCHECK2(bp[0], i);
diff --git a/print-slow.c b/print-slow.c
index 2e2479ea..a4064ed4 100644
--- a/print-slow.c
+++ b/print-slow.c
@@ -620,7 +620,7 @@ slow_oam_print(netdissect_options *ndo,
/* Sequence number */
if (tlen < 2)
goto tooshort;
- ND_TCHECK2(*tptr, 2);
+ ND_TCHECK_2(tptr);
ND_PRINT((ndo, "\n\t Sequence Number %u", EXTRACT_BE_U_2(tptr)));
tlen -= 2;
tptr += 2;
diff --git a/print-smb.c b/print-smb.c
index b652b006..a9b6a4a0 100644
--- a/print-smb.c
+++ b/print-smb.c
@@ -113,7 +113,7 @@ trans2_qfsinfo(netdissect_options *ndo,
const char *fmt="";
if (request) {
- ND_TCHECK2(*param, 2);
+ ND_TCHECK_2(param);
level = EXTRACT_LE_U_2(param);
fmt = "InfoLevel=[d]\n";
smb_fdata(ndo, param, fmt, param + pcnt, unicodestr);
@@ -181,7 +181,7 @@ print_trans2(netdissect_options *ndo,
ND_TCHECK(words[0]);
if (request) {
- ND_TCHECK2(w[14 * 2], 2);
+ ND_TCHECK_2(w + (14 * 2));
pcnt = EXTRACT_LE_U_2(w + 9 * 2);
param = buf + EXTRACT_LE_U_2(w + 10 * 2);
dcnt = EXTRACT_LE_U_2(w + 11 * 2);
@@ -193,7 +193,7 @@ print_trans2(netdissect_options *ndo,
ND_PRINT((ndo, "Trans2Interim\n"));
return;
}
- ND_TCHECK2(w[7 * 2], 2);
+ ND_TCHECK_2(w + (7 * 2));
pcnt = EXTRACT_LE_U_2(w + 3 * 2);
param = buf + EXTRACT_LE_U_2(w + 4 * 2);
dcnt = EXTRACT_LE_U_2(w + 6 * 2);
@@ -223,7 +223,7 @@ print_trans2(netdissect_options *ndo,
f2 = fn->descript.rep_f2;
}
- ND_TCHECK2(*dat, 2);
+ ND_TCHECK_2(dat);
bcc = EXTRACT_LE_U_2(dat);
ND_PRINT((ndo, "smb_bcc=%u\n", bcc));
if (fn->descript.fn)
@@ -342,7 +342,7 @@ print_trans(netdissect_options *ndo,
int datalen, paramlen;
if (request) {
- ND_TCHECK2(w[12 * 2], 2);
+ ND_TCHECK_2(w + (12 * 2));
paramlen = EXTRACT_LE_U_2(w + 9 * 2);
param = buf + EXTRACT_LE_U_2(w + 10 * 2);
datalen = EXTRACT_LE_U_2(w + 11 * 2);
@@ -352,7 +352,7 @@ print_trans(netdissect_options *ndo,
f3 = "|Param ";
f4 = "|Data ";
} else {
- ND_TCHECK2(w[7 * 2], 2);
+ ND_TCHECK_2(w + (7 * 2));
paramlen = EXTRACT_LE_U_2(w + 3 * 2);
param = buf + EXTRACT_LE_U_2(w + 4 * 2);
datalen = EXTRACT_LE_U_2(w + 6 * 2);
@@ -366,7 +366,7 @@ print_trans(netdissect_options *ndo,
smb_fdata(ndo, words + 1, f1, min(words + 1 + 2 * words[0], maxbuf),
unicodestr);
- ND_TCHECK2(*data1, 2);
+ ND_TCHECK_2(data1);
bcc = EXTRACT_LE_U_2(data1);
ND_PRINT((ndo, "smb_bcc=%u\n", bcc));
if (bcc > 0) {
@@ -419,7 +419,7 @@ print_negprot(netdissect_options *ndo,
else
smb_print_data(ndo, words + 1, min(wct * 2, PTR_DIFF(maxbuf, words + 1)));
- ND_TCHECK2(*data, 2);
+ ND_TCHECK_2(data);
bcc = EXTRACT_LE_U_2(data);
ND_PRINT((ndo, "smb_bcc=%u\n", bcc));
if (bcc > 0) {
@@ -464,7 +464,7 @@ print_sesssetup(netdissect_options *ndo,
else
smb_print_data(ndo, words + 1, min(wct * 2, PTR_DIFF(maxbuf, words + 1)));
- ND_TCHECK2(*data, 2);
+ ND_TCHECK_2(data);
bcc = EXTRACT_LE_U_2(data);
ND_PRINT((ndo, "smb_bcc=%u\n", bcc));
if (bcc > 0) {
@@ -505,7 +505,7 @@ print_lockingandx(netdissect_options *ndo,
if (wct)
smb_fdata(ndo, words + 1, f1, maxwords, unicodestr);
- ND_TCHECK2(*data, 2);
+ ND_TCHECK_2(data);
bcc = EXTRACT_LE_U_2(data);
ND_PRINT((ndo, "smb_bcc=%u\n", bcc));
if (bcc > 0) {
@@ -873,14 +873,14 @@ print_smb(netdissect_options *ndo,
int v;
for (i = 0; &words[1 + 2 * i] < maxwords; i++) {
- ND_TCHECK2(words[1 + 2 * i], 2);
+ ND_TCHECK_2(words + (1 + 2 * i));
v = EXTRACT_LE_U_2(words + 1 + 2 * i);
ND_PRINT((ndo, "smb_vwv[%d]=%d (0x%X)\n", i, v, v));
}
}
}
- ND_TCHECK2(*data, 2);
+ ND_TCHECK_2(data);
bcc = EXTRACT_LE_U_2(data);
ND_PRINT((ndo, "smb_bcc=%u\n", bcc));
if (f2) {
@@ -902,7 +902,7 @@ print_smb(netdissect_options *ndo,
command = words[1];
if (command == 0xFF)
break;
- ND_TCHECK2(words[3], 2);
+ ND_TCHECK_2(words + 3);
newsmboffset = EXTRACT_LE_U_2(words + 3);
fn = smbfind(command, smb_fns);
@@ -1109,7 +1109,7 @@ nbt_udp137_print(netdissect_options *ndo,
const u_char *p;
int total, i;
- ND_TCHECK2(data[10], 2);
+ ND_TCHECK_2(data + 10);
name_trn_id = EXTRACT_BE_U_2(data);
response = (data[2] >> 7);
opcode = (data[2] >> 3) & 0xF;
diff --git a/print-syslog.c b/print-syslog.c
index 4f613f0a..e69d58cd 100644
--- a/print-syslog.c
+++ b/print-syslog.c
@@ -90,16 +90,16 @@ syslog_print(netdissect_options *ndo,
* severity and facility values
*/
- ND_TCHECK2(*pptr, 1);
+ ND_TCHECK_1(pptr);
if (*(pptr+msg_off) == '<') {
msg_off++;
- ND_TCHECK2(*(pptr + msg_off), 1);
+ ND_TCHECK_1(pptr + msg_off);
while (msg_off <= SYSLOG_MAX_DIGITS &&
*(pptr+msg_off) >= '0' &&
*(pptr+msg_off) <= '9') {
pri = pri * 10 + (*(pptr+msg_off) - '0');
msg_off++;
- ND_TCHECK2(*(pptr + msg_off), 1);
+ ND_TCHECK_1(pptr + msg_off);
}
if (*(pptr+msg_off) != '>') {
ND_PRINT((ndo, "%s", tstr));
@@ -132,7 +132,7 @@ syslog_print(netdissect_options *ndo,
/* print the syslog text in verbose mode */
for (; msg_off < len; msg_off++) {
- ND_TCHECK2(*(pptr + msg_off), 1);
+ ND_TCHECK_1(pptr + msg_off);
safeputchar(ndo, *(pptr + msg_off));
}
diff --git a/print-tcp.c b/print-tcp.c
index b60a5c4b..2fae1e2b 100644
--- a/print-tcp.c
+++ b/print-tcp.c
@@ -733,7 +733,7 @@ tcp_print(netdissect_options *ndo,
ldp_print(ndo, bp, length);
}
else if ((IS_SRC_OR_DST_PORT(NFS_PORT)) &&
- length >= 4 && ND_TTEST2(*bp, 4)) {
+ length >= 4 && ND_TTEST_4(bp)) {
/*
* If data present, header length valid, and NFS port used,
* assume NFS.
diff --git a/print-telnet.c b/print-telnet.c
index 10fad9fe..fe461baf 100644
--- a/print-telnet.c
+++ b/print-telnet.c
@@ -56,6 +56,7 @@
#include <stdio.h>
#include "netdissect.h"
+#include "extract.h"
static const char tstr[] = " [|telnet]";
@@ -437,7 +438,7 @@ telnet_parse(netdissect_options *ndo, const u_char *sp, u_int length, int print)
/* IAC SB .... IAC SE */
p = sp;
while (length > (u_int)(p + 1 - sp)) {
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
if (p[0] == IAC && p[1] == SE)
break;
p++;
diff --git a/print-udld.c b/print-udld.c
index 69bdea46..6833ed68 100644
--- a/print-udld.c
+++ b/print-udld.c
@@ -129,7 +129,7 @@ udld_print (netdissect_options *ndo, const u_char *pptr, u_int length)
while (tptr < (pptr+length)) {
- ND_TCHECK2(*tptr, 4);
+ ND_TCHECK_4(tptr);
type = EXTRACT_BE_U_2(tptr);
len = EXTRACT_BE_U_2(tptr + 2);
diff --git a/print-vtp.c b/print-vtp.c
index dd9cb2c8..d10692da 100644
--- a/print-vtp.c
+++ b/print-vtp.c
@@ -180,7 +180,7 @@ vtp_print (netdissect_options *ndo,
*
*/
- ND_TCHECK2(*tptr, 8);
+ ND_TCHECK_8(tptr);
ND_PRINT((ndo, "\n\t Config Rev %x, Updater %s",
EXTRACT_BE_U_4(tptr),
ipaddr_string(ndo, tptr+4)));
@@ -286,7 +286,7 @@ vtp_print (netdissect_options *ndo,
*/
if (len < 2)
goto trunc;
- ND_TCHECK2(*tptr, 2);
+ ND_TCHECK_2(tptr);
type = *tptr;
tlv_len = EXTRACT_U_1(tptr + 1);
@@ -376,7 +376,7 @@ vtp_print (netdissect_options *ndo,
*
*/
- ND_TCHECK2(*tptr, 4);
+ ND_TCHECK_4(tptr);
ND_PRINT((ndo, "\n\tStart value: %u", EXTRACT_BE_U_4(tptr)));
break;
diff --git a/print-zeromq.c b/print-zeromq.c
index 41d636c2..8d34fc6a 100644
--- a/print-zeromq.c
+++ b/print-zeromq.c
@@ -80,7 +80,7 @@ zmtp1_print_frame(netdissect_options *ndo, const u_char *cp, const u_char *ep)
uint8_t flags;
ND_PRINT((ndo, "\n\t"));
- ND_TCHECK2(*cp, 1); /* length/0xFF */
+ ND_TCHECK_1(cp); /* length/0xFF */
if (cp[0] != 0xFF) {
header_len = 1; /* length */
@@ -172,7 +172,7 @@ zmtp1_print_intermediate_part(netdissect_options *ndo, const u_char *cp, const u
u_int frame_offset;
uint64_t remaining_len;
- ND_TCHECK2(*cp, 2);
+ ND_TCHECK_2(cp);
frame_offset = EXTRACT_BE_U_2(cp);
ND_PRINT((ndo, "\n\t frame offset 0x%04x", frame_offset));
cp += 2;
diff --git a/smbutil.c b/smbutil.c
index 8b4b9c69..c6c06524 100644
--- a/smbutil.c
+++ b/smbutil.c
@@ -132,7 +132,7 @@ name_interpret(netdissect_options *ndo,
if (in >= maxbuf)
return(-1); /* name goes past the end of the buffer */
- ND_TCHECK2(*in, 1);
+ ND_TCHECK_1(in);
len = EXTRACT_U_1(in) / 2;
in++;
@@ -142,7 +142,7 @@ name_interpret(netdissect_options *ndo,
return(0);
while (len--) {
- ND_TCHECK2(*in, 2);
+ ND_TCHECK_2(in);
if (in + 1 >= maxbuf)
return(-1); /* name goes past the end of the buffer */
if (in[0] < 'A' || in[0] > 'P' || in[1] < 'A' || in[1] > 'P') {
@@ -175,7 +175,7 @@ name_ptr(netdissect_options *ndo,
p = buf + ofs;
if (p >= maxbuf)
return(NULL); /* name goes past the end of the buffer */
- ND_TCHECK2(*p, 1);
+ ND_TCHECK_1(p);
c = *p;
@@ -183,7 +183,7 @@ name_ptr(netdissect_options *ndo,
if ((c & 0xC0) == 0xC0) {
uint16_t l;
- ND_TCHECK2(*p, 2);
+ ND_TCHECK_2(p);
if ((p + 1) >= maxbuf)
return(NULL); /* name goes past the end of the buffer */
l = EXTRACT_BE_U_2(p) & 0x3FFF;
@@ -194,7 +194,7 @@ name_ptr(netdissect_options *ndo,
p = buf + l;
if (p >= maxbuf)
return(NULL); /* name goes past the end of the buffer */
- ND_TCHECK2(*p, 1);
+ ND_TCHECK_1(p);
}
return(p);
@@ -374,7 +374,7 @@ unistr(netdissect_options *ndo,
strsize = *len - 1;
} else {
for (;;) {
- ND_TCHECK2(sp[0], 2);
+ ND_TCHECK_2(sp);
*len += 2;
if (sp[0] == 0 && sp[1] == 0)
break;
@@ -406,7 +406,7 @@ unistr(netdissect_options *ndo,
}
} else {
while (strsize != 0) {
- ND_TCHECK2(s[0], 2);
+ ND_TCHECK_2(s);
if (l >= MAX_UNISTR_SIZE)
break;
if (s[1] == 0 && ND_ISPRINT(s[0])) {
@@ -450,7 +450,7 @@ smb_fdata1(netdissect_options *ndo,
break;
case 'A':
- ND_TCHECK2(buf[0], 2);
+ ND_TCHECK_2(buf);
write_bits(ndo, EXTRACT_LE_U_2(buf), attrib_fmt);
buf += 2;
fmt++;
@@ -504,7 +504,7 @@ smb_fdata1(netdissect_options *ndo,
case 'd':
{
unsigned int x;
- ND_TCHECK2(buf[0], 2);
+ ND_TCHECK_2(buf);
x = reverse ? EXTRACT_BE_U_2(buf) :
EXTRACT_LE_U_2(buf);
ND_PRINT((ndo, "%d (0x%x)", x, x));
@@ -515,7 +515,7 @@ smb_fdata1(netdissect_options *ndo,
case 'D':
{
unsigned int x;
- ND_TCHECK2(buf[0], 4);
+ ND_TCHECK_4(buf);
x = reverse ? EXTRACT_BE_U_4(buf) :
EXTRACT_LE_U_4(buf);
ND_PRINT((ndo, "%d (0x%x)", x, x));
@@ -526,7 +526,7 @@ smb_fdata1(netdissect_options *ndo,
case 'L':
{
uint64_t x;
- ND_TCHECK2(buf[0], 8);
+ ND_TCHECK_8(buf);
x = reverse ? EXTRACT_BE_U_8(buf) :
EXTRACT_LE_U_8(buf);
ND_PRINT((ndo, "%" PRIu64 " (0x%" PRIx64 ")", x, x));
@@ -539,7 +539,7 @@ smb_fdata1(netdissect_options *ndo,
/* Weird mixed-endian length values in 64-bit locks */
uint32_t x1, x2;
uint64_t x;
- ND_TCHECK2(buf[0], 8);
+ ND_TCHECK_8(buf);
x1 = reverse ? EXTRACT_BE_U_4(buf) :
EXTRACT_LE_U_4(buf);
x2 = reverse ? EXTRACT_BE_U_4(buf + 4) :
@@ -563,7 +563,7 @@ smb_fdata1(netdissect_options *ndo,
case 'w':
{
unsigned int x;
- ND_TCHECK2(buf[0], 2);
+ ND_TCHECK_2(buf);
x = reverse ? EXTRACT_BE_U_2(buf) :
EXTRACT_LE_U_2(buf);
ND_PRINT((ndo, "0x%X", x));
@@ -574,7 +574,7 @@ smb_fdata1(netdissect_options *ndo,
case 'W':
{
unsigned int x;
- ND_TCHECK2(buf[0], 4);
+ ND_TCHECK_4(buf);
x = reverse ? EXTRACT_BE_U_4(buf) :
EXTRACT_LE_U_4(buf);
ND_PRINT((ndo, "0x%X", x));
@@ -595,7 +595,7 @@ smb_fdata1(netdissect_options *ndo,
break;
case 'd':
- ND_TCHECK2(buf[0], 2);
+ ND_TCHECK_2(buf);
stringlen = reverse ? EXTRACT_BE_U_2(buf) :
EXTRACT_LE_U_2(buf);
ND_PRINT((ndo, "%u", stringlen));
@@ -603,7 +603,7 @@ smb_fdata1(netdissect_options *ndo,
break;
case 'D':
- ND_TCHECK2(buf[0], 4);
+ ND_TCHECK_4(buf);
stringlen = reverse ? EXTRACT_BE_U_4(buf) :
EXTRACT_LE_U_4(buf);
ND_PRINT((ndo, "%u", stringlen));
@@ -736,7 +736,7 @@ smb_fdata1(netdissect_options *ndo,
switch (atoi(fmt + 1)) {
case 1:
- ND_TCHECK2(buf[0], 4);
+ ND_TCHECK_4(buf);
x = EXTRACT_LE_U_4(buf);
if (x == 0 || x == 0xFFFFFFFF)
t = 0;
@@ -745,7 +745,7 @@ smb_fdata1(netdissect_options *ndo,
buf += 4;
break;
case 2:
- ND_TCHECK2(buf[0], 4);
+ ND_TCHECK_4(buf);
x = EXTRACT_LE_U_4(buf);
if (x == 0 || x == 0xFFFFFFFF)
t = 0;
@@ -754,7 +754,7 @@ smb_fdata1(netdissect_options *ndo,
buf += 4;
break;
case 3:
- ND_TCHECK2(buf[0], 8);
+ ND_TCHECK_8(buf);
t = interpret_long_date(buf);
buf += 8;
break;