return;
}
print_16bits_val(ndo, (const uint16_t *)dat);
- ND_PRINT((ndo, ", %02x", dat[2]));
+ ND_PRINT((ndo, ", %02x", EXTRACT_U_1(dat + 2)));
dat += 3;
length -= 3;
if (length != 0) {
ND_PRINT((ndo, " "));
- ND_TCHECK(*ptr); /* Flags & Length */
+ ND_TCHECK_2(ptr); /* Flags & Length */
len = EXTRACT_BE_U_2(ptr) & L2TP_AVP_HDR_LEN_MASK;
/* If it is not long enough to contain the header, we'll give up. */
/* If it goes past the end of the remaining length of the captured
data, we'll give up. */
- ND_TCHECK2(*ptr, len);
+ ND_TCHECK_LEN(ptr, len);
/*
* After this point, we don't need to check whether we go past
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) {
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;
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);