diff options
| -rw-r--r-- | net/ipv4/netfilter/ip_conntrack_proto_udp.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/netfilter/ip_conntrack_proto_udp.c b/net/ipv4/netfilter/ip_conntrack_proto_udp.c index 5bc28a224623..8c1eaba098d4 100644 --- a/net/ipv4/netfilter/ip_conntrack_proto_udp.c +++ b/net/ipv4/netfilter/ip_conntrack_proto_udp.c | |||
| @@ -120,6 +120,7 @@ static int udp_error(struct sk_buff *skb, enum ip_conntrack_info *ctinfo, | |||
| 120 | * and moreover root might send raw packets. | 120 | * and moreover root might send raw packets. |
| 121 | * FIXME: Source route IP option packets --RR */ | 121 | * FIXME: Source route IP option packets --RR */ |
| 122 | if (hooknum == NF_IP_PRE_ROUTING | 122 | if (hooknum == NF_IP_PRE_ROUTING |
| 123 | && skb->ip_summed != CHECKSUM_UNNECESSARY | ||
| 123 | && csum_tcpudp_magic(iph->saddr, iph->daddr, udplen, IPPROTO_UDP, | 124 | && csum_tcpudp_magic(iph->saddr, iph->daddr, udplen, IPPROTO_UDP, |
| 124 | skb->ip_summed == CHECKSUM_HW ? skb->csum | 125 | skb->ip_summed == CHECKSUM_HW ? skb->csum |
| 125 | : skb_checksum(skb, iph->ihl*4, udplen, 0))) { | 126 | : skb_checksum(skb, iph->ihl*4, udplen, 0))) { |
