X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/b933006a388d92aec6b046cf9d6b52ebf37fc018..f085c93f59fb2332e09f3da20eef5fb2bbd04431:/print-krb.c diff --git a/print-krb.c b/print-krb.c index 3685ab6c..6fa25aca 100644 --- a/print-krb.c +++ b/print-krb.c @@ -119,7 +119,8 @@ c_print(netdissect_options *ndo, flag = 1; while (s < ep) { - c = *s++; + c = EXTRACT_U_1(s); + s++; if (c == '\0') { flag = 0; break; @@ -172,7 +173,7 @@ krb4_print(netdissect_options *ndo, #define PRINT if ((cp = c_print(ndo, cp, ndo->ndo_snapend)) == NULL) goto trunc /* True if struct krb is little endian */ #define IS_LENDIAN(kp) (((kp)->type & 0x01) != 0) -#define KTOHSP(kp, cp) (IS_LENDIAN(kp) ? EXTRACT_LE_16BITS(cp) : EXTRACT_BE_16BITS(cp)) +#define KTOHSP(kp, cp) (IS_LENDIAN(kp) ? EXTRACT_LE_U_2(cp) : EXTRACT_BE_U_2(cp)) kp = (const struct krb *)cp; @@ -193,7 +194,8 @@ krb4_print(netdissect_options *ndo, return; cp += 4; /* ctime */ ND_TCHECK(*cp); - ND_PRINT((ndo, " %dmin ", *cp++ * 5)); + ND_PRINT((ndo, " %dmin ", EXTRACT_U_1(cp) * 5)); + cp++; PRINT; ND_PRINT((ndo, ".")); PRINT; @@ -202,12 +204,14 @@ krb4_print(netdissect_options *ndo, case AUTH_MSG_APPL_REQUEST: cp += 2; ND_TCHECK(*cp); - ND_PRINT((ndo, "v%d ", *cp++)); + ND_PRINT((ndo, "v%d ", EXTRACT_U_1(cp))); + cp++; PRINT; ND_TCHECK(*cp); - ND_PRINT((ndo, " (%d)", *cp++)); + ND_PRINT((ndo, " (%d)", EXTRACT_U_1(cp))); + cp++; ND_TCHECK(*cp); - ND_PRINT((ndo, " (%d)", *cp)); + ND_PRINT((ndo, " (%d)", EXTRACT_U_1(cp))); break; case AUTH_MSG_KDC_REPLY: