]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-ah.c
Use more the ND_TTEST_1() macro
[tcpdump] / print-ah.c
index bec6f88f67d05e454ecc8142a55e62017955a664..30fb8d266b4f4ad1fd9d1f78c3a45051bce083be 100644 (file)
 
 #include <netdissect-stdinc.h>
 
-#include "ah.h"
-
 #include "netdissect.h"
 #include "extract.h"
 
+#include "ah.h"
+
 int
-ah_print(netdissect_options *ndo, register const u_char *bp)
+ah_print(netdissect_options *ndo, const u_char *bp)
 {
-       register const struct ah *ah;
+       const struct ah *ah;
        int sumlen;
 
        ah = (const struct ah *)bp;
 
        ND_TCHECK(*ah);
 
-       sumlen = ah->ah_len << 2;
+       sumlen = EXTRACT_U_1(ah->ah_len) << 2;
 
-       ND_PRINT((ndo, "AH(spi=0x%08x", EXTRACT_32BITS(&ah->ah_spi)));
+       ND_PRINT((ndo, "AH(spi=0x%08x", EXTRACT_BE_U_4(ah->ah_spi)));
        if (ndo->ndo_vflag)
                ND_PRINT((ndo, ",sumlen=%d", sumlen));
-       ND_TCHECK_32BITS(ah + 1);
-       ND_PRINT((ndo, ",seq=0x%x", EXTRACT_32BITS(ah + 1)));
-       if (!ND_TTEST2(*bp, sizeof(struct ah) + sumlen)) {
+       ND_TCHECK_4(ah + 1);
+       ND_PRINT((ndo, ",seq=0x%x", EXTRACT_BE_U_4(ah + 1)));
+       if (!ND_TTEST_LEN(bp, sizeof(struct ah) + sumlen)) {
                ND_PRINT((ndo, "[truncated]):"));
                return -1;
        }