X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/7ea344d76a21255867275a199d1ddb1e5b358f77..66e9f3970cea63f5389877c39d0a57e09b32a962:/print-loopback.c diff --git a/print-loopback.c b/print-loopback.c index fa679512..ac7b1779 100644 --- a/print-loopback.c +++ b/print-loopback.c @@ -1,9 +1,4 @@ /* - * This module implements decoding of the Loopback Protocol, originally - * defined as the Configuration Testing Protocol. It is based on the following - * specification: - * http://www.mit.edu/people/jhawk/ctp.pdf - * * Copyright (c) 2014 The TCPDUMP project * All rights reserved. * @@ -30,11 +25,18 @@ * POSSIBILITY OF SUCH DAMAGE. */ +/* \summary: Loopback Protocol printer */ + +/* + * originally defined as the Ethernet Configuration Testing Protocol. + * specification: http://www.mit.edu/people/jhawk/ctp.pdf + */ + #ifdef HAVE_CONFIG_H #include "config.h" #endif -#include +#include #include "netdissect.h" #include "extract.h" @@ -42,7 +44,6 @@ #include "addrtoname.h" static const char tstr[] = " [|loopback]"; -static const char cstr[] = " (invalid)"; #define LOOPBACK_REPLY 1 #define LOOPBACK_FWDDATA 2 @@ -63,7 +64,7 @@ loopback_message_print(netdissect_options *ndo, const u_char *cp, const u_int le goto invalid; /* function */ ND_TCHECK2(*cp, 2); - function = EXTRACT_LE_16BITS(cp); + function = EXTRACT_LE_U_2(cp); cp += 2; ND_PRINT((ndo, ", %s", tok2str(fcode_str, " invalid (%u)", function))); @@ -73,7 +74,7 @@ loopback_message_print(netdissect_options *ndo, const u_char *cp, const u_int le goto invalid; /* receipt number */ ND_TCHECK2(*cp, 2); - ND_PRINT((ndo, ", receipt number %u", EXTRACT_LE_16BITS(cp))); + ND_PRINT((ndo, ", receipt number %u", EXTRACT_LE_U_2(cp))); cp += 2; /* data */ ND_PRINT((ndo, ", data (%u octets)", len - 4)); @@ -97,7 +98,7 @@ loopback_message_print(netdissect_options *ndo, const u_char *cp, const u_int le return; invalid: - ND_PRINT((ndo, "%s", cstr)); + ND_PRINT((ndo, "%s", istr)); ND_TCHECK2(*cp, ep - cp); return; trunc: @@ -115,7 +116,7 @@ loopback_print(netdissect_options *ndo, const u_char *cp, const u_int len) goto invalid; /* skipCount */ ND_TCHECK2(*cp, 2); - skipCount = EXTRACT_LE_16BITS(cp); + skipCount = EXTRACT_LE_U_2(cp); cp += 2; ND_PRINT((ndo, ", skipCount %u", skipCount)); if (skipCount % 8) @@ -126,7 +127,7 @@ loopback_print(netdissect_options *ndo, const u_char *cp, const u_int len) return; invalid: - ND_PRINT((ndo, "%s", cstr)); + ND_PRINT((ndo, "%s", istr)); ND_TCHECK2(*cp, ep - cp); return; trunc: