#ifndef lint
static const char rcsid[] _U_ =
-"@(#) $Header: /tcpdump/master/tcpdump/print-pppoe.c,v 1.30 2004-08-27 03:57:41 guy Exp $ (LBL)";
+"@(#) $Header: /tcpdump/master/tcpdump/print-pppoe.c,v 1.31 2005-04-26 19:48:38 guy Exp $ (LBL)";
#endif
#ifdef HAVE_CONFIG_H
PPPOE_AC_COOKIE = 0x0104,
PPPOE_VENDOR = 0x0105,
PPPOE_RELAY_SID = 0x0110,
+ PPPOE_MAX_PAYLOAD = 0x0120,
PPPOE_SERVICE_NAME_ERROR = 0x0201,
PPPOE_AC_SYSTEM_ERROR = 0x0202,
PPPOE_GENERIC_ERROR = 0x0203
{ PPPOE_AC_COOKIE, "AC-Cookie" },
{ PPPOE_VENDOR, "Vendor-Specific" },
{ PPPOE_RELAY_SID, "Relay-Session-ID" },
+ { PPPOE_MAX_PAYLOAD, "PPP-Max-Payload" },
{ PPPOE_SERVICE_NAME_ERROR, "Service-Name-Error" },
{ PPPOE_AC_SYSTEM_ERROR, "AC-System-Error" },
{ PPPOE_GENERIC_ERROR, "Generic-Error" },
printf(" [ses 0x%x]", pppoe_sessionid);
}
- if (pppoe_length < length && length + ETHER_HDRLEN > 60) {
- /* (small packets are probably just padded up to the ethernet
- minimum of 60 bytes of data + 4 bytes of CRC) */
- printf(" [length %u (%u extra bytes)]",
- pppoe_length, length - pppoe_length);
-#if RESPECT_PAYLOAD_LENGTH
- if (snaplend > pppoe_payload+pppoe_length)
- snapend = pppoe_payload+pppoe_length;
-#else
- /* Actual PPPoE implementations appear to ignore the payload
- length and use the full ethernet frame anyways */
- pppoe_length = length;
-#endif
- }
-
if (pppoe_code) {
/* PPP session packets don't contain tags */
u_short tag_type = 0xffff, tag_len;