if (ptr < 3 || ((ptr + 1) & 3) || ptr > length + 1)
ND_PRINT((ndo, " [bad ptr %u]", EXTRACT_U_1(cp + 2)));
if (ptr < 3 || ((ptr + 1) & 3) || ptr > length + 1)
ND_PRINT((ndo, " [bad ptr %u]", EXTRACT_U_1(cp + 2)));
if ((length - 4) & (hoplen-1))
ND_PRINT((ndo, "[bad length %u]", length));
if ((length - 4) & (hoplen-1))
ND_PRINT((ndo, "[bad length %u]", length));
len = 0;
if (ptr < 4 || ((ptr - 4) & (hoplen-1)) || ptr > length + 1)
ND_PRINT((ndo, "[bad ptr %u]", EXTRACT_U_1(cp + 2)));
len = 0;
if (ptr < 4 || ((ptr - 4) & (hoplen-1)) || ptr > length + 1)
ND_PRINT((ndo, "[bad ptr %u]", EXTRACT_U_1(cp + 2)));
switch (EXTRACT_U_1(cp + 3)&0xF) {
case IPOPT_TS_TSONLY:
ND_PRINT((ndo, "TSONLY"));
switch (EXTRACT_U_1(cp + 3)&0xF) {
case IPOPT_TS_TSONLY:
ND_PRINT((ndo, "TSONLY"));
if (EXTRACT_BE_U_2(cp + 2) != 0)
ND_PRINT((ndo, " value %u", EXTRACT_BE_U_2(cp + 2)));
break;
if (EXTRACT_BE_U_2(cp + 2) != 0)
ND_PRINT((ndo, " value %u", EXTRACT_BE_U_2(cp + 2)));
break;