• Home
  • Raw
  • Download

Lines Matching refs:iph

138 	const struct iphdr *iph;  in ipgre_err()  local
179 iph = (const struct iphdr *)(icmp_hdr(skb) + 1); in ipgre_err()
181 iph->daddr, iph->saddr, tpi->key); in ipgre_err()
188 !ip6_err_gen_icmpv6_unreach(skb, iph->ihl * 4 + tpi->hdr_len, in ipgre_err()
193 if (t->parms.iph.daddr == 0 || in ipgre_err()
194 ipv4_is_multicast(t->parms.iph.daddr)) in ipgre_err()
197 if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED) in ipgre_err()
223 const struct iphdr *iph = (struct iphdr *)skb->data; in gre_err() local
230 iph->ihl * 4) < 0) { in gre_err()
253 const struct iphdr *iph; in __ipgre_rcv() local
256 iph = ip_hdr(skb); in __ipgre_rcv()
258 iph->saddr, iph->daddr, tpi->key); in __ipgre_rcv()
491 tnl_params = &tunnel->parms.iph; in ipgre_xmit()
522 __gre_xmit(skb, dev, &tunnel->parms.iph, htons(ETH_P_TEB)); in gre_tap_xmit()
540 if (p.iph.version != 4 || p.iph.protocol != IPPROTO_GRE || in ipgre_tunnel_ioctl()
541 p.iph.ihl != 5 || (p.iph.frag_off&htons(~IP_DF)) || in ipgre_tunnel_ioctl()
592 struct iphdr *iph; in ipgre_header() local
595 iph = (struct iphdr *)skb_push(skb, t->hlen + sizeof(*iph)); in ipgre_header()
596 greh = (struct gre_base_hdr *)(iph+1); in ipgre_header()
600 memcpy(iph, &t->parms.iph, sizeof(struct iphdr)); in ipgre_header()
604 memcpy(&iph->saddr, saddr, 4); in ipgre_header()
606 memcpy(&iph->daddr, daddr, 4); in ipgre_header()
607 if (iph->daddr) in ipgre_header()
608 return t->hlen + sizeof(*iph); in ipgre_header()
610 return -(t->hlen + sizeof(*iph)); in ipgre_header()
615 const struct iphdr *iph = (const struct iphdr *) skb_mac_header(skb); in ipgre_header_parse() local
616 memcpy(haddr, &iph->saddr, 4); in ipgre_header_parse()
630 if (ipv4_is_multicast(t->parms.iph.daddr)) { in ipgre_open()
635 t->parms.iph.daddr, in ipgre_open()
636 t->parms.iph.saddr, in ipgre_open()
638 RT_TOS(t->parms.iph.tos), in ipgre_open()
647 ip_mc_inc_group(__in_dev_get_rtnl(dev), t->parms.iph.daddr); in ipgre_open()
656 if (ipv4_is_multicast(t->parms.iph.daddr) && t->mlink) { in ipgre_close()
660 ip_mc_dec_group(in_dev, t->parms.iph.daddr); in ipgre_close()
699 tunnel->parms.iph.protocol = IPPROTO_GRE; in __gre_tunnel_init()
732 struct iphdr *iph = &tunnel->parms.iph; in ipgre_tunnel_init() local
736 memcpy(dev->dev_addr, &iph->saddr, 4); in ipgre_tunnel_init()
737 memcpy(dev->broadcast, &iph->daddr, 4); in ipgre_tunnel_init()
743 if (iph->daddr && !tunnel->collect_md) { in ipgre_tunnel_init()
745 if (ipv4_is_multicast(iph->daddr)) { in ipgre_tunnel_init()
746 if (!iph->saddr) in ipgre_tunnel_init()
838 parms->iph.protocol = IPPROTO_GRE; in ipgre_netlink_parms()
859 parms->iph.saddr = nla_get_in_addr(data[IFLA_GRE_LOCAL]); in ipgre_netlink_parms()
862 parms->iph.daddr = nla_get_in_addr(data[IFLA_GRE_REMOTE]); in ipgre_netlink_parms()
865 parms->iph.ttl = nla_get_u8(data[IFLA_GRE_TTL]); in ipgre_netlink_parms()
868 parms->iph.tos = nla_get_u8(data[IFLA_GRE_TOS]); in ipgre_netlink_parms()
873 parms->iph.frag_off = htons(IP_DF); in ipgre_netlink_parms()
884 && (parms->iph.frag_off & htons(IP_DF))) in ipgre_netlink_parms()
1047 nla_put_in_addr(skb, IFLA_GRE_LOCAL, p->iph.saddr) || in ipgre_fill_info()
1048 nla_put_in_addr(skb, IFLA_GRE_REMOTE, p->iph.daddr) || in ipgre_fill_info()
1049 nla_put_u8(skb, IFLA_GRE_TTL, p->iph.ttl) || in ipgre_fill_info()
1050 nla_put_u8(skb, IFLA_GRE_TOS, p->iph.tos) || in ipgre_fill_info()
1052 !!(p->iph.frag_off & htons(IP_DF)))) in ipgre_fill_info()