patch-2.0.31 linux/drivers/net/new_tunnel.c
Next file: linux/drivers/net/ppp.c
Previous file: linux/drivers/net/ne.c
Back to the patch index
Back to the overall index
- Lines: 26
- Date:
Tue Aug 12 13:21:12 1997
- Orig file:
v2.0.30/linux/drivers/net/new_tunnel.c
- Orig date:
Tue Apr 8 08:47:46 1997
diff -u --recursive --new-file v2.0.30/linux/drivers/net/new_tunnel.c linux/drivers/net/new_tunnel.c
@@ -161,7 +161,7 @@
* routing tables
*/
iph = (struct iphdr *) skb->data;
- if ((rt = ip_rt_route(iph->daddr, 0)) == NULL)
+ if ((rt = ip_rt_route(iph->daddr, 0, skb->sk?skb->sk->bound_device:NULL)) == NULL)
{
/* No route to host */
/* Where did the packet come from? */
@@ -194,7 +194,7 @@
}
ip_rt_put(rt);
- if ((rt = ip_rt_route(target, 0)) == NULL)
+ if ((rt = ip_rt_route(target, 0, skb->sk?skb->sk->bound_device:NULL)) == NULL)
{
/* No route to host */
/* Where did the packet come from? */
@@ -267,6 +267,7 @@
/* Tack on our header */
new_skb->h.iph = (struct iphdr *) skb_push(new_skb, tunnel_hlen);
+ new_skb->mac.raw = new_skb->ip_hdr;
/* Free the old packet, we no longer need it */
dev_kfree_skb(skb, FREE_WRITE);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov