X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/406b0e3e9293a545c831ee9ed1558c3a5f5bd60d..refs/heads/mcr-macro-update-1:/print-ipcomp.c diff --git a/print-ipcomp.c b/print-ipcomp.c index 291caa97..98e2999c 100644 --- a/print-ipcomp.c +++ b/print-ipcomp.c @@ -22,31 +22,32 @@ /* \summary: IP Payload Compression Protocol (IPComp) printer */ #ifdef HAVE_CONFIG_H -#include "config.h" +#include #endif -#include - -struct ipcomp { - uint8_t comp_nxt; /* Next Header */ - uint8_t comp_flags; /* Length of data, in 32bit */ - uint16_t comp_cpi; /* Compression parameter index */ -}; +#include "netdissect-stdinc.h" #include "netdissect.h" #include "extract.h" +struct ipcomp { + nd_uint8_t comp_nxt; /* Next Header */ + nd_uint8_t comp_flags; /* Length of data, in 32bit */ + nd_uint16_t comp_cpi; /* Compression parameter index */ +}; + void -ipcomp_print(netdissect_options *ndo, register const u_char *bp) +ipcomp_print(netdissect_options *ndo, const u_char *bp) { - register const struct ipcomp *ipcomp; + const struct ipcomp *ipcomp; uint16_t cpi; + ndo->ndo_protocol = "ipcomp"; ipcomp = (const struct ipcomp *)bp; - ND_TCHECK(*ipcomp); - cpi = EXTRACT_16BITS(&ipcomp->comp_cpi); + ND_TCHECK_SIZE(ipcomp); + cpi = GET_BE_U_2(ipcomp->comp_cpi); - ND_PRINT((ndo, "IPComp(cpi=0x%04x)", cpi)); + ND_PRINT("IPComp(cpi=0x%04x)", cpi); /* * XXX - based on the CPI, we could decompress the packet here. @@ -64,6 +65,6 @@ ipcomp_print(netdissect_options *ndo, register const u_char *bp) return; trunc: - ND_PRINT((ndo, "[|IPCOMP]")); + nd_print_trunc(ndo); return; }