Lines Matching refs:parms

94 		if (local != t->parms.iph.saddr ||  in ip_tunnel_lookup()
95 remote != t->parms.iph.daddr || in ip_tunnel_lookup()
99 if (!ip_tunnel_key_match(&t->parms, flags, key)) in ip_tunnel_lookup()
102 if (READ_ONCE(t->parms.link) == link) in ip_tunnel_lookup()
108 if (remote != t->parms.iph.daddr || in ip_tunnel_lookup()
109 t->parms.iph.saddr != 0 || in ip_tunnel_lookup()
113 if (!ip_tunnel_key_match(&t->parms, flags, key)) in ip_tunnel_lookup()
116 if (READ_ONCE(t->parms.link) == link) in ip_tunnel_lookup()
126 if ((local != t->parms.iph.saddr || t->parms.iph.daddr != 0) && in ip_tunnel_lookup()
127 (local != t->parms.iph.daddr || !ipv4_is_multicast(local))) in ip_tunnel_lookup()
133 if (!ip_tunnel_key_match(&t->parms, flags, key)) in ip_tunnel_lookup()
136 if (READ_ONCE(t->parms.link) == link) in ip_tunnel_lookup()
144 t->parms.i_key != key) || in ip_tunnel_lookup()
145 t->parms.iph.saddr != 0 || in ip_tunnel_lookup()
146 t->parms.iph.daddr != 0 || in ip_tunnel_lookup()
150 if (READ_ONCE(t->parms.link) == link) in ip_tunnel_lookup()
172 struct ip_tunnel_parm_kern *parms) in ip_bucket() argument
176 __be32 i_key = parms->i_key; in ip_bucket()
178 if (parms->iph.daddr && !ipv4_is_multicast(parms->iph.daddr)) in ip_bucket()
179 remote = parms->iph.daddr; in ip_bucket()
183 if (!test_bit(IP_TUNNEL_KEY_BIT, parms->i_flags) && in ip_bucket()
184 test_bit(IP_TUNNEL_VTI_BIT, parms->i_flags)) in ip_bucket()
193 struct hlist_head *head = ip_bucket(itn, &t->parms); in ip_tunnel_add()
208 struct ip_tunnel_parm_kern *parms, in ip_tunnel_find() argument
211 __be32 remote = parms->iph.daddr; in ip_tunnel_find()
212 __be32 local = parms->iph.saddr; in ip_tunnel_find()
214 __be32 key = parms->i_key; in ip_tunnel_find()
215 int link = parms->link; in ip_tunnel_find()
217 struct hlist_head *head = ip_bucket(itn, parms); in ip_tunnel_find()
219 ip_tunnel_flags_copy(flags, parms->i_flags); in ip_tunnel_find()
222 if (local == t->parms.iph.saddr && in ip_tunnel_find()
223 remote == t->parms.iph.daddr && in ip_tunnel_find()
224 link == READ_ONCE(t->parms.link) && in ip_tunnel_find()
226 ip_tunnel_key_match(&t->parms, flags, key)) in ip_tunnel_find()
234 struct ip_tunnel_parm_kern *parms) in __ip_tunnel_create() argument
242 if (parms->name[0]) { in __ip_tunnel_create()
243 if (!dev_valid_name(parms->name)) in __ip_tunnel_create()
245 strscpy(name, parms->name, IFNAMSIZ); in __ip_tunnel_create()
264 tunnel->parms = *parms; in __ip_tunnel_create()
288 iph = &tunnel->parms.iph; in ip_tunnel_bind_dev()
296 iph->saddr, tunnel->parms.o_key, in ip_tunnel_bind_dev()
298 tunnel->parms.link, tunnel->fwmark, 0, 0); in ip_tunnel_bind_dev()
311 if (!tdev && tunnel->parms.link) in ip_tunnel_bind_dev()
312 tdev = __dev_get_by_index(tunnel->net, tunnel->parms.link); in ip_tunnel_bind_dev()
330 struct ip_tunnel_parm_kern *parms) in ip_tunnel_create() argument
338 dev = __ip_tunnel_create(net, itn->rtnl_link_ops, parms); in ip_tunnel_create()
390 if (test_bit(IP_TUNNEL_CSUM_BIT, tunnel->parms.i_flags) != in ip_tunnel_rcv()
397 if (test_bit(IP_TUNNEL_SEQ_BIT, tunnel->parms.i_flags)) { in ip_tunnel_rcv()
549 daddr = md ? dst : tunnel->parms.iph.daddr; in tnl_update_pmtu()
700 connected = (tunnel->parms.iph.daddr != 0); in ip_tunnel_xmit()
776 tunnel->parms.o_key, tos & INET_DSCP_MASK, in ip_tunnel_xmit()
777 dev_net(dev), READ_ONCE(tunnel->parms.link), in ip_tunnel_xmit()
880 t->parms.iph.saddr = p->iph.saddr; in ip_tunnel_update()
881 t->parms.iph.daddr = p->iph.daddr; in ip_tunnel_update()
882 t->parms.i_key = p->i_key; in ip_tunnel_update()
883 t->parms.o_key = p->o_key; in ip_tunnel_update()
890 t->parms.iph.ttl = p->iph.ttl; in ip_tunnel_update()
891 t->parms.iph.tos = p->iph.tos; in ip_tunnel_update()
892 t->parms.iph.frag_off = p->iph.frag_off; in ip_tunnel_update()
894 if (t->parms.link != p->link || t->fwmark != fwmark) { in ip_tunnel_update()
897 WRITE_ONCE(t->parms.link, p->link); in ip_tunnel_update()
922 memcpy(p, &t->parms, sizeof(*p)); in ip_tunnel_ctl()
1131 return READ_ONCE(tunnel->parms.link); in ip_tunnel_get_iflink()
1139 struct ip_tunnel_parm_kern parms; in ip_tunnel_init_net() local
1155 memset(&parms, 0, sizeof(parms)); in ip_tunnel_init_net()
1157 strscpy(parms.name, devname, IFNAMSIZ); in ip_tunnel_init_net()
1160 itn->fb_tunnel_dev = __ip_tunnel_create(net, ops, &parms); in ip_tunnel_init_net()
1237 nt->parms = *p; in ip_tunnel_newlink()
1311 struct iphdr *iph = &tunnel->parms.iph; in ip_tunnel_init()
1330 strscpy(tunnel->parms.name, dev->name); in ip_tunnel_init()