From 578c2e2caefe32c19d7318059993835392dba443 Mon Sep 17 00:00:00 2001 From: Chris Lalancette Date: Tue, 7 Nov 2006 14:56:19 -0800 Subject: [PATCH] --- yaml --- r: 40804 b: refs/heads/master c: 8e365eec04c86899fab5db0f49a9c98554069bd0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/core/netpoll.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index b24f1938ceca..cac5793aac4c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: da33e3eb4876c43b78fdc7b7068653239f28714a +refs/heads/master: 8e365eec04c86899fab5db0f49a9c98554069bd0 diff --git a/trunk/net/core/netpoll.c b/trunk/net/core/netpoll.c index 9308af060b44..6589adb14cbf 100644 --- a/trunk/net/core/netpoll.c +++ b/trunk/net/core/netpoll.c @@ -340,6 +340,12 @@ void netpoll_send_udp(struct netpoll *np, const char *msg, int len) udph->dest = htons(np->remote_port); udph->len = htons(udp_len); udph->check = 0; + udph->check = csum_tcpudp_magic(htonl(np->local_ip), + htonl(np->remote_ip), + udp_len, IPPROTO_UDP, + csum_partial((unsigned char *)udph, udp_len, 0)); + if (udph->check == 0) + udph->check = -1; skb->nh.iph = iph = (struct iphdr *)skb_push(skb, sizeof(*iph));