patch-1.3.30 linux/net/ipv4/ipip.c

Next file: linux/net/ipv4/ipmr.c
Previous file: linux/net/ipv4/ip.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.29/linux/net/ipv4/ipip.c linux/net/ipv4/ipip.c
@@ -44,7 +44,6 @@
 #include <linux/version.h>
 
 static char kernel_version[] = UTS_RELEASE;
-
 #else
 #define MOD_INC_USE_COUNT
 #define MOD_DEC_USE_COUNT
@@ -84,6 +83,11 @@
 	 
 	skb->h.iph=(struct iphdr *)skb->data;
 	skb->ip_hdr=(struct iphdr *)skb->data;
+	memset(skb->proto_priv, 0, sizeof(struct options));
+	if (skb->ip_hdr->ihl > 5) {
+	  if (ip_options_compile(NULL, skb))
+	    return 0;
+	}
 	
 #ifdef CONFIG_IP_FIREWALL
 	/*
@@ -110,7 +114,7 @@
 	 *	Feed to IP forward.
 	 */
 	 
-	if(ip_forward(skb, dev, 0, daddr, 0))
+	if(ip_forward(skb, dev, 0, daddr))
 		kfree_skb(skb, FREE_READ);
 	MOD_DEC_USE_COUNT;
 	return(0);

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov with Sam's (original) version
of this