summary refs log tree commit diff
path: root/net
diff options
context:
space:
mode:
authorWei Yongjun <weiyj@soft.fujitsu.com>2006-05-09 15:18:50 -0700
committerDavid S. Miller <davem@davemloft.net>2006-05-09 15:18:50 -0700
commit63cbd2fda38f3d1f107c4fd6261e5660be3eccf9 (patch)
tree67af128970e072a754949317cb4cc0a51cc404c5 /net
parent3a01c1ef75e1d84752ddef607c389bbde9c2576e (diff)
downloadlinux-63cbd2fda38f3d1f107c4fd6261e5660be3eccf9.tar.gz
[IPV4]: ip_options_fragment() has no effect on fragmentation
Fix error point to options in ip_options_fragment(). optptr get a
error pointer to the ipv4 header, correct is pointer to ipv4 options.

Signed-off-by: Wei Yongjun <weiyj@soft.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/ipv4/ip_options.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/ip_options.c b/net/ipv4/ip_options.c
index 9bebad07bf2e..cbcae6544622 100644
--- a/net/ipv4/ip_options.c
+++ b/net/ipv4/ip_options.c
@@ -209,7 +209,7 @@ int ip_options_echo(struct ip_options * dopt, struct sk_buff * skb)
 
 void ip_options_fragment(struct sk_buff * skb) 
 {
-	unsigned char * optptr = skb->nh.raw;
+	unsigned char * optptr = skb->nh.raw + sizeof(struct iphdr);
 	struct ip_options * opt = &(IPCB(skb)->opt);
 	int  l = opt->optlen;
 	int  optlen;