summaryrefslogtreecommitdiffstats
path: root/contrib/tcpdump/print-udp.c
diff options
context:
space:
mode:
authorrpaulo <rpaulo@FreeBSD.org>2010-10-28 19:06:17 +0000
committerrpaulo <rpaulo@FreeBSD.org>2010-10-28 19:06:17 +0000
commit1e8ad3bd802d66bed71b4c6405ff5d801a913e4a (patch)
treedf5e0d876c3ec2ff0e3d9c6795cb5c1e20b7d5c4 /contrib/tcpdump/print-udp.c
parent7ab661360c2131496bd3c111b5b3b2462fe3d2be (diff)
parent5f4de8e61a87fc21b6ffecf7ef9444827c09ee69 (diff)
downloadFreeBSD-src-1e8ad3bd802d66bed71b4c6405ff5d801a913e4a.zip
FreeBSD-src-1e8ad3bd802d66bed71b4c6405ff5d801a913e4a.tar.gz
Merge tcpdump-4.1.1.
Diffstat (limited to 'contrib/tcpdump/print-udp.c')
-rw-r--r--contrib/tcpdump/print-udp.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/contrib/tcpdump/print-udp.c b/contrib/tcpdump/print-udp.c
index 0c70544..7eee9c7 100644
--- a/contrib/tcpdump/print-udp.c
+++ b/contrib/tcpdump/print-udp.c
@@ -570,7 +570,7 @@ udp_print(register const u_char *bp, u_int length,
}
udpipaddr_print(ip, sport, dport);
- if (IP_V(ip) == 4 && (vflag > 1) && !fragmented) {
+ if (IP_V(ip) == 4 && (vflag > 1) && !Kflag && !fragmented) {
int sum = up->uh_sum;
if (sum == 0) {
(void)printf("[no cksum] ");
@@ -583,7 +583,7 @@ udp_print(register const u_char *bp, u_int length,
}
}
#ifdef INET6
- if (IP_V(ip) == 6 && ip6->ip6_plen && vflag && !fragmented) {
+ if (IP_V(ip) == 6 && ip6->ip6_plen && vflag && !Kflag && !fragmented) {
int sum = up->uh_sum;
/* for IPv6, UDP checksum is mandatory */
if (TTEST2(cp[0], length)) {
@@ -674,11 +674,16 @@ udp_print(register const u_char *bp, u_int length,
hsrp_print((const u_char *)(up + 1), length);
else if (ISPORT(LWRES_PORT))
lwres_print((const u_char *)(up + 1), length);
- else if (ISPORT(LDP_PORT))
+ else if (ISPORT(LDP_PORT))
ldp_print((const u_char *)(up + 1), length);
- else if (ISPORT(OLSR_PORT))
- olsr_print((const u_char *)(up + 1), length);
- else if (ISPORT(MPLS_LSP_PING_PORT))
+ else if (ISPORT(OLSR_PORT))
+ olsr_print((const u_char *)(up + 1), length,
+#if INET6
+ (IP_V(ip) == 6) ? 1 : 0);
+#else
+ 0);
+#endif
+ else if (ISPORT(MPLS_LSP_PING_PORT))
lspping_print((const u_char *)(up + 1), length);
else if (dport == BFD_CONTROL_PORT ||
dport == BFD_ECHO_PORT )
OpenPOWER on IntegriCloud