aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/netfilter/ipt_TCPMSS.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv4/netfilter/ipt_TCPMSS.c')
-rw-r--r--net/ipv4/netfilter/ipt_TCPMSS.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv4/netfilter/ipt_TCPMSS.c b/net/ipv4/netfilter/ipt_TCPMSS.c
index ef2fe5b3f0d8f0..c998dc0fcd1596 100644
--- a/net/ipv4/netfilter/ipt_TCPMSS.c
+++ b/net/ipv4/netfilter/ipt_TCPMSS.c
@@ -62,8 +62,9 @@ ipt_tcpmss_target(struct sk_buff **pskb,
if (!skb_make_writable(pskb, (*pskb)->len))
return NF_DROP;
- if ((*pskb)->ip_summed == CHECKSUM_HW &&
- skb_checksum_help(*pskb, out == NULL))
+ if (((*pskb)->ip_summed == CHECKSUM_PARTIAL ||
+ (*pskb)->ip_summed == CHECKSUM_COMPLETE) &&
+ skb_checksum_help(*pskb))
return NF_DROP;
iph = (*pskb)->nh.iph;