diff options
author | Wei Yongjun <yjwei@cn.fujitsu.com> | 2008-08-04 00:15:59 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-08-04 00:15:59 -0400 |
commit | 283d07ac201ee9f8aa6dc6f7519436b48760baff (patch) | |
tree | 73587f8b3a2ad3c2f7b5eb188edbd63577c7f638 /net/ipv6/ip6_output.c | |
parent | f880374c2fe37aad3fa62253a4bc125d7a933aad (diff) |
ipv6: Do not drop packet if skb->local_df is set to true
The old code will drop IPv6 packet if ipfragok is not set, since
ipfragok is obsoleted, will be instead by used skb->local_df, so this
check must be changed to skb->local_df.
This patch fix this problem and not drop packet if skb->local_df is
set to true.
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/ip6_output.c')
-rw-r--r-- | net/ipv6/ip6_output.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c index a027003d69a4..a4402de425d9 100644 --- a/net/ipv6/ip6_output.c +++ b/net/ipv6/ip6_output.c | |||
@@ -269,7 +269,7 @@ int ip6_xmit(struct sock *sk, struct sk_buff *skb, struct flowi *fl, | |||
269 | skb->mark = sk->sk_mark; | 269 | skb->mark = sk->sk_mark; |
270 | 270 | ||
271 | mtu = dst_mtu(dst); | 271 | mtu = dst_mtu(dst); |
272 | if ((skb->len <= mtu) || ipfragok || skb_is_gso(skb)) { | 272 | if ((skb->len <= mtu) || skb->local_df || skb_is_gso(skb)) { |
273 | IP6_INC_STATS(ip6_dst_idev(skb->dst), | 273 | IP6_INC_STATS(ip6_dst_idev(skb->dst), |
274 | IPSTATS_MIB_OUTREQUESTS); | 274 | IPSTATS_MIB_OUTREQUESTS); |
275 | return NF_HOOK(PF_INET6, NF_INET_LOCAL_OUT, skb, NULL, dst->dev, | 275 | return NF_HOOK(PF_INET6, NF_INET_LOCAL_OUT, skb, NULL, dst->dev, |