aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/act_nat.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2010-08-03 01:22:46 -0400
committerDavid S. Miller <davem@davemloft.net>2010-08-03 01:22:46 -0400
commit00dad5e479531e379aba7358600cc768725d4f1f (patch)
tree652199eacee32c2cf317f5a54da8265973d29978 /net/sched/act_nat.c
parentc477d0447db08068a497e7beb892b2b2a7bff64b (diff)
parent3a3dfb062c2e086c202d34f09ce29634515ad256 (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/e1000e/hw.h net/bridge/br_device.c net/bridge/br_input.c
Diffstat (limited to 'net/sched/act_nat.c')
-rw-r--r--net/sched/act_nat.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sched/act_nat.c b/net/sched/act_nat.c
index 24e614c495f2..d0386a413e8d 100644
--- a/net/sched/act_nat.c
+++ b/net/sched/act_nat.c
@@ -218,6 +218,7 @@ static int tcf_nat(struct sk_buff *skb, struct tc_action *a,
218 if (!pskb_may_pull(skb, ihl + sizeof(*icmph) + sizeof(*iph))) 218 if (!pskb_may_pull(skb, ihl + sizeof(*icmph) + sizeof(*iph)))
219 goto drop; 219 goto drop;
220 220
221 icmph = (void *)(skb_network_header(skb) + ihl);
221 iph = (void *)(icmph + 1); 222 iph = (void *)(icmph + 1);
222 if (egress) 223 if (egress)
223 addr = iph->daddr; 224 addr = iph->daddr;
@@ -246,7 +247,7 @@ static int tcf_nat(struct sk_buff *skb, struct tc_action *a,
246 iph->saddr = new_addr; 247 iph->saddr = new_addr;
247 248
248 inet_proto_csum_replace4(&icmph->checksum, skb, addr, new_addr, 249 inet_proto_csum_replace4(&icmph->checksum, skb, addr, new_addr,
249 1); 250 0);
250 break; 251 break;
251 } 252 }
252 default: 253 default: