Lines Matching full:tunnel

22 /* tunnel.c: an IP tunnel driver
24 The purpose of this driver is to provide an IP tunnel through
25 which you can tunnel network traffic transparently across subnets.
36 Made the tunnels use dev->name not tunnel: when error reporting.
42 Changed to tunnel to destination gateway in addition to the
43 tunnel's pointopoint address
51 /* Things I wish I had known when writing the tunnel driver:
55 contains the tunnel device that _we_ are.
201 /* no tunnel info required for ipip. */
207 /* no tunnel info required for mplsip. */
217 struct ip_tunnel *tunnel; in ipip_tunnel_rcv() local
221 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, TUNNEL_NO_KEY, in ipip_tunnel_rcv()
223 if (tunnel) { in ipip_tunnel_rcv()
226 if (tunnel->parms.iph.protocol != ipproto && in ipip_tunnel_rcv()
227 tunnel->parms.iph.protocol != 0) in ipip_tunnel_rcv()
240 if (tunnel->collect_md) { in ipip_tunnel_rcv()
248 return ip_tunnel_rcv(tunnel, skb, tpi, tun_dst, log_ecn_error); in ipip_tunnel_rcv()
277 struct ip_tunnel *tunnel = netdev_priv(dev); in ipip_tunnel_xmit() local
278 const struct iphdr *tiph = &tunnel->parms.iph; in ipip_tunnel_xmit()
305 if (tunnel->collect_md) in ipip_tunnel_xmit()
382 struct ip_tunnel *tunnel = netdev_priv(dev); in ipip_tunnel_init() local
384 __dev_addr_set(dev, &tunnel->parms.iph.saddr, 4); in ipip_tunnel_init()
385 memcpy(dev->broadcast, &tunnel->parms.iph.daddr, 4); in ipip_tunnel_init()
387 tunnel->tun_hlen = 0; in ipip_tunnel_init()
388 tunnel->hlen = tunnel->tun_hlen + tunnel->encap_hlen; in ipip_tunnel_init()
512 struct ip_tunnel *tunnel = netdev_priv(dev); in ipip_fill_info() local
513 struct ip_tunnel_parm *parm = &tunnel->parms; in ipip_fill_info()
523 nla_put_u32(skb, IFLA_IPTUN_FWMARK, tunnel->fwmark)) in ipip_fill_info()
527 tunnel->encap.type) || in ipip_fill_info()
529 tunnel->encap.sport) || in ipip_fill_info()
531 tunnel->encap.dport) || in ipip_fill_info()
533 tunnel->encap.flags)) in ipip_fill_info()
536 if (tunnel->collect_md) in ipip_fill_info()
618 pr_info("%s: can't register tunnel\n", __func__); in ipip_init()
624 pr_info("%s: can't register tunnel\n", __func__); in ipip_init()
651 pr_info("%s: can't deregister tunnel\n", __func__); in ipip_fini()
654 pr_info("%s: can't deregister tunnel\n", __func__); in ipip_fini()