Lines Matching refs:parms

133 		if (!ipv6_addr_equal(local, &t->parms.laddr) ||
134 !ipv6_addr_equal(remote, &t->parms.raddr) ||
135 key != t->parms.i_key ||
144 if (t->parms.link != link)
158 if (!ipv6_addr_equal(remote, &t->parms.raddr) ||
159 key != t->parms.i_key ||
168 if (t->parms.link != link)
182 if ((!ipv6_addr_equal(local, &t->parms.laddr) &&
183 (!ipv6_addr_equal(local, &t->parms.raddr) ||
185 key != t->parms.i_key ||
194 if (t->parms.link != link)
208 if (t->parms.i_key != key ||
217 if (t->parms.link != link)
269 if (t->parms.collect_md)
275 if (t->parms.collect_md)
281 if (t->parms.collect_md)
288 if (t->parms.collect_md)
295 return __ip6gre_bucket(ign, &t->parms);
322 const struct __ip6_tnl_parm *parms,
325 const struct in6_addr *remote = &parms->raddr;
326 const struct in6_addr *local = &parms->laddr;
327 __be32 key = parms->i_key;
328 int link = parms->link;
333 for (tp = __ip6gre_bucket(ign, parms);
336 if (ipv6_addr_equal(local, &t->parms.laddr) &&
337 ipv6_addr_equal(remote, &t->parms.raddr) &&
338 key == t->parms.i_key &&
339 link == t->parms.link &&
347 const struct __ip6_tnl_parm *parms, int create)
354 t = ip6gre_tunnel_find(net, parms, ARPHRD_IP6GRE);
360 if (parms->name[0]) {
361 if (!dev_valid_name(parms->name))
363 strscpy(name, parms->name, IFNAMSIZ);
375 nt->parms = *parms;
439 t->parms.name);
446 t->parms.name);
462 t->parms.name);
466 t->parms.name);
498 if (tunnel->parms.collect_md) {
552 if (tunnel->parms.collect_md) {
642 if (!(t->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
643 *encap_limit = t->parms.encap_limit;
647 if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
650 *dsfield = ip6_tclass(t->parms.flowinfo);
652 if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
655 fl6->flowi6_mark = t->parms.fwmark;
683 } else if (!(t->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT)) {
684 *encap_limit = t->parms.encap_limit;
689 if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
692 *dsfield = ip6_tclass(t->parms.flowinfo);
694 if (t->parms.flags & IP6_TNL_F_USE_ORIG_FLOWLABEL)
697 if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
700 fl6->flowi6_mark = t->parms.fwmark;
714 if (!(t->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
715 *encap_limit = t->parms.encap_limit;
719 if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
722 *dsfield = ip6_tclass(t->parms.flowinfo);
724 if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
727 fl6->flowi6_mark = t->parms.fwmark;
760 fl6->daddr = tunnel->parms.raddr;
765 if (tunnel->parms.collect_md) {
801 flags = tunnel->parms.o_flags;
804 protocol, tunnel->parms.o_key,
824 if (!t->parms.collect_md)
828 err = gre_handle_offloads(skb, !!(t->parms.o_flags & TUNNEL_CSUM));
855 if (ipv6_addr_equal(&t->parms.raddr, &ipv6h->saddr))
858 if (!t->parms.collect_md &&
862 if (gre_handle_offloads(skb, !!(t->parms.o_flags & TUNNEL_CSUM)))
885 if (!t->parms.collect_md &&
889 err = gre_handle_offloads(skb, !!(t->parms.o_flags & TUNNEL_CSUM));
907 if (!ip6_tnl_xmit_ctl(t, &t->parms.laddr, &t->parms.raddr))
929 if (!t->parms.collect_md || !IS_ERR(skb_tunnel_info_txcheck(skb)))
954 if (!ip6_tnl_xmit_ctl(t, &t->parms.laddr, &t->parms.raddr))
985 t->parms.o_flags &= ~TUNNEL_KEY;
991 if (t->parms.collect_md) {
1041 if (ipv6_addr_equal(&t->parms.raddr, &ipv6_hdr(skb)->saddr))
1052 if (t->parms.erspan_ver == 1) {
1053 erspan_build_header(skb, ntohl(t->parms.o_key),
1054 t->parms.index,
1057 } else if (t->parms.erspan_ver == 2) {
1058 erspan_build_header_v2(skb, ntohl(t->parms.o_key),
1059 t->parms.dir,
1060 t->parms.hwid,
1067 fl6.daddr = t->parms.raddr;
1074 if (!t->parms.collect_md && dst && dst_mtu(dst) > dst->dev->mtu)
1104 struct __ip6_tnl_parm *p = &t->parms;
1118 fl6->fl6_gre_key = t->parms.o_key;
1138 const struct __ip6_tnl_parm *p = &t->parms;
1164 if (!(t->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
1182 tunnel->tun_hlen = gre_calc_hlen(tunnel->parms.o_flags);
1204 t->parms.laddr = p->laddr;
1205 t->parms.raddr = p->raddr;
1206 t->parms.flags = p->flags;
1207 t->parms.hop_limit = p->hop_limit;
1208 t->parms.encap_limit = p->encap_limit;
1209 t->parms.flowinfo = p->flowinfo;
1210 t->parms.link = p->link;
1211 t->parms.proto = p->proto;
1212 t->parms.i_key = p->i_key;
1213 t->parms.o_key = p->o_key;
1214 t->parms.i_flags = p->i_flags;
1215 t->parms.o_flags = p->o_flags;
1216 t->parms.fwmark = p->fwmark;
1217 t->parms.erspan_ver = p->erspan_ver;
1218 t->parms.index = p->index;
1219 t->parms.dir = p->dir;
1220 t->parms.hwid = p->hwid;
1293 ip6gre_tnl_parm_to_user(&p, &t->parms);
1341 ip6gre_tnl_parm_to_user(&p, &t->parms);
1391 ipv6h->hop_limit = t->parms.hop_limit;
1393 ipv6h->saddr = t->parms.laddr;
1394 ipv6h->daddr = t->parms.raddr;
1397 p[0] = t->parms.o_flags;
1466 flags = nt->parms.o_flags;
1490 strcpy(tunnel->parms.name, dev->name);
1508 if (!(tunnel->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
1511 if (tunnel->parms.collect_md) {
1539 if (tunnel->parms.collect_md)
1542 __dev_addr_set(dev, &tunnel->parms.laddr, sizeof(struct in6_addr));
1543 memcpy(dev->broadcast, &tunnel->parms.raddr, sizeof(struct in6_addr));
1545 if (ipv6_addr_any(&tunnel->parms.raddr))
1557 strcpy(tunnel->parms.name, dev->name);
1766 struct __ip6_tnl_parm *parms)
1771 parms->erspan_ver = 1;
1773 parms->erspan_ver = nla_get_u8(data[IFLA_GRE_ERSPAN_VER]);
1775 if (parms->erspan_ver == 1) {
1777 parms->index = nla_get_u32(data[IFLA_GRE_ERSPAN_INDEX]);
1778 } else if (parms->erspan_ver == 2) {
1780 parms->dir = nla_get_u8(data[IFLA_GRE_ERSPAN_DIR]);
1782 parms->hwid = nla_get_u16(data[IFLA_GRE_ERSPAN_HWID]);
1787 struct __ip6_tnl_parm *parms)
1789 memset(parms, 0, sizeof(*parms));
1795 parms->link = nla_get_u32(data[IFLA_GRE_LINK]);
1798 parms->i_flags = gre_flags_to_tnl_flags(
1802 parms->o_flags = gre_flags_to_tnl_flags(
1806 parms->i_key = nla_get_be32(data[IFLA_GRE_IKEY]);
1809 parms->o_key = nla_get_be32(data[IFLA_GRE_OKEY]);
1812 parms->laddr = nla_get_in6_addr(data[IFLA_GRE_LOCAL]);
1815 parms->raddr = nla_get_in6_addr(data[IFLA_GRE_REMOTE]);
1818 parms->hop_limit = nla_get_u8(data[IFLA_GRE_TTL]);
1821 parms->encap_limit = nla_get_u8(data[IFLA_GRE_ENCAP_LIMIT]);
1824 parms->flowinfo = nla_get_be32(data[IFLA_GRE_FLOWINFO]);
1827 parms->flags = nla_get_u32(data[IFLA_GRE_FLAGS]);
1830 parms->fwmark = nla_get_u32(data[IFLA_GRE_FWMARK]);
1833 parms->collect_md = true;
1866 erspan_hdr_len(tunnel->parms.erspan_ver);
1883 strcpy(tunnel->parms.name, dev->name);
1901 if (!(tunnel->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
2021 ip6gre_netlink_parms(data, &nt->parms);
2024 if (nt->parms.collect_md) {
2028 if (ip6gre_tunnel_find(net, &nt->parms, dev->type))
2149 struct __ip6_tnl_parm *p = &t->parms;
2254 ip6gre_netlink_parms(data, &nt->parms);
2255 ip6erspan_set_version(data, &nt->parms);
2258 if (nt->parms.collect_md) {
2262 if (ip6gre_tunnel_find(net, &nt->parms, dev->type))