| Date | Tue, 24 Aug 2010 15:45:17 -0700 | From | Greg KH <> | Subject | [072/114] act_nat: fix wild pointer |
| |
2.6.35-stable review patch. If anyone has any objections, please let us know.
------------------
From: Changli Gao <xiaosuo@gmail.com>
[ Upstream commit 072d79a31a3b870b49886f4347e23f81b7eca3ac ]
pskb_may_pull() may change skb pointers, so adjust icmph after pskb_may_pull().
Signed-off-by: Changli Gao <xiaosuo@gmail.com> Acked-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- net/sched/act_nat.c | 1 + 1 file changed, 1 insertion(+)
--- a/net/sched/act_nat.c +++ b/net/sched/act_nat.c @@ -218,6 +218,7 @@ static int tcf_nat(struct sk_buff *skb, if (!pskb_may_pull(skb, ihl + sizeof(*icmph) + sizeof(*iph))) goto drop; + icmph = (void *)(skb_network_header(skb) + ihl); iph = (void *)(icmph + 1); if (egress) addr = iph->daddr;
|