projects
/
linux-drm-fsl-dcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
Merge branch 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-drm-fsl-dcu.git]
/
net
/
sched
/
act_nat.c
diff --git
a/net/sched/act_nat.c
b/net/sched/act_nat.c
index d885ba311564d9a766fce6eac37edbaf0ed82b71..570949417f388735e93bf887294326a8f24aa534 100644
(file)
--- a/
net/sched/act_nat.c
+++ b/
net/sched/act_nat.c
@@
-159,6
+159,9
@@
static int tcf_nat(struct sk_buff *skb, struct tc_action *a,
iph->daddr = new_addr;
csum_replace4(&iph->check, addr, new_addr);
+ } else if ((iph->frag_off & htons(IP_OFFSET)) ||
+ iph->protocol != IPPROTO_ICMP) {
+ goto out;
}
ihl = iph->ihl * 4;
@@
-247,6
+250,7
@@
static int tcf_nat(struct sk_buff *skb, struct tc_action *a,
break;
}
+out:
return action;
drop: