diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2005-01-04 04:15:00 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-01-04 04:15:00 -0800 |
commit | d2e7f92666baf9da92ceac770ea592e666483dd4 (patch) | |
tree | d48e9bb16eb4f3f0fea11bb795aade0ba07f36c2 /net | |
parent | 734c53f3a0416017b8fa8e3f80ecda78195060cf (diff) | |
download | history-d2e7f92666baf9da92ceac770ea592e666483dd4.tar.gz |
[PATCH] Fix for NAT core on nonlinear skbs
The nat core calls skb_ip_make_writable() with a length too short.
Found by nfsim.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/netfilter/ip_nat_core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/netfilter/ip_nat_core.c b/net/ipv4/netfilter/ip_nat_core.c index 28f06ffb378dea..84c1e0e2cda6e7 100644 --- a/net/ipv4/netfilter/ip_nat_core.c +++ b/net/ipv4/netfilter/ip_nat_core.c @@ -466,7 +466,7 @@ manip_pkt(u_int16_t proto, struct iphdr *iph; (*pskb)->nfcache |= NFC_ALTERED; - if (!skb_ip_make_writable(pskb, iphdroff+sizeof(iph))) + if (!skb_ip_make_writable(pskb, iphdroff+sizeof(*iph))) return 0; iph = (void *)(*pskb)->data + iphdroff; |