patch-1.3.6 linux/net/appletalk/aarp.c

Next file: linux/net/appletalk/ddp.c
Previous file: linux/net/Changes
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.5/linux/net/appletalk/aarp.c linux/net/appletalk/aarp.c
@@ -115,7 +115,7 @@
 	 
 	skb->arp	=	1;
 	skb->free	=	1;
-	skb->len	=	len;
+	skb_put(skb,len);
 	skb->dev	=	a->dev;
 	
 	/*
@@ -175,7 +175,7 @@
 	 
 	skb->arp	=	1;
 	skb->free	=	1;
-	skb->len	=	len;
+	skb_put(skb,len);
 	skb->dev	=	dev;
 	
 	/*
@@ -237,7 +237,7 @@
 	 
 	skb->arp	=	1;
 	skb->free	=	1;
-	skb->len	=	len;
+	skb_put(skb,len);
 	skb->dev	=	dev;
 	
 	/*
@@ -576,11 +576,13 @@
 		return 0;
 	}
 	
+	skb_pull(skb,dev->hard_header_len);
+	
 	/*
 	 *	Frame size ok ?
 	 */
 	 
-	if(skb->len<sizeof(*ea))
+	if(skb_pull(skb,sizeof(*ea))<sizeof(*ea))
 	{
 		kfree_skb(skb, FREE_READ);
 		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