Lines Matching defs:saddr
84 * | +- root: sorted by saddr/prefix
90 * | | + hhead: saddr:daddr policies
94 * +---- root_s: sorted by saddr:prefix
100 * | + hhead: saddr:any policies
107 * 3. saddr:daddr list from 2nd level daddr tree
108 * 4. saddr:any list from saddr tree
131 /* tree sorted by saddr/prefix */
189 const xfrm_address_t *saddr,
203 addr4_match(fl4->saddr, sel->saddr.a4, sel->prefixlen_s) &&
216 addr_match(&fl6->saddr, &sel->saddr, sel->prefixlen_s) &&
255 const xfrm_address_t *saddr,
266 dst = afinfo->dst_lookup(net, tos, oif, saddr, daddr, mark);
281 xfrm_address_t *saddr = &x->props.saddr;
286 saddr = x->coaddr;
290 saddr = prev_saddr;
294 dst = __xfrm_dst_lookup(net, tos, oif, saddr, daddr, family, mark);
297 if (prev_saddr != saddr)
298 memcpy(prev_saddr, saddr, sizeof(*prev_saddr));
505 const xfrm_address_t *saddr,
514 hash = __addr_hash(daddr, saddr, family, hmask, dbits, sbits);
537 h = __addr_hash(&pol->selector.daddr, &pol->selector.saddr,
761 addr = &policy->selector.saddr;
877 * saddr or daddr for current node prefix.
879 * Matching both is fine, matching saddr in one policy
883 matches_s = xfrm_policy_addr_delta(&policy->selector.saddr,
1145 &policy->selector.saddr,
1167 /* saddr is wildcard */
1168 if (xfrm_pol_inexact_addr_use_any_list(&policy->selector.saddr,
1176 &policy->selector.saddr,
1670 &sel->saddr,
2028 const xfrm_address_t *saddr,
2045 n = xfrm_policy_lookup_inexact_addr(&n->root, &b->count, saddr,
2051 n = xfrm_policy_lookup_inexact_addr(&b->root_s, &b->count, saddr,
2160 const xfrm_address_t *daddr, *saddr;
2168 saddr = xfrm_flowi_saddr(fl, family);
2169 if (unlikely(!daddr || !saddr))
2176 chain = policy_hash_direct(net, daddr, saddr, family, dir);
2198 if (!bin || !xfrm_policy_find_inexact_candidates(&cand, bin, saddr,
2451 xfrm_address_t *saddr = xfrm_flowi_saddr(fl, family);
2457 xfrm_address_t *local = saddr;
2463 local = &tmpl->saddr;
2480 saddr = local;
2634 xfrm_address_t saddr, daddr;
2636 xfrm_flowi_addr_get(fl, &saddr, &daddr, family);
2687 &saddr, &daddr, family, mark);
3393 fl4->daddr = reverse ? iph->saddr : iph->daddr;
3394 fl4->saddr = reverse ? iph->daddr : iph->saddr;
3476 fl6->daddr = reverse ? hdr->saddr : hdr->daddr;
3477 fl6->saddr = reverse ? hdr->daddr : hdr->saddr;
4287 audit_log_format(audit_buf, " src=%pI4", &sel->saddr.a4);
4297 audit_log_format(audit_buf, " src=%pI6", sel->saddr.a6);
4347 xfrm_addr_equal(&sel_tgt->saddr, &sel_cmp->saddr,
4369 chain = policy_hash_direct(net, &sel->daddr, &sel->saddr, sel->family, dir);
4410 xfrm_addr_equal(&t->saddr, &m->old_saddr,
4455 memcpy(&pol->xfrm_vec[i].saddr, &mp->new_saddr,
4456 sizeof(pol->xfrm_vec[i].saddr));