]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-mobile.c
Merge remote-tracking branch 'upstream/master'
[tcpdump] / print-mobile.c
index 816ffd6e65859917f76da3960b47629d2557a6c7..de4eab1dce3b97e4c4e58a6a2d0c18fa44cd93af 100644 (file)
@@ -72,6 +72,7 @@ mobile_print(const u_char *bp, u_int length)
 {
        const u_char *cp = bp +8 ;
        const struct mobile_ip *mob;
+       struct cksum_vec vec[1];
        u_short proto,crc;
        u_char osp =0;                  /* old source address present */
 
@@ -101,7 +102,9 @@ mobile_print(const u_char *bp, u_int length)
                (void)printf("> %s ",ipaddr_string(&mob->odst));
                (void)printf("(oproto=%d)",proto>>8);
        }
-       if (in_cksum((u_short *)mob, osp ? 12 : 8, 0)!=0) {
+       vec[0].ptr = (const u_int8_t *)(void *)mob;
+       vec[0].len = osp ? 12 : 8;
+       if (in_cksum(vec, 1)!=0) {
                (void)printf(" (bad checksum %d)",crc);
        }