]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-vrrp.c
Fix mkdep invocations.
[tcpdump] / print-vrrp.c
index 0be12628779d61ecdaaeef41d1f53a745cda7a08..fe3104f92dd57e99ce3cb4a208f002128c066196 100644 (file)
  * FOR A PARTICULAR PURPOSE.
  */
 
-#define NETDISSECT_REWORKED
+/* \summary: Virtual Router Redundancy Protocol (VRRP) printer */
+
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 
-#include <tcpdump-stdinc.h>
+#include <netdissect-stdinc.h>
 
-#include "interface.h"
+#include "netdissect.h"
 #include "extract.h"
 #include "addrtoname.h"
 
@@ -119,15 +120,15 @@ vrrp_print(netdissect_options *ndo,
        if (version < 2 || version > 3 || type != VRRP_TYPE_ADVERTISEMENT)
                return;
        ND_TCHECK(bp[2]);
-       ND_PRINT((ndo, ", vrid %u, prio %u", bp[1], bp[2]));
+       ND_PRINT((ndo, ", vrid %u, prio %u", EXTRACT_U_1(bp + 1), EXTRACT_U_1(bp + 2)));
        ND_TCHECK(bp[5]);
 
        if (version == 2) {
                auth_type = bp[4];
                ND_PRINT((ndo, ", authtype %s", tok2str(auth2str, NULL, auth_type)));
-               ND_PRINT((ndo, ", intvl %us, length %u", bp[5], len));
+               ND_PRINT((ndo, ", intvl %us, length %u", EXTRACT_U_1(bp + 5), len));
        } else { /* version == 3 */
-               u_int16_t intvl = (bp[4] & 0x0f) << 8 | bp[5];
+               uint16_t intvl = (bp[4] & 0x0f) << 8 | bp[5];
                ND_PRINT((ndo, ", intvl %ucs, length %u", intvl, len));
        }
 
@@ -143,15 +144,15 @@ vrrp_print(netdissect_options *ndo,
                        vec[0].len = len;
                        if (in_cksum(vec, 1))
                                ND_PRINT((ndo, ", (bad vrrp cksum %x)",
-                                       EXTRACT_16BITS(&bp[6])));
+                                       EXTRACT_BE_U_2(bp + 6)));
                }
 
                if (version == 3 && ND_TTEST2(bp[0], len)) {
-                       u_int16_t cksum = nextproto4_cksum(ndo, (struct ip *)bp2, bp,
+                       uint16_t cksum = nextproto4_cksum(ndo, (const struct ip *)bp2, bp,
                                len, len, IPPROTO_VRRP);
                        if (cksum)
                                ND_PRINT((ndo, ", (bad vrrp cksum %x)",
-                                       EXTRACT_16BITS(&bp[6])));
+                                       EXTRACT_BE_U_2(bp + 6)));
                }
 
                ND_PRINT((ndo, ", addrs"));
@@ -162,14 +163,14 @@ vrrp_print(netdissect_options *ndo,
                bp += 8;
                for (i = 0; i < naddrs; i++) {
                        ND_TCHECK(bp[3]);
-                       ND_PRINT((ndo, "%c%s", c, ipaddr_string(bp)));
+                       ND_PRINT((ndo, "%c%s", c, ipaddr_string(ndo, bp)));
                        c = ',';
                        bp += 4;
                }
                if (version == 2 && auth_type == VRRP_AUTH_SIMPLE) { /* simple text password */
                        ND_TCHECK(bp[7]);
                        ND_PRINT((ndo, " auth \""));
-                       if (fn_printn(bp, 8, ndo->ndo_snapend)) {
+                       if (fn_printn(ndo, bp, 8, ndo->ndo_snapend)) {
                                ND_PRINT((ndo, "\""));
                                goto trunc;
                        }