Lines Matching refs:parms

97 		if (local != t->parms.iph.saddr ||
98 remote != t->parms.iph.daddr ||
102 if (!ip_tunnel_key_match(&t->parms, flags, key))
105 if (READ_ONCE(t->parms.link) == link)
111 if (remote != t->parms.iph.daddr ||
112 t->parms.iph.saddr != 0 ||
116 if (!ip_tunnel_key_match(&t->parms, flags, key))
119 if (READ_ONCE(t->parms.link) == link)
129 if ((local != t->parms.iph.saddr || t->parms.iph.daddr != 0) &&
130 (local != t->parms.iph.daddr || !ipv4_is_multicast(local)))
136 if (!ip_tunnel_key_match(&t->parms, flags, key))
139 if (READ_ONCE(t->parms.link) == link)
146 if ((!(flags & TUNNEL_NO_KEY) && t->parms.i_key != key) ||
147 t->parms.iph.saddr != 0 ||
148 t->parms.iph.daddr != 0 ||
152 if (READ_ONCE(t->parms.link) == link)
174 struct ip_tunnel_parm *parms)
178 __be32 i_key = parms->i_key;
180 if (parms->iph.daddr && !ipv4_is_multicast(parms->iph.daddr))
181 remote = parms->iph.daddr;
185 if (!(parms->i_flags & TUNNEL_KEY) && (parms->i_flags & VTI_ISVTI))
194 struct hlist_head *head = ip_bucket(itn, &t->parms);
209 struct ip_tunnel_parm *parms,
212 __be32 remote = parms->iph.daddr;
213 __be32 local = parms->iph.saddr;
214 __be32 key = parms->i_key;
215 __be16 flags = parms->i_flags;
216 int link = parms->link;
218 struct hlist_head *head = ip_bucket(itn, parms);
221 if (local == t->parms.iph.saddr &&
222 remote == t->parms.iph.daddr &&
223 link == READ_ONCE(t->parms.link) &&
225 ip_tunnel_key_match(&t->parms, flags, key))
233 struct ip_tunnel_parm *parms)
241 if (parms->name[0]) {
242 if (!dev_valid_name(parms->name))
244 strscpy(name, parms->name, IFNAMSIZ);
263 tunnel->parms = *parms;
287 iph = &tunnel->parms.iph;
295 iph->saddr, tunnel->parms.o_key,
297 tunnel->parms.link, tunnel->fwmark, 0, 0);
310 if (!tdev && tunnel->parms.link)
311 tdev = __dev_get_by_index(tunnel->net, tunnel->parms.link);
329 struct ip_tunnel_parm *parms)
337 dev = __ip_tunnel_create(net, itn->rtnl_link_ops, parms);
389 if ((!(tpi->flags&TUNNEL_CSUM) && (tunnel->parms.i_flags&TUNNEL_CSUM)) ||
390 ((tpi->flags&TUNNEL_CSUM) && !(tunnel->parms.i_flags&TUNNEL_CSUM))) {
396 if (tunnel->parms.i_flags&TUNNEL_SEQ) {
548 daddr = md ? dst : tunnel->parms.iph.daddr;
699 connected = (tunnel->parms.iph.daddr != 0);
775 tunnel->parms.o_key, RT_TOS(tos),
776 dev_net(dev), READ_ONCE(tunnel->parms.link),
879 t->parms.iph.saddr = p->iph.saddr;
880 t->parms.iph.daddr = p->iph.daddr;
881 t->parms.i_key = p->i_key;
882 t->parms.o_key = p->o_key;
889 t->parms.iph.ttl = p->iph.ttl;
890 t->parms.iph.tos = p->iph.tos;
891 t->parms.iph.frag_off = p->iph.frag_off;
893 if (t->parms.link != p->link || t->fwmark != fwmark) {
896 WRITE_ONCE(t->parms.link, p->link);
920 memcpy(p, &t->parms, sizeof(*p));
1088 return READ_ONCE(tunnel->parms.link);
1096 struct ip_tunnel_parm parms;
1112 memset(&parms, 0, sizeof(parms));
1114 strscpy(parms.name, devname, IFNAMSIZ);
1117 itn->fb_tunnel_dev = __ip_tunnel_create(net, ops, &parms);
1194 nt->parms = *p;
1268 struct iphdr *iph = &tunnel->parms.iph;
1292 strcpy(tunnel->parms.name, dev->name);