X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/546558eabd81cfc36a81a4df728fdfea0d83b41a..c6a5cc1bb49bcbc5f74c66bf780b8a1a05e8eb9d:/print-ntp.c diff --git a/print-ntp.c b/print-ntp.c index b8772e9e..9cfda05f 100644 --- a/print-ntp.c +++ b/print-ntp.c @@ -46,7 +46,6 @@ #include "addrtoname.h" #include "extract.h" -static const char tstr[] = " [|ntp]"; /* * Based on ntp.h from the U of MD implementation @@ -277,7 +276,7 @@ ntp_time_print(netdissect_options *ndo, ND_TCHECK_1(bp->ppoll); ND_PRINT(", poll %d", EXTRACT_S_1(bp->ppoll)); - p_poll(ndo, EXTRACT_U_1(bp->ppoll)); + p_poll(ndo, EXTRACT_S_1(bp->ppoll)); ND_TCHECK_1(bp->precision); ND_PRINT(", precision %d", EXTRACT_S_1(bp->precision)); @@ -300,7 +299,7 @@ ntp_time_print(netdissect_options *ndo, break; case PRIM_REF: - if (fn_printn(ndo, (const u_char *)&(bp->refid), 4, ndo->ndo_snapend)) + if (nd_printn(ndo, (const u_char *)&(bp->refid), 4, ndo->ndo_snapend)) goto trunc; break; @@ -351,33 +350,33 @@ ntp_time_print(netdissect_options *ndo, ND_TCHECK_4(bp->key_id); ND_PRINT("\n\tKey id: %u", EXTRACT_BE_U_4(bp->key_id)); ND_TCHECK_LEN(bp->message_digest, 16); - ND_PRINT("\n\tAuthentication: %08x%08x%08x%08x", - EXTRACT_BE_U_4(bp->message_digest), - EXTRACT_BE_U_4(bp->message_digest + 4), - EXTRACT_BE_U_4(bp->message_digest + 8), - EXTRACT_BE_U_4(bp->message_digest + 12)); + ND_PRINT("\n\tAuthentication: %08x%08x%08x%08x", + EXTRACT_BE_U_4(bp->message_digest), + EXTRACT_BE_U_4(bp->message_digest + 4), + EXTRACT_BE_U_4(bp->message_digest + 8), + EXTRACT_BE_U_4(bp->message_digest + 12)); } else if (length == NTP_TIMEMSG_MINLEN + 4 + 20) { /* Optional: key-id + 160-bit digest */ ND_TCHECK_4(bp->key_id); ND_PRINT("\n\tKey id: %u", EXTRACT_BE_U_4(bp->key_id)); ND_TCHECK_LEN(bp->message_digest, 20); ND_PRINT("\n\tAuthentication: %08x%08x%08x%08x%08x", - EXTRACT_BE_U_4(bp->message_digest), - EXTRACT_BE_U_4(bp->message_digest + 4), - EXTRACT_BE_U_4(bp->message_digest + 8), - EXTRACT_BE_U_4(bp->message_digest + 12), - EXTRACT_BE_U_4(bp->message_digest + 16)); + EXTRACT_BE_U_4(bp->message_digest), + EXTRACT_BE_U_4(bp->message_digest + 4), + EXTRACT_BE_U_4(bp->message_digest + 8), + EXTRACT_BE_U_4(bp->message_digest + 12), + EXTRACT_BE_U_4(bp->message_digest + 16)); } else if (length > NTP_TIMEMSG_MINLEN) { ND_PRINT("\n\t(%u more bytes after the header)", length - NTP_TIMEMSG_MINLEN); } return; invalid: - ND_PRINT(" %s", istr); + nd_print_invalid(ndo); ND_TCHECK_LEN(bp, length); return; trunc: - ND_PRINT(" %s", tstr); + nd_print_trunc(ndo); } /* @@ -432,12 +431,12 @@ ntp_control_print(netdissect_options *ndo, return; invalid: - ND_PRINT(" %s", istr); + nd_print_invalid(ndo); ND_TCHECK_LEN(cd, length); return; trunc: - ND_PRINT(" %s", tstr); + nd_print_trunc(ndo); } union ntpdata { @@ -450,7 +449,7 @@ union ntpdata { */ void ntp_print(netdissect_options *ndo, - const u_char *cp, u_int length) + const u_char *cp, u_int length) { const union ntpdata *bp = (const union ntpdata *)cp; u_int mode, version, leapind; @@ -466,19 +465,19 @@ ntp_print(netdissect_options *ndo, mode = (status & MODEMASK) >> MODESHIFT; if (!ndo->ndo_vflag) { ND_PRINT(", %s, length %u", - tok2str(ntp_mode_values, "Unknown mode", mode), - length); + tok2str(ntp_mode_values, "Unknown mode", mode), + length); return; } ND_PRINT(", %s, length %u\n", - tok2str(ntp_mode_values, "Unknown mode", mode), length); + tok2str(ntp_mode_values, "Unknown mode", mode), length); /* leapind = (status & LEAPMASK) >> LEAPSHIFT; */ leapind = (status & LEAPMASK); ND_PRINT("\tLeap indicator: %s (%u)", - tok2str(ntp_leapind_values, "Unknown", leapind), - leapind); + tok2str(ntp_leapind_values, "Unknown", leapind), + leapind); switch (mode) { @@ -501,7 +500,7 @@ ntp_print(netdissect_options *ndo, return; trunc: - ND_PRINT(" %s", tstr); + nd_print_trunc(ndo); } static void @@ -523,7 +522,7 @@ p_sfix(netdissect_options *ndo, static void p_ntp_time(netdissect_options *ndo, - const struct l_fixedpt *lfp) + const struct l_fixedpt *lfp) { uint32_t i; uint32_t uf; @@ -567,7 +566,7 @@ p_ntp_time(netdissect_options *ndo, ND_PRINT(" (unrepresentable)"); } else { /* use ISO 8601 (RFC3339) format */ - strftime(time_buf, sizeof (time_buf), "%Y-%m-%dT%H:%M:%S", tm); + strftime(time_buf, sizeof (time_buf), "%Y-%m-%dT%H:%M:%SZ", tm); ND_PRINT(" (%s)", time_buf); } } @@ -578,8 +577,8 @@ p_ntp_time(netdissect_options *ndo, /* Prints time difference between *lfp and *olfp */ static void p_ntp_delta(netdissect_options *ndo, - const struct l_fixedpt *olfp, - const struct l_fixedpt *lfp) + const struct l_fixedpt *olfp, + const struct l_fixedpt *lfp) { uint32_t u, uf; uint32_t ou, ouf;