Lines Matching refs:iph

102 		if (local == t->parms.iph.saddr &&  in ipip6_tunnel_lookup()
103 remote == t->parms.iph.daddr && in ipip6_tunnel_lookup()
109 if (remote == t->parms.iph.daddr && in ipip6_tunnel_lookup()
115 if (local == t->parms.iph.saddr && in ipip6_tunnel_lookup()
129 __be32 remote = parms->iph.daddr; in __ipip6_bucket()
130 __be32 local = parms->iph.saddr; in __ipip6_bucket()
198 memcpy(dev->dev_addr, &t->parms.iph.saddr, 4); in ipip6_tunnel_create()
199 memcpy(dev->broadcast, &t->parms.iph.daddr, 4); in ipip6_tunnel_create()
224 __be32 remote = parms->iph.daddr; in ipip6_tunnel_locate()
225 __be32 local = parms->iph.saddr; in ipip6_tunnel_locate()
235 if (local == t->parms.iph.saddr && in ipip6_tunnel_locate()
236 remote == t->parms.iph.daddr && in ipip6_tunnel_locate()
441 isatap_chksrc(struct sk_buff *skb, const struct iphdr *iph, struct ip_tunnel *t) in isatap_chksrc() argument
447 p = __ipip6_tunnel_locate_prl(t, iph->saddr); in isatap_chksrc()
457 (addr6->s6_addr32[3] == iph->saddr) && in isatap_chksrc()
520 const struct iphdr *iph = (const struct iphdr *)skb->data; in ipip6_err() local
556 iph->daddr, in ipip6_err()
557 iph->saddr); in ipip6_err()
574 if (t->parms.iph.daddr == 0) in ipip6_err()
581 if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED) in ipip6_err()
630 const struct iphdr *iph, in packet_is_spoofed() argument
636 if (!isatap_chksrc(skb, iph, tunnel)) in packet_is_spoofed()
647 if (unlikely(is_spoofed_6rd(tunnel, iph->saddr, &ipv6h->saddr))) { in packet_is_spoofed()
649 &iph->saddr, &ipv6h->saddr, in packet_is_spoofed()
650 &iph->daddr, &ipv6h->daddr); in packet_is_spoofed()
654 if (likely(!is_spoofed_6rd(tunnel, iph->daddr, &ipv6h->daddr))) in packet_is_spoofed()
661 &iph->saddr, &ipv6h->saddr, in packet_is_spoofed()
662 &iph->daddr, &ipv6h->daddr); in packet_is_spoofed()
668 const struct iphdr *iph = ip_hdr(skb); in ipip6_rcv() local
673 iph->saddr, iph->daddr); in ipip6_rcv()
677 if (tunnel->parms.iph.protocol != IPPROTO_IPV6 && in ipip6_rcv()
678 tunnel->parms.iph.protocol != 0) in ipip6_rcv()
686 if (packet_is_spoofed(skb, iph, tunnel)) { in ipip6_rcv()
693 err = IP_ECN_decapsulate(iph, skb); in ipip6_rcv()
697 &iph->saddr, iph->tos); in ipip6_rcv()
730 const struct iphdr *iph; in ipip_rcv() local
733 iph = ip_hdr(skb); in ipip_rcv()
735 iph->saddr, iph->daddr); in ipip_rcv()
737 if (tunnel->parms.iph.protocol != IPPROTO_IPIP && in ipip_rcv()
738 tunnel->parms.iph.protocol != 0) in ipip_rcv()
810 const struct iphdr *tiph = &tunnel->parms.iph; in ipip6_tunnel_xmit()
812 u8 tos = tunnel->parms.iph.tos; in ipip6_tunnel_xmit()
935 if (tunnel->parms.iph.daddr && skb_dst(skb)) in ipip6_tunnel_xmit()
1004 const struct iphdr *tiph = &tunnel->parms.iph; in ipip_tunnel_xmit()
1046 const struct iphdr *iph; in ipip6_tunnel_bind_dev() local
1050 iph = &tunnel->parms.iph; in ipip6_tunnel_bind_dev()
1052 if (iph->daddr) { in ipip6_tunnel_bind_dev()
1055 iph->daddr, iph->saddr, in ipip6_tunnel_bind_dev()
1058 RT_TOS(iph->tos), in ipip6_tunnel_bind_dev()
1088 t->parms.iph.saddr = p->iph.saddr; in ipip6_tunnel_update()
1089 t->parms.iph.daddr = p->iph.daddr; in ipip6_tunnel_update()
1090 memcpy(t->dev->dev_addr, &p->iph.saddr, 4); in ipip6_tunnel_update()
1091 memcpy(t->dev->broadcast, &p->iph.daddr, 4); in ipip6_tunnel_update()
1093 t->parms.iph.ttl = p->iph.ttl; in ipip6_tunnel_update()
1094 t->parms.iph.tos = p->iph.tos; in ipip6_tunnel_update()
1195 if (p.iph.protocol != IPPROTO_IPV6 && in ipip6_tunnel_ioctl()
1196 p.iph.protocol != IPPROTO_IPIP && in ipip6_tunnel_ioctl()
1197 p.iph.protocol != 0) in ipip6_tunnel_ioctl()
1199 if (p.iph.version != 4 || in ipip6_tunnel_ioctl()
1200 p.iph.ihl != 5 || (p.iph.frag_off&htons(~IP_DF))) in ipip6_tunnel_ioctl()
1202 if (p.iph.ttl) in ipip6_tunnel_ioctl()
1203 p.iph.frag_off |= htons(IP_DF); in ipip6_tunnel_ioctl()
1214 if (((dev->flags&IFF_POINTOPOINT) && !p.iph.daddr) || in ipip6_tunnel_ioctl()
1215 (!(dev->flags&IFF_POINTOPOINT) && p.iph.daddr)) { in ipip6_tunnel_ioctl()
1400 struct iphdr *iph = &tunnel->parms.iph; in ipip6_fb_tunnel_init() local
1404 iph->version = 4; in ipip6_fb_tunnel_init()
1405 iph->protocol = IPPROTO_IPV6; in ipip6_fb_tunnel_init()
1406 iph->ihl = 5; in ipip6_fb_tunnel_init()
1407 iph->ttl = 64; in ipip6_fb_tunnel_init()
1434 parms->iph.version = 4; in ipip6_netlink_parms()
1435 parms->iph.protocol = IPPROTO_IPV6; in ipip6_netlink_parms()
1436 parms->iph.ihl = 5; in ipip6_netlink_parms()
1437 parms->iph.ttl = 64; in ipip6_netlink_parms()
1446 parms->iph.saddr = nla_get_be32(data[IFLA_IPTUN_LOCAL]); in ipip6_netlink_parms()
1449 parms->iph.daddr = nla_get_be32(data[IFLA_IPTUN_REMOTE]); in ipip6_netlink_parms()
1452 parms->iph.ttl = nla_get_u8(data[IFLA_IPTUN_TTL]); in ipip6_netlink_parms()
1453 if (parms->iph.ttl) in ipip6_netlink_parms()
1454 parms->iph.frag_off = htons(IP_DF); in ipip6_netlink_parms()
1458 parms->iph.tos = nla_get_u8(data[IFLA_IPTUN_TOS]); in ipip6_netlink_parms()
1461 parms->iph.frag_off = htons(IP_DF); in ipip6_netlink_parms()
1467 parms->iph.protocol = nla_get_u8(data[IFLA_IPTUN_PROTO]); in ipip6_netlink_parms()
1602 if (((dev->flags & IFF_POINTOPOINT) && !p.iph.daddr) || in ipip6_changelink()
1603 (!(dev->flags & IFF_POINTOPOINT) && p.iph.daddr)) in ipip6_changelink()
1670 nla_put_in_addr(skb, IFLA_IPTUN_LOCAL, parm->iph.saddr) || in ipip6_fill_info()
1671 nla_put_in_addr(skb, IFLA_IPTUN_REMOTE, parm->iph.daddr) || in ipip6_fill_info()
1672 nla_put_u8(skb, IFLA_IPTUN_TTL, parm->iph.ttl) || in ipip6_fill_info()
1673 nla_put_u8(skb, IFLA_IPTUN_TOS, parm->iph.tos) || in ipip6_fill_info()
1675 !!(parm->iph.frag_off & htons(IP_DF))) || in ipip6_fill_info()
1676 nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->iph.protocol) || in ipip6_fill_info()