X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/da20bc56d6100b5275d6f85c4a25bac1dab4e57e..d7b497cac78b6e22a66a6bae9bdec60a8044f67a:/print-isakmp.c diff --git a/print-isakmp.c b/print-isakmp.c index e902b0b6..fa9fa239 100644 --- a/print-isakmp.c +++ b/print-isakmp.c @@ -922,7 +922,7 @@ ikev1_attrmap_print(netdissect_options *ndo, if (p[0] & 0x80) totlen = 4; else { - ND_TCHECK_2(&p[2]); + ND_TCHECK_2(p + 2); totlen = 4 + EXTRACT_BE_U_2(p + 2); } if (ep2 < p + totlen) { @@ -930,7 +930,7 @@ ikev1_attrmap_print(netdissect_options *ndo, return ep2 + 1; } - ND_TCHECK_2(&p[0]); + ND_TCHECK_2(p); ND_PRINT((ndo,"(")); t = EXTRACT_BE_U_2(p) & 0x7fff; if (map && t < nmap && map[t].type) @@ -939,7 +939,7 @@ ikev1_attrmap_print(netdissect_options *ndo, ND_PRINT((ndo,"type=#%d ", t)); if (p[0] & 0x80) { ND_PRINT((ndo,"value=")); - ND_TCHECK_2(&p[2]); + ND_TCHECK_2(p + 2); v = EXTRACT_BE_U_2(p + 2); if (map && t < nmap && v < map[t].nvalue && map[t].value[v]) ND_PRINT((ndo,"%s", map[t].value[v])); @@ -973,7 +973,7 @@ ikev1_attr_print(netdissect_options *ndo, const u_char *p, const u_char *ep2) if (p[0] & 0x80) totlen = 4; else { - ND_TCHECK_2(&p[2]); + ND_TCHECK_2(p + 2); totlen = 4 + EXTRACT_BE_U_2(p + 2); } if (ep2 < p + totlen) { @@ -981,7 +981,7 @@ ikev1_attr_print(netdissect_options *ndo, const u_char *p, const u_char *ep2) return ep2 + 1; } - ND_TCHECK_2(&p[0]); + ND_TCHECK_2(p); ND_PRINT((ndo,"(")); t = EXTRACT_BE_U_2(p) & 0x7fff; ND_PRINT((ndo,"type=#%d ", t)); @@ -1408,7 +1408,7 @@ ikev1_id_print(netdissect_options *ndo, u_char tpay _U_, int i; ND_PRINT((ndo," len=%d ", len)); for (i = 0; i < len; i++) - safeputchar(ndo, data[i]); + safeputchar(ndo, EXTRACT_U_1(data + i)); len = 0; break; } @@ -1421,7 +1421,8 @@ ikev1_id_print(netdissect_options *ndo, u_char tpay _U_, mask = data + sizeof(struct in_addr); ND_PRINT((ndo," len=%d %s/%u.%u.%u.%u", len, ipaddr_string(ndo, data), - mask[0], mask[1], mask[2], mask[3])); + EXTRACT_U_1(mask), EXTRACT_U_1(mask + 1), + EXTRACT_U_1(mask + 2), EXTRACT_U_1(mask + 3))); } len = 0; break; @@ -1443,10 +1444,10 @@ ikev1_id_print(netdissect_options *ndo, u_char tpay _U_, /*XXX*/ ND_PRINT((ndo," len=%d %s/0x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", len, ip6addr_string(ndo, data), - mask[0], mask[1], mask[2], mask[3], - mask[4], mask[5], mask[6], mask[7], - mask[8], mask[9], mask[10], mask[11], - mask[12], mask[13], mask[14], mask[15])); + EXTRACT_U_1(mask), EXTRACT_U_1(mask + 1), EXTRACT_U_1(mask + 2), EXTRACT_U_1(mask + 3), + EXTRACT_U_1(mask + 4), EXTRACT_U_1(mask + 5), EXTRACT_U_1(mask + 6), EXTRACT_U_1(mask + 7), + EXTRACT_U_1(mask + 8), EXTRACT_U_1(mask + 9), EXTRACT_U_1(mask + 10), EXTRACT_U_1(mask + 11), + EXTRACT_U_1(mask + 12), EXTRACT_U_1(mask + 13), EXTRACT_U_1(mask + 14), EXTRACT_U_1(mask + 15))); } len = 0; break; @@ -2260,8 +2261,8 @@ ikev2_ID_print(netdissect_options *ndo, u_char tpay, if(dumpascii) { ND_TCHECK2(*typedata, idtype_len); for(i=0; indo_vflag && 4 < len) {