Changeset View
Changeset View
Standalone View
Standalone View
head/contrib/tcpdump/print-slow.c
Show First 20 Lines • Show All 243 Lines • ▼ Show 20 Lines | |||||
static void slow_marker_lacp_print(netdissect_options *, register const u_char *, register u_int); | static void slow_marker_lacp_print(netdissect_options *, register const u_char *, register u_int); | ||||
static void slow_oam_print(netdissect_options *, register const u_char *, register u_int); | static void slow_oam_print(netdissect_options *, register const u_char *, register u_int); | ||||
const struct slow_common_header_t *slow_com_header; | const struct slow_common_header_t *slow_com_header; | ||||
void | void | ||||
slow_print(netdissect_options *ndo, | slow_print(netdissect_options *ndo, | ||||
register const u_char *pptr, register u_int len) { | register const u_char *pptr, register u_int len) | ||||
{ | |||||
int print_version; | int print_version; | ||||
slow_com_header = (const struct slow_common_header_t *)pptr; | slow_com_header = (const struct slow_common_header_t *)pptr; | ||||
ND_TCHECK(*slow_com_header); | ND_TCHECK(*slow_com_header); | ||||
/* | /* | ||||
* Sanity checking of the header. | * Sanity checking of the header. | ||||
*/ | */ | ||||
▲ Show 20 Lines • Show All 65 Lines • ▼ Show 20 Lines | slow_print(netdissect_options *ndo, | ||||
return; | return; | ||||
trunc: | trunc: | ||||
ND_PRINT((ndo, "\n\t\t packet exceeded snapshot")); | ND_PRINT((ndo, "\n\t\t packet exceeded snapshot")); | ||||
} | } | ||||
static void | static void | ||||
slow_marker_lacp_print(netdissect_options *ndo, | slow_marker_lacp_print(netdissect_options *ndo, | ||||
register const u_char *tptr, register u_int tlen) { | register const u_char *tptr, register u_int tlen) | ||||
{ | |||||
const struct tlv_header_t *tlv_header; | const struct tlv_header_t *tlv_header; | ||||
const u_char *tlv_tptr; | const u_char *tlv_tptr; | ||||
u_int tlv_len, tlv_tlen; | u_int tlv_len, tlv_tlen; | ||||
union { | union { | ||||
const struct lacp_marker_tlv_terminator_t *lacp_marker_tlv_terminator; | const struct lacp_marker_tlv_terminator_t *lacp_marker_tlv_terminator; | ||||
const struct lacp_tlv_actor_partner_info_t *lacp_tlv_actor_partner_info; | const struct lacp_tlv_actor_partner_info_t *lacp_tlv_actor_partner_info; | ||||
const struct lacp_tlv_collector_info_t *lacp_tlv_collector_info; | const struct lacp_tlv_collector_info_t *lacp_tlv_collector_info; | ||||
▲ Show 20 Lines • Show All 100 Lines • ▼ Show 20 Lines | slow_marker_lacp_print(netdissect_options *ndo, | ||||
} | } | ||||
return; | return; | ||||
trunc: | trunc: | ||||
ND_PRINT((ndo, "\n\t\t packet exceeded snapshot")); | ND_PRINT((ndo, "\n\t\t packet exceeded snapshot")); | ||||
} | } | ||||
static void | static void | ||||
slow_oam_print(netdissect_options *ndo, | slow_oam_print(netdissect_options *ndo, | ||||
register const u_char *tptr, register u_int tlen) { | register const u_char *tptr, register u_int tlen) | ||||
{ | |||||
u_int hexdump; | u_int hexdump; | ||||
struct slow_oam_common_header_t { | struct slow_oam_common_header_t { | ||||
uint8_t flags[2]; | uint8_t flags[2]; | ||||
uint8_t code; | uint8_t code; | ||||
}; | }; | ||||
struct slow_oam_tlv_header_t { | struct slow_oam_tlv_header_t { | ||||
▲ Show 20 Lines • Show All 196 Lines • Show Last 20 Lines |