X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/3f9411c5ab86de6d83d9a501eff3f69ae148a008..2d5b082ff9943f7e2d8745bfd460a024c51e58d7:/print-tcp.c diff --git a/print-tcp.c b/print-tcp.c index 1f57dfcf..21d855ed 100644 --- a/print-tcp.c +++ b/print-tcp.c @@ -21,25 +21,20 @@ #ifndef lint static const char rcsid[] = - "@(#) $Header: /tcpdump/master/tcpdump/print-tcp.c,v 1.96 2002-07-21 20:56:24 guy Exp $ (LBL)"; + "@(#) $Header: /tcpdump/master/tcpdump/print-tcp.c,v 1.98 2002-08-01 08:53:31 risso Exp $ (LBL)"; #endif #ifdef HAVE_CONFIG_H #include "config.h" #endif -#include -#include +#include #include -#include - #include #include #include -#include -#include #include "interface.h" #include "addrtoname.h" @@ -122,7 +117,10 @@ static int tcp_cksum(register const struct ip *ip, phu.ph.mbz = 0; phu.ph.proto = IPPROTO_TCP; memcpy(&phu.ph.src, &ip->ip_src.s_addr, sizeof(u_int32_t)); - memcpy(&phu.ph.dst, &ip->ip_dst.s_addr, sizeof(u_int32_t)); + if (IP_HL(ip) == 5) + memcpy(&phu.ph.dst, &ip->ip_dst.s_addr, sizeof(u_int32_t)); + else + phu.ph.dst = ip_finddst(ip); sp = &phu.pa[0]; return in_cksum((u_short *)tp, len,