Searched refs:saddr (Results 1 - 200 of 471) sorted by relevance

123

/linux-4.4.14/include/net/
H A Dsecure_seq.h6 u32 secure_ipv4_port_ephemeral(__be32 saddr, __be32 daddr, __be16 dport);
7 u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr,
9 __u32 secure_tcp_sequence_number(__be32 saddr, __be32 daddr,
11 __u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr,
13 u64 secure_dccp_sequence_number(__be32 saddr, __be32 daddr,
15 u64 secure_dccpv6_sequence_number(__be32 *saddr, __be32 *daddr,
H A Dip6_checksum.h38 __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
46 return ~csum_unfold(csum_ipv6_magic(&ipv6_hdr(skb)->saddr, ip6_compute_pseudo()
55 return ~csum_unfold(csum_ipv6_magic(&iph->saddr, &iph->daddr, ip6_gro_compute_pseudo()
60 const struct in6_addr *saddr, tcp_v6_check()
64 return csum_ipv6_magic(saddr, daddr, len, IPPROTO_TCP, base); tcp_v6_check()
68 const struct in6_addr *saddr, __tcp_v6_send_check()
74 th->check = ~tcp_v6_check(skb->len, saddr, daddr, 0); __tcp_v6_send_check()
78 th->check = tcp_v6_check(skb->len, saddr, daddr, __tcp_v6_send_check()
89 __tcp_v6_send_check(skb, &np->saddr, &sk->sk_v6_daddr); tcp_v6_send_check()
94 const struct in6_addr *saddr, udp_v6_check()
98 return csum_ipv6_magic(saddr, daddr, len, IPPROTO_UDP, base); udp_v6_check()
102 const struct in6_addr *saddr,
59 tcp_v6_check(int len, const struct in6_addr *saddr, const struct in6_addr *daddr, __wsum base) tcp_v6_check() argument
67 __tcp_v6_send_check(struct sk_buff *skb, const struct in6_addr *saddr, const struct in6_addr *daddr) __tcp_v6_send_check() argument
93 udp_v6_check(int len, const struct in6_addr *saddr, const struct in6_addr *daddr, __wsum base) udp_v6_check() argument
H A Dinet6_hashtables.h49 const struct in6_addr *saddr,
56 const struct in6_addr *saddr,
63 const struct in6_addr *saddr, __inet6_lookup()
69 struct sock *sk = __inet6_lookup_established(net, hashinfo, saddr, __inet6_lookup()
74 return inet6_lookup_listener(net, hashinfo, saddr, sport, __inet6_lookup()
90 &ipv6_hdr(skb)->saddr, sport, __inet6_lookup_skb()
96 const struct in6_addr *saddr, const __be16 sport,
61 __inet6_lookup(struct net *net, struct inet_hashinfo *hashinfo, const struct in6_addr *saddr, const __be16 sport, const struct in6_addr *daddr, const u16 hnum, const int dif) __inet6_lookup() argument
H A Dflow.h79 /* (saddr,daddr) must be grouped, same order as in IP header */
80 __be32 saddr; member in struct:flowi4
96 __be32 daddr, __be32 saddr, flowi4_init_output()
109 fl4->saddr = saddr; flowi4_init_output()
116 __be32 daddr, __be32 saddr) flowi4_update_output()
121 fl4->saddr = saddr; flowi4_update_output()
137 struct in6_addr saddr; member in struct:flowi6
158 __le16 saddr; member in struct:flowidn
93 flowi4_init_output(struct flowi4 *fl4, int oif, __u32 mark, __u8 tos, __u8 scope, __u8 proto, __u8 flags, __be32 daddr, __be32 saddr, __be16 dport, __be16 sport) flowi4_init_output() argument
115 flowi4_update_output(struct flowi4 *fl4, int oif, __u8 tos, __be32 daddr, __be32 saddr) flowi4_update_output() argument
H A Droute.h137 __be32 saddr, u8 tos, int oif) ip_route_output()
143 .saddr = saddr, ip_route_output()
150 __be32 daddr, __be32 saddr, ip_route_output_ports()
157 daddr, saddr, dport, sport); ip_route_output_ports()
164 __be32 daddr, __be32 saddr, ip_route_output_gre()
170 fl4->saddr = saddr; ip_route_output_gre()
292 src = fl4->saddr; ip_route_connect()
299 flowi4_update_output(fl4, oif, tos, fl4->daddr, fl4->saddr); ip_route_connect()
316 fl4->saddr); ip_route_newports()
136 ip_route_output(struct net *net, __be32 daddr, __be32 saddr, u8 tos, int oif) ip_route_output() argument
148 ip_route_output_ports(struct net *net, struct flowi4 *fl4, struct sock *sk, __be32 daddr, __be32 saddr, __be16 dport, __be16 sport, __u8 proto, __u8 tos, int oif) ip_route_output_ports() argument
163 ip_route_output_gre(struct net *net, struct flowi4 *fl4, __be32 daddr, __be32 saddr, __be32 gre_key, __u8 tos, int oif) ip_route_output_gre() argument
H A Dinet_hashtables.h216 const __be32 saddr, const __be16 sport,
223 __be32 saddr, __be16 sport, inet_lookup_listener()
226 return __inet_lookup_listener(net, hashinfo, saddr, sport, inet_lookup_listener()
286 const __be32 saddr, const __be16 sport,
292 const __be32 saddr, const __be16 sport, inet_lookup_established()
296 return __inet_lookup_established(net, hashinfo, saddr, sport, daddr, inet_lookup_established()
302 const __be32 saddr, const __be16 sport, __inet_lookup()
308 saddr, sport, daddr, hnum, dif); __inet_lookup()
310 return sk ? : __inet_lookup_listener(net, hashinfo, saddr, sport, __inet_lookup()
316 const __be32 saddr, const __be16 sport, inet_lookup()
323 sk = __inet_lookup(net, hashinfo, saddr, sport, daddr, dport, dif); inet_lookup()
341 iph->saddr, sport, __inet_lookup_skb()
221 inet_lookup_listener(struct net *net, struct inet_hashinfo *hashinfo, __be32 saddr, __be16 sport, __be32 daddr, __be16 dport, int dif) inet_lookup_listener() argument
291 inet_lookup_established(struct net *net, struct inet_hashinfo *hashinfo, const __be32 saddr, const __be16 sport, const __be32 daddr, const __be16 dport, const int dif) inet_lookup_established() argument
300 __inet_lookup(struct net *net, struct inet_hashinfo *hashinfo, const __be32 saddr, const __be16 sport, const __be32 daddr, const __be16 dport, const int dif) __inet_lookup() argument
314 inet_lookup(struct net *net, struct inet_hashinfo *hashinfo, const __be32 saddr, const __be16 sport, const __be32 daddr, const __be16 dport, const int dif) inet_lookup() argument
H A Dxfrm.h96 5. ->saddr Local tunnel endpoint, ignored for transport mode.
158 xfrm_address_t saddr; member in struct:xfrm_state::__anon13609
290 const xfrm_address_t *saddr,
293 xfrm_address_t *saddr,
333 const xfrm_address_t *saddr);
481 xfrm_address_t saddr; member in struct:xfrm_tmpl
937 * routing key, including saddr,daddr. However, we can have many of
1039 return (tmpl->saddr.a4 && __xfrm4_state_addr_cmp()
1040 tmpl->saddr.a4 != x->props.saddr.a4); __xfrm4_state_addr_cmp()
1046 return (!ipv6_addr_any((struct in6_addr*)&tmpl->saddr) && __xfrm6_state_addr_cmp()
1047 !ipv6_addr_equal((struct in6_addr *)&tmpl->saddr, (struct in6_addr*)&x->props.saddr)); __xfrm6_state_addr_cmp()
1232 return (xfrm_address_t *)&fl->u.ip4.saddr; xfrm_flowi_saddr()
1234 return (xfrm_address_t *)&fl->u.ip6.saddr; xfrm_flowi_saddr()
1241 xfrm_address_t *saddr, xfrm_address_t *daddr, xfrm_flowi_addr_get()
1246 memcpy(&saddr->a4, &fl->u.ip4.saddr, sizeof(saddr->a4)); xfrm_flowi_addr_get()
1250 saddr->in6 = fl->u.ip6.saddr; xfrm_flowi_addr_get()
1258 const xfrm_address_t *daddr, const xfrm_address_t *saddr) __xfrm4_state_addr_check()
1261 (saddr->a4 == x->props.saddr.a4 || !saddr->a4 || !x->props.saddr.a4)) __xfrm4_state_addr_check()
1268 const xfrm_address_t *daddr, const xfrm_address_t *saddr) __xfrm6_state_addr_check()
1271 (ipv6_addr_equal((struct in6_addr *)saddr, (struct in6_addr *)&x->props.saddr) || __xfrm6_state_addr_check()
1272 ipv6_addr_any((struct in6_addr *)saddr) || __xfrm6_state_addr_check()
1273 ipv6_addr_any((struct in6_addr *)&x->props.saddr))) __xfrm6_state_addr_check()
1280 const xfrm_address_t *daddr, const xfrm_address_t *saddr, xfrm_state_addr_check()
1285 return __xfrm4_state_addr_check(x, daddr, saddr); xfrm_state_addr_check()
1287 return __xfrm6_state_addr_check(x, daddr, saddr); xfrm_state_addr_check()
1300 (const xfrm_address_t *)&fl->u.ip4.saddr); xfrm_state_addr_flow_check()
1304 (const xfrm_address_t *)&fl->u.ip6.saddr); xfrm_state_addr_flow_check()
1443 const xfrm_address_t *saddr,
1450 xfrm_address_t *saddr,
1464 const xfrm_address_t *saddr,
1551 xfrm_address_t *saddr, u8 proto);
1558 __be32 xfrm6_tunnel_alloc_spi(struct net *net, xfrm_address_t *saddr);
1559 __be32 xfrm6_tunnel_spi_lookup(struct net *net, const xfrm_address_t *saddr);
1608 const xfrm_address_t *saddr, int create,
1240 xfrm_flowi_addr_get(const struct flowi *fl, xfrm_address_t *saddr, xfrm_address_t *daddr, unsigned short family) xfrm_flowi_addr_get() argument
1257 __xfrm4_state_addr_check(const struct xfrm_state *x, const xfrm_address_t *daddr, const xfrm_address_t *saddr) __xfrm4_state_addr_check() argument
1267 __xfrm6_state_addr_check(const struct xfrm_state *x, const xfrm_address_t *daddr, const xfrm_address_t *saddr) __xfrm6_state_addr_check() argument
1279 xfrm_state_addr_check(const struct xfrm_state *x, const xfrm_address_t *daddr, const xfrm_address_t *saddr, unsigned short family) xfrm_state_addr_check() argument
H A Dudp.h152 static inline __sum16 udp_v4_check(int len, __be32 saddr, udp_v4_check() argument
155 return csum_tcpudp_magic(saddr, daddr, len, IPPROTO_UDP, base); udp_v4_check()
159 __be32 saddr, __be32 daddr, int len);
257 struct sock *udp4_lib_lookup(struct net *net, __be32 saddr, __be16 sport,
259 struct sock *__udp4_lib_lookup(struct net *net, __be32 saddr, __be16 sport,
263 const struct in6_addr *saddr, __be16 sport,
267 const struct in6_addr *saddr, __be16 sport,
H A Ddst_metadata.h127 iph->saddr, iph->daddr, iph->tos, iph->ttl, ip_tun_rx_dst()
152 info->key.u.ipv6.src = ip6h->saddr; ipv6_tun_rx_dst()
H A D6lowpan.h203 * @saddr: source lladdr of mac header which is used for compression
207 const void *daddr, const void *saddr);
222 * @saddr: source lladdr of mac header which is used for compression
226 const void *daddr, const void *saddr);
H A Dip6_route.h91 struct in6_addr *saddr);
94 const struct in6_addr *saddr, int oif, int flags);
146 const struct in6_addr *saddr) ip6_dst_store()
154 np->saddr_cache = saddr; ip6_dst_store()
144 ip6_dst_store(struct sock *sk, struct dst_entry *dst, const struct in6_addr *daddr, const struct in6_addr *saddr) ip6_dst_store() argument
H A Dllc_s_ev.h43 struct llc_addr saddr; member in struct:llc_sap_state_ev
H A Dip.h104 __be32 saddr, __be32 daddr,
184 __be32 daddr, __be32 saddr,
366 return csum_tcpudp_nofold(ip_hdr(skb)->saddr, ip_hdr(skb)->daddr, inet_compute_pseudo()
370 /* copy IPv4 saddr & daddr to flow_keys, possibly using 64bit load/store
371 * Equivalent to : flow->v4addrs.src = iph->saddr;
380 memcpy(&flow->addrs.v4addrs, &iph->saddr, sizeof(flow->addrs.v4addrs)); iph_to_flow_copy_v4addrs()
388 return csum_tcpudp_nofold(iph->saddr, iph->daddr, inet_gro_compute_pseudo()
464 memset(&np->saddr, 0, sizeof(np->saddr)); inet_reset_saddr()
H A Dndisc.h184 const struct in6_addr *daddr, const struct in6_addr *saddr);
187 const struct in6_addr *saddr, const struct in6_addr *daddr);
/linux-4.4.14/net/xfrm/
H A Dxfrm_hash.h19 const xfrm_address_t *saddr) __xfrm4_daddr_saddr_hash()
21 u32 sum = (__force u32)daddr->a4 + (__force u32)saddr->a4; __xfrm4_daddr_saddr_hash()
26 const xfrm_address_t *saddr) __xfrm6_daddr_saddr_hash()
29 saddr->a6[2] ^ saddr->a6[3]); __xfrm6_daddr_saddr_hash()
45 const xfrm_address_t *saddr, __xfrm4_dpref_spref_hash()
50 ntohl(saddr->a4) & __bits2mask32(sbits), __xfrm4_dpref_spref_hash()
76 const xfrm_address_t *saddr, __xfrm6_dpref_spref_hash()
81 __xfrm6_pref_hash(saddr, sbits); __xfrm6_dpref_spref_hash()
85 const xfrm_address_t *saddr, __xfrm_dst_hash()
92 h ^= __xfrm4_daddr_saddr_hash(daddr, saddr); __xfrm_dst_hash()
95 h ^= __xfrm6_daddr_saddr_hash(daddr, saddr); __xfrm_dst_hash()
102 const xfrm_address_t *saddr, __xfrm_src_hash()
109 h ^= __xfrm4_daddr_saddr_hash(daddr, saddr); __xfrm_src_hash()
112 h ^= __xfrm6_daddr_saddr_hash(daddr, saddr); __xfrm_src_hash()
144 const xfrm_address_t *saddr = &sel->saddr; __sel_hash() local
153 h = __xfrm4_dpref_spref_hash(daddr, saddr, dbits, sbits); __sel_hash()
161 h = __xfrm6_dpref_spref_hash(daddr, saddr, dbits, sbits); __sel_hash()
169 const xfrm_address_t *saddr, __addr_hash()
178 h = __xfrm4_dpref_spref_hash(daddr, saddr, dbits, sbits); __addr_hash()
182 h = __xfrm6_dpref_spref_hash(daddr, saddr, dbits, sbits); __addr_hash()
18 __xfrm4_daddr_saddr_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr) __xfrm4_daddr_saddr_hash() argument
25 __xfrm6_daddr_saddr_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr) __xfrm6_daddr_saddr_hash() argument
44 __xfrm4_dpref_spref_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr, __u8 dbits, __u8 sbits) __xfrm4_dpref_spref_hash() argument
75 __xfrm6_dpref_spref_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr, __u8 dbits, __u8 sbits) __xfrm6_dpref_spref_hash() argument
84 __xfrm_dst_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr, u32 reqid, unsigned short family, unsigned int hmask) __xfrm_dst_hash() argument
101 __xfrm_src_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr, unsigned short family, unsigned int hmask) __xfrm_src_hash() argument
168 __addr_hash(const xfrm_address_t *daddr, const xfrm_address_t *saddr, unsigned short family, unsigned int hmask, u8 dbits, u8 sbits) __addr_hash() argument
H A Dxfrm_state.c42 const xfrm_address_t *saddr, xfrm_dst_hash()
46 return __xfrm_dst_hash(daddr, saddr, reqid, family, net->xfrm.state_hmask); xfrm_dst_hash()
51 const xfrm_address_t *saddr, xfrm_src_hash()
54 return __xfrm_src_hash(daddr, saddr, family, net->xfrm.state_hmask); xfrm_src_hash()
76 h = __xfrm_dst_hash(&x->id.daddr, &x->props.saddr, hlist_for_each_entry_safe()
81 h = __xfrm_src_hash(&x->id.daddr, &x->props.saddr, hlist_for_each_entry_safe()
635 const xfrm_address_t *daddr, const xfrm_address_t *saddr, xfrm_init_tempstate()
649 afinfo->init_temprop(x, tmpl, daddr, saddr); xfrm_init_tempstate()
680 const xfrm_address_t *saddr, __xfrm_state_lookup_byaddr()
683 unsigned int h = xfrm_src_hash(net, daddr, saddr, family); __xfrm_state_lookup_byaddr()
690 !xfrm_addr_equal(&x->props.saddr, saddr, family)) __xfrm_state_lookup_byaddr()
714 &x->props.saddr, __xfrm_state_locate()
764 xfrm_state_find(const xfrm_address_t *daddr, const xfrm_address_t *saddr, xfrm_state_find() argument
783 h = xfrm_dst_hash(net, daddr, saddr, tmpl->reqid, encap_family); xfrm_state_find()
789 xfrm_state_addr_check(x, daddr, saddr, encap_family) && xfrm_state_find()
841 xfrm_init_tempstate(x, fl, tmpl, daddr, saddr, family); xfrm_state_find()
856 h = xfrm_src_hash(net, daddr, saddr, encap_family); xfrm_state_find()
886 xfrm_address_t *daddr, xfrm_address_t *saddr, xfrm_stateonly_find()
893 h = xfrm_dst_hash(net, daddr, saddr, reqid, family); xfrm_stateonly_find()
899 xfrm_state_addr_check(x, daddr, saddr, family) && xfrm_stateonly_find()
946 h = xfrm_dst_hash(net, &x->id.daddr, &x->props.saddr, __xfrm_state_insert()
950 h = xfrm_src_hash(net, &x->id.daddr, &x->props.saddr, x->props.family); __xfrm_state_insert()
979 h = xfrm_dst_hash(net, &xnew->id.daddr, &xnew->props.saddr, reqid, family); __xfrm_state_bump_genids()
985 xfrm_addr_equal(&x->props.saddr, &xnew->props.saddr, family)) __xfrm_state_bump_genids()
1007 const xfrm_address_t *saddr, __find_acq_core()
1010 unsigned int h = xfrm_dst_hash(net, daddr, saddr, reqid, family); __find_acq_core()
1023 !xfrm_addr_equal(&x->props.saddr, saddr, family)) __find_acq_core()
1038 x->sel.saddr.a4 = saddr->a4; __find_acq_core()
1041 x->props.saddr.a4 = saddr->a4; __find_acq_core()
1047 x->sel.saddr.in6 = saddr->in6; __find_acq_core()
1050 x->props.saddr.in6 = saddr->in6; __find_acq_core()
1067 h = xfrm_src_hash(net, daddr, saddr, family); __find_acq_core()
1115 &x->id.daddr, &x->props.saddr, 0); xfrm_state_add()
1151 x->props.saddr = orig->props.saddr; xfrm_state_clone()
1238 !xfrm_addr_equal(&x->props.saddr, &m->old_saddr, xfrm_migrate_state_find()
1253 !xfrm_addr_equal(&x->props.saddr, &m->old_saddr, xfrm_migrate_state_find()
1277 memcpy(&xc->props.saddr, &m->new_saddr, sizeof(xc->props.saddr)); xfrm_state_migrate()
1406 const xfrm_address_t *daddr, const xfrm_address_t *saddr, xfrm_state_lookup_byaddr()
1412 x = __xfrm_state_lookup_byaddr(net, mark, daddr, saddr, proto, family); xfrm_state_lookup_byaddr()
1421 const xfrm_address_t *saddr, int create, unsigned short family) xfrm_find_acq()
1426 x = __find_acq_core(net, mark, family, mode, reqid, proto, daddr, saddr, create); xfrm_find_acq()
1606 return addr_match(&x->props.saddr, &filter->saddr, __xfrm_state_filter_match()
2148 &x->props.saddr.a4, &x->id.daddr.a4); xfrm_audit_helper_sainfo()
2152 x->props.saddr.a6, x->id.daddr.a6); xfrm_audit_helper_sainfo()
2169 &iph4->saddr, &iph4->daddr); xfrm_audit_helper_pktinfo()
2175 &iph6->saddr, &iph6->daddr, xfrm_audit_helper_pktinfo()
40 xfrm_dst_hash(struct net *net, const xfrm_address_t *daddr, const xfrm_address_t *saddr, u32 reqid, unsigned short family) xfrm_dst_hash() argument
49 xfrm_src_hash(struct net *net, const xfrm_address_t *daddr, const xfrm_address_t *saddr, unsigned short family) xfrm_src_hash() argument
633 xfrm_init_tempstate(struct xfrm_state *x, const struct flowi *fl, const struct xfrm_tmpl *tmpl, const xfrm_address_t *daddr, const xfrm_address_t *saddr, unsigned short family) xfrm_init_tempstate() argument
678 __xfrm_state_lookup_byaddr(struct net *net, u32 mark, const xfrm_address_t *daddr, const xfrm_address_t *saddr, u8 proto, unsigned short family) __xfrm_state_lookup_byaddr() argument
885 xfrm_stateonly_find(struct net *net, u32 mark, xfrm_address_t *daddr, xfrm_address_t *saddr, unsigned short family, u8 mode, u8 proto, u32 reqid) xfrm_stateonly_find() argument
1002 __find_acq_core(struct net *net, const struct xfrm_mark *m, unsigned short family, u8 mode, u32 reqid, u8 proto, const xfrm_address_t *daddr, const xfrm_address_t *saddr, int create) __find_acq_core() argument
1405 xfrm_state_lookup_byaddr(struct net *net, u32 mark, const xfrm_address_t *daddr, const xfrm_address_t *saddr, u8 proto, unsigned short family) xfrm_state_lookup_byaddr() argument
1419 xfrm_find_acq(struct net *net, const struct xfrm_mark *mark, u8 mode, u32 reqid, u8 proto, const xfrm_address_t *daddr, const xfrm_address_t *saddr, int create, unsigned short family) xfrm_find_acq() argument
H A Dxfrm_policy.c68 addr4_match(fl4->saddr, sel->saddr.a4, sel->prefixlen_s) && __xfrm4_selector_match()
81 addr_match(&fl6->saddr, &sel->saddr, sel->prefixlen_s) && __xfrm6_selector_match()
120 const xfrm_address_t *saddr, __xfrm_dst_lookup()
131 dst = afinfo->dst_lookup(net, tos, oif, saddr, daddr); __xfrm_dst_lookup()
145 xfrm_address_t *saddr = &x->props.saddr; xfrm_dst_lookup() local
150 saddr = x->coaddr; xfrm_dst_lookup()
154 saddr = prev_saddr; xfrm_dst_lookup()
158 dst = __xfrm_dst_lookup(net, tos, oif, saddr, daddr, family); xfrm_dst_lookup()
161 if (prev_saddr != saddr) xfrm_dst_lookup()
162 memcpy(prev_saddr, saddr, sizeof(*prev_saddr)); xfrm_dst_lookup()
395 const xfrm_address_t *saddr, policy_hash_direct()
404 hash = __addr_hash(daddr, saddr, family, hmask, dbits, sbits); policy_hash_direct()
426 h = __addr_hash(&pol->selector.daddr, &pol->selector.saddr, hlist_for_each_entry_safe()
1097 const xfrm_address_t *daddr, *saddr; xfrm_policy_lookup_bytype() local
1102 saddr = xfrm_flowi_saddr(fl, family); xfrm_policy_lookup_bytype()
1103 if (unlikely(!daddr || !saddr)) xfrm_policy_lookup_bytype()
1107 chain = policy_hash_direct(net, daddr, saddr, family, dir); xfrm_policy_lookup_bytype()
1421 xfrm_address_t *saddr = xfrm_flowi_saddr(fl, family); xfrm_tmpl_resolve_one() local
1427 xfrm_address_t *local = saddr; xfrm_tmpl_resolve_one()
1433 local = &tmpl->saddr; xfrm_tmpl_resolve_one()
1449 saddr = local; xfrm_tmpl_resolve_one()
1671 xfrm_address_t saddr, daddr; xfrm_bundle_create() local
1673 xfrm_flowi_addr_get(fl, &saddr, &daddr, family); xfrm_bundle_create()
1716 &saddr, &daddr, family); xfrm_bundle_create()
3101 audit_log_format(audit_buf, " src=%pI4", &sel->saddr.a4); xfrm_audit_common_policyinfo()
3111 audit_log_format(audit_buf, " src=%pI6", sel->saddr.a6); xfrm_audit_common_policyinfo()
3161 xfrm_addr_equal(&sel_tgt->saddr, &sel_cmp->saddr, xfrm_migrate_selector_match()
3183 chain = policy_hash_direct(net, &sel->daddr, &sel->saddr, sel->family, dir); hlist_for_each_entry()
3222 xfrm_addr_equal(&t->saddr, &m->old_saddr, migrate_tmpl_match()
3265 memcpy(&pol->xfrm_vec[i].saddr, &mp->new_saddr, xfrm_policy_migrate()
3266 sizeof(pol->xfrm_vec[i].saddr)); xfrm_policy_migrate()
118 __xfrm_dst_lookup(struct net *net, int tos, int oif, const xfrm_address_t *saddr, const xfrm_address_t *daddr, int family) __xfrm_dst_lookup() argument
393 policy_hash_direct(struct net *net, const xfrm_address_t *daddr, const xfrm_address_t *saddr, unsigned short family, int dir) policy_hash_direct() argument
/linux-4.4.14/net/ipv4/
H A Dxfrm4_state.c30 sel->saddr.a4 = fl4->saddr; __xfrm4_init_tempsel()
44 const xfrm_address_t *daddr, const xfrm_address_t *saddr) xfrm4_init_temprop()
49 x->props.saddr = tmpl->saddr; xfrm4_init_temprop()
50 if (x->props.saddr.a4 == 0) xfrm4_init_temprop()
51 x->props.saddr.a4 = saddr->a4; xfrm4_init_temprop()
43 xfrm4_init_temprop(struct xfrm_state *x, const struct xfrm_tmpl *tmpl, const xfrm_address_t *daddr, const xfrm_address_t *saddr) xfrm4_init_temprop() argument
H A Dnetfilter.c25 __be32 saddr = iph->saddr; ip_route_me_harder() local
30 addr_type = inet_addr_type(net, saddr); ip_route_me_harder()
34 saddr = 0; ip_route_me_harder()
37 * packets with foreign saddr to appear on the NF_INET_LOCAL_OUT hook. ip_route_me_harder()
40 fl4.saddr = saddr; ip_route_me_harder()
86 __be32 saddr; member in struct:ip_rt_info
101 rt_info->saddr = iph->saddr; nf_ip_saveroute()
117 iph->saddr == rt_info->saddr)) nf_ip_reroute()
134 !csum_tcpudp_magic(iph->saddr, iph->daddr, nf_ip_checksum()
145 skb->csum = csum_tcpudp_nofold(iph->saddr, iph->daddr, nf_ip_checksum()
167 skb->csum = csum_tcpudp_nofold(iph->saddr, iph->daddr, protocol, nf_ip_checksum_partial()
H A Ddatagram.c29 __be32 saddr; __ip4_datagram_connect() local
43 saddr = inet->inet_saddr; __ip4_datagram_connect()
47 if (!saddr) __ip4_datagram_connect()
48 saddr = inet->mc_addr; __ip4_datagram_connect()
51 rt = ip_route_connect(fl4, usin->sin_addr.s_addr, saddr, __ip4_datagram_connect()
68 inet->inet_saddr = fl4->saddr; /* Update source address */ __ip4_datagram_connect()
70 inet->inet_rcv_saddr = fl4->saddr; __ip4_datagram_connect()
H A Dxfrm4_policy.c24 const xfrm_address_t *saddr, __xfrm4_dst_lookup()
33 if (saddr) __xfrm4_dst_lookup()
34 fl4->saddr = saddr->a4; __xfrm4_dst_lookup()
46 const xfrm_address_t *saddr, xfrm4_dst_lookup()
51 return __xfrm4_dst_lookup(net, &fl4, tos, oif, saddr, daddr); xfrm4_dst_lookup()
55 xfrm_address_t *saddr, xfrm_address_t *daddr) xfrm4_get_saddr()
64 saddr->a4 = fl4.saddr; xfrm4_get_saddr()
213 fl4->daddr = reverse ? iph->saddr : iph->daddr; _decode_session4()
214 fl4->saddr = reverse ? iph->daddr : iph->saddr; _decode_session4()
22 __xfrm4_dst_lookup(struct net *net, struct flowi4 *fl4, int tos, int oif, const xfrm_address_t *saddr, const xfrm_address_t *daddr) __xfrm4_dst_lookup() argument
45 xfrm4_dst_lookup(struct net *net, int tos, int oif, const xfrm_address_t *saddr, const xfrm_address_t *daddr) xfrm4_dst_lookup() argument
54 xfrm4_get_saddr(struct net *net, int oif, xfrm_address_t *saddr, xfrm_address_t *daddr) xfrm4_get_saddr() argument
H A Dxfrm4_mode_beet.c78 top_iph->saddr = x->props.saddr.a4; xfrm4_beet_output()
122 iph->saddr = x->sel.saddr.a4; xfrm4_beet_input()
H A Droute.c496 (__force u32)iph->saddr, __ip_select_ident()
520 iph->daddr, iph->saddr, 0, 0); __build_flow_key()
709 __be32 old_gw = ip_hdr(skb)->saddr; __ip_do_redirect()
774 __be32 saddr = iph->saddr; __ip_do_redirect() local
779 &saddr, &daddr); __ip_do_redirect()
855 peer = inet_getpeer_v4(net->ipv4.peers, ip_hdr(skb)->saddr, vif, 1); ip_rt_send_redirect()
892 &ip_hdr(skb)->saddr, inet_iif(skb), ip_rt_send_redirect()
944 peer = inet_getpeer_v4(net->ipv4.peers, ip_hdr(skb)->saddr, ip_error()
1159 __func__, &ip_hdr(skb)->saddr, &ip_hdr(skb)->daddr, ip_rt_bug()
1180 src = ip_hdr(skb)->saddr; ip_rt_get_source()
1190 fl4.saddr = iph->saddr; ip_rt_get_source()
1473 static int ip_route_input_mc(struct sk_buff *skb, __be32 daddr, __be32 saddr, ip_route_input_mc() argument
1487 if (ipv4_is_multicast(saddr) || ipv4_is_lbcast(saddr) || ip_route_input_mc()
1491 if (ipv4_is_loopback(saddr) && !IN_DEV_ROUTE_LOCALNET(in_dev)) ip_route_input_mc()
1494 if (ipv4_is_zeronet(saddr)) { ip_route_input_mc()
1498 err = fib_validate_source(skb, saddr, 0, tos, 0, dev, ip_route_input_mc()
1539 __be32 saddr) ip_handle_martian_source()
1549 &daddr, &saddr, dev->name); ip_handle_martian_source()
1594 __be32 daddr, __be32 saddr, u32 tos) __mkroute_input()
1610 err = fib_validate_source(skb, saddr, daddr, tos, FIB_RES_OIF(*res), __mkroute_input()
1614 saddr); __mkroute_input()
1623 inet_addr_onlink(out_dev, saddr, FIB_RES_GW(*res)))) __mkroute_input()
1728 return fib_multipath_hash(inner_iph->daddr, inner_iph->saddr); ip_multipath_icmp_hash()
1731 return fib_multipath_hash(outer_iph->saddr, outer_iph->daddr); ip_multipath_icmp_hash()
1740 __be32 daddr, __be32 saddr, u32 tos) ip_mkroute_input()
1749 h = fib_multipath_hash(saddr, daddr); ip_mkroute_input()
1755 return __mkroute_input(skb, res, in_dev, daddr, saddr, tos); ip_mkroute_input()
1769 static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr, ip_route_input_slow() argument
1799 if (ipv4_is_multicast(saddr) || ipv4_is_lbcast(saddr)) ip_route_input_slow()
1804 if (ipv4_is_lbcast(daddr) || (saddr == 0 && daddr == 0)) ip_route_input_slow()
1810 if (ipv4_is_zeronet(saddr)) ip_route_input_slow()
1817 * and call it once if daddr or/and saddr are loopback addresses ip_route_input_slow()
1822 } else if (ipv4_is_loopback(saddr)) { ip_route_input_slow()
1837 fl4.saddr = saddr; ip_route_input_slow()
1849 err = fib_validate_source(skb, saddr, daddr, tos, ip_route_input_slow()
1863 err = ip_mkroute_input(skb, &res, &fl4, in_dev, daddr, saddr, tos); ip_route_input_slow()
1870 if (!ipv4_is_zeronet(saddr)) { ip_route_input_slow()
1871 err = fib_validate_source(skb, saddr, 0, tos, 0, dev, ip_route_input_slow()
1938 &daddr, &saddr, dev->name); ip_route_input_slow()
1950 ip_handle_martian_source(dev, in_dev, skb, daddr, saddr); ip_route_input_slow()
1954 int ip_route_input_noref(struct sk_buff *skb, __be32 daddr, __be32 saddr, ip_route_input_noref() argument
1976 int our = ip_check_mc_rcu(in_dev, daddr, saddr, ip_route_input_noref()
1985 int res = ip_route_input_mc(skb, daddr, saddr, ip_route_input_noref()
1994 res = ip_route_input_slow(skb, daddr, saddr, tos, dev); ip_route_input_noref()
2018 if (ipv4_is_loopback(fl4->saddr) && !(dev_out->flags & IFF_LOOPBACK)) __mkroute_output()
2037 if (!ip_check_mc_rcu(in_dev, fl4->daddr, fl4->saddr, __mkroute_output()
2163 if (fl4->saddr) { __ip_route_output_key_hash()
2165 if (ipv4_is_multicast(fl4->saddr) || __ip_route_output_key_hash()
2166 ipv4_is_lbcast(fl4->saddr) || __ip_route_output_key_hash()
2167 ipv4_is_zeronet(fl4->saddr)) __ip_route_output_key_hash()
2172 1. ip_dev_find(net, saddr) can return wrong iface, if saddr __ip_route_output_key_hash()
2174 2. Moreover, we are allowed to send packets with saddr __ip_route_output_key_hash()
2181 /* It is equivalent to inet_addr_type(saddr) == RTN_LOCAL */ __ip_route_output_key_hash()
2182 dev_out = __ip_dev_find(net, fl4->saddr, false); __ip_route_output_key_hash()
2206 /* It is equivalent to inet_addr_type(saddr) == RTN_LOCAL */ __ip_route_output_key_hash()
2207 if (!__ip_dev_find(net, fl4->saddr, false)) __ip_route_output_key_hash()
2227 if (!fl4->saddr) __ip_route_output_key_hash()
2228 fl4->saddr = inet_select_addr(dev_out, 0, __ip_route_output_key_hash()
2232 if (!fl4->saddr) { __ip_route_output_key_hash()
2234 fl4->saddr = inet_select_addr(dev_out, 0, __ip_route_output_key_hash()
2237 fl4->saddr = inet_select_addr(dev_out, 0, __ip_route_output_key_hash()
2247 fl4->daddr = fl4->saddr; __ip_route_output_key_hash()
2249 fl4->daddr = fl4->saddr = htonl(INADDR_LOOPBACK); __ip_route_output_key_hash()
2281 if (fl4->saddr == 0) __ip_route_output_key_hash()
2282 fl4->saddr = inet_select_addr(dev_out, 0, __ip_route_output_key_hash()
2292 if (!fl4->saddr) { __ip_route_output_key_hash()
2294 fl4->saddr = res.fi->fib_prefsrc; __ip_route_output_key_hash()
2296 fl4->saddr = fl4->daddr; __ip_route_output_key_hash()
2459 fl4->saddr != src) { rt_fill_info()
2460 if (nla_put_in_addr(skb, RTA_PREFSRC, fl4->saddr)) rt_fill_info()
2494 fl4->saddr, fl4->daddr, rt_fill_info()
2568 fl4.saddr = src; inet_rtm_getroute()
1535 ip_handle_martian_source(struct net_device *dev, struct in_device *in_dev, struct sk_buff *skb, __be32 daddr, __be32 saddr) ip_handle_martian_source() argument
1591 __mkroute_input(struct sk_buff *skb, const struct fib_result *res, struct in_device *in_dev, __be32 daddr, __be32 saddr, u32 tos) __mkroute_input() argument
1736 ip_mkroute_input(struct sk_buff *skb, struct fib_result *res, const struct flowi4 *fl4, struct in_device *in_dev, __be32 daddr, __be32 saddr, u32 tos) ip_mkroute_input() argument
H A Dsyncookies.c56 static u32 cookie_hash(__be32 saddr, __be32 daddr, __be16 sport, __be16 dport, cookie_hash() argument
65 tmp[0] = (__force u32)saddr; cookie_hash()
108 static __u32 secure_tcp_syn_cookie(__be32 saddr, __be32 daddr, __be16 sport, secure_tcp_syn_cookie() argument
114 * HASH(sec1,saddr,sport,daddr,dport,sec1) + sseq + (count * 2^24) secure_tcp_syn_cookie()
115 * + (HASH(sec2,saddr,sport,daddr,dport,count,sec2) % 2^24). secure_tcp_syn_cookie()
122 return (cookie_hash(saddr, daddr, sport, dport, 0, 0) + secure_tcp_syn_cookie()
124 ((cookie_hash(saddr, daddr, sport, dport, count, 1) + data) secure_tcp_syn_cookie()
137 static __u32 check_tcp_syn_cookie(__u32 cookie, __be32 saddr, __be32 daddr, check_tcp_syn_cookie() argument
143 cookie -= cookie_hash(saddr, daddr, sport, dport, 0, 0) + sseq; check_tcp_syn_cookie()
151 cookie_hash(saddr, daddr, sport, dport, count - diff, 1)) check_tcp_syn_cookie()
189 return secure_tcp_syn_cookie(iph->saddr, iph->daddr, __cookie_v4_init_sequence()
211 __u32 mssind = check_tcp_syn_cookie(cookie, iph->saddr, iph->daddr, __cookie_v4_check()
344 sk_daddr_set(req_to_sk(req), ip_hdr(skb)->saddr); cookie_v4_check()
H A Dtcp_metrics.c25 static struct tcp_metrics_block *__tcp_get_metrics(const struct inetpeer_addr *saddr,
152 struct inetpeer_addr *saddr, tcpm_new()
166 tm = __tcp_get_metrics(saddr, daddr, net, hash); tcpm_new()
192 tm->tcpm_saddr = *saddr; tcpm_new()
216 static struct tcp_metrics_block *__tcp_get_metrics(const struct inetpeer_addr *saddr, __tcp_get_metrics() argument
225 if (addr_same(&tm->tcpm_saddr, saddr) && __tcp_get_metrics()
238 struct inetpeer_addr saddr, daddr; __tcp_get_metrics_req() local
242 saddr.family = req->rsk_ops->family; __tcp_get_metrics_req()
246 inetpeer_set_addr_v4(&saddr, inet_rsk(req)->ir_loc_addr); __tcp_get_metrics_req()
252 inetpeer_set_addr_v6(&saddr, &inet_rsk(req)->ir_v6_loc_addr); __tcp_get_metrics_req()
267 if (addr_same(&tm->tcpm_saddr, &saddr) && __tcp_get_metrics_req()
279 struct inetpeer_addr saddr, daddr; __tcp_get_metrics_tw() local
284 inetpeer_set_addr_v4(&saddr, tw->tw_rcv_saddr); __tcp_get_metrics_tw()
291 inetpeer_set_addr_v4(&saddr, tw->tw_rcv_saddr); __tcp_get_metrics_tw()
295 inetpeer_set_addr_v6(&saddr, &tw->tw_v6_rcv_saddr); __tcp_get_metrics_tw()
310 if (addr_same(&tm->tcpm_saddr, &saddr) && __tcp_get_metrics_tw()
323 struct inetpeer_addr saddr, daddr; tcp_get_metrics() local
328 inetpeer_set_addr_v4(&saddr, inet_sk(sk)->inet_saddr); tcp_get_metrics()
335 inetpeer_set_addr_v4(&saddr, inet_sk(sk)->inet_saddr); tcp_get_metrics()
339 inetpeer_set_addr_v6(&saddr, &sk->sk_v6_rcv_saddr); tcp_get_metrics()
352 tm = __tcp_get_metrics(&saddr, &daddr, net, hash); tcp_get_metrics()
356 tm = tcpm_new(dst, &saddr, &daddr, hash); tcp_get_metrics()
981 struct inetpeer_addr saddr, daddr; tcp_metrics_nl_cmd_get() local
993 ret = parse_nl_saddr(info, &saddr); tcp_metrics_nl_cmd_get()
1013 (!src || addr_same(&tm->tcpm_saddr, &saddr)) && tcp_metrics_nl_cmd_get()
1062 struct inetpeer_addr saddr, daddr; tcp_metrics_nl_cmd_del() local
1075 ret = parse_nl_saddr(info, &saddr); tcp_metrics_nl_cmd_del()
1086 (!src || addr_same(&tm->tcpm_saddr, &saddr)) && tcp_metrics_nl_cmd_del()
151 tcpm_new(struct dst_entry *dst, struct inetpeer_addr *saddr, struct inetpeer_addr *daddr, unsigned int hash) tcpm_new() argument
H A Dip_tunnel.c73 struct dst_entry *dst, __be32 saddr) __tunnel_dst_set()
80 idst->saddr = saddr; __tunnel_dst_set()
84 struct dst_entry *dst, __be32 saddr) tunnel_dst_set()
86 __tunnel_dst_set(raw_cpu_ptr(t->dst_cache), dst, saddr); tunnel_dst_set()
104 u32 cookie, __be32 *saddr) tunnel_rtable_get()
116 *saddr = idst->saddr; tunnel_rtable_get()
164 if (local != t->parms.iph.saddr || hlist_for_each_entry_rcu()
180 t->parms.iph.saddr != 0 || hlist_for_each_entry_rcu()
197 if ((local != t->parms.iph.saddr || t->parms.iph.daddr != 0) && hlist_for_each_entry_rcu()
218 t->parms.iph.saddr != 0 || hlist_for_each_entry_rcu()
284 __be32 local = parms->iph.saddr; ip_tunnel_find()
292 if (local == t->parms.iph.saddr && hlist_for_each_entry_rcu()
350 __be32 daddr, __be32 saddr, init_tunnel_flow()
356 fl4->saddr = saddr; init_tunnel_flow()
379 iph->saddr, tunnel->parms.o_key, ip_tunnel_bind_dev()
385 tunnel_dst_set(tunnel, &rt->dst, fl4.saddr); ip_tunnel_bind_dev()
466 &iph->saddr, iph->tos); ip_tunnel_rcv()
730 init_tunnel_flow(&fl4, protocol, dst, tnl_params->saddr, ip_tunnel_xmit()
736 rt = connected ? tunnel_rtable_get(tunnel, 0, &fl4.saddr) : NULL; ip_tunnel_xmit()
746 tunnel_dst_set(tunnel, &rt->dst, fl4.saddr); ip_tunnel_xmit()
799 err = iptunnel_xmit(NULL, rt, skb, fl4.saddr, fl4.daddr, protocol, ip_tunnel_xmit()
822 t->parms.iph.saddr = p->iph.saddr; ip_tunnel_update()
827 memcpy(dev->dev_addr, &p->iph.saddr, 4); ip_tunnel_update()
72 __tunnel_dst_set(struct ip_tunnel_dst *idst, struct dst_entry *dst, __be32 saddr) __tunnel_dst_set() argument
83 tunnel_dst_set(struct ip_tunnel *t, struct dst_entry *dst, __be32 saddr) tunnel_dst_set() argument
103 tunnel_rtable_get(struct ip_tunnel *t, u32 cookie, __be32 *saddr) tunnel_rtable_get() argument
348 init_tunnel_flow(struct flowi4 *fl4, int proto, __be32 daddr, __be32 saddr, __be32 key, __u8 tos, int oif) init_tunnel_flow() argument
H A Dipcomp.c70 t->id.spi = x->props.saddr.a4; ipcomp_tunnel_create()
75 t->props.saddr.a4 = x->props.saddr.a4; ipcomp_tunnel_create()
106 x->props.saddr.a4, IPPROTO_IPIP, AF_INET); ipcomp_tunnel_attach()
H A Dip_vti.c62 iph->saddr, iph->daddr, 0); vti_input()
134 xfrm_address_t *saddr = (xfrm_address_t *)&src; vti_state_check() local
144 return xfrm_addr_equal(saddr, &x->props.saddr, AF_INET); vti_state_check()
146 if (!xfrm_state_addr_check(x, daddr, saddr, AF_INET)) vti_state_check()
173 if (!vti_state_check(dst->xfrm, parms->iph.daddr, parms->iph.saddr)) { vti_xmit()
260 iph->daddr, iph->saddr, 0); vti4_err()
365 memcpy(dev->dev_addr, &iph->saddr, 4); vti_tunnel_init()
465 parms->iph.saddr = nla_get_in_addr(data[IFLA_VTI_LOCAL]); vti_netlink_parms()
514 nla_put_in_addr(skb, IFLA_VTI_LOCAL, p->iph.saddr); vti_fill_info()
524 [IFLA_VTI_LOCAL] = { .len = FIELD_SIZEOF(struct iphdr, saddr) },
H A Dxfrm4_mode_tunnel.c64 top_iph->saddr = x->props.saddr.a4; xfrm4_mode_tunnel_output()
H A Dicmp.c397 __be32 daddr, saddr; icmp_reply() local
412 daddr = ipc.addr = ip_hdr(skb)->saddr; icmp_reply()
413 saddr = fib_compute_spec_dst(skb); icmp_reply()
426 fl4.saddr = saddr; icmp_reply()
450 return fib_multipath_hash(iph->daddr, iph->saddr); icmp_multipath_hash_skb()
463 __be32 saddr, u8 tos, u32 mark, icmp_route_lookup()
473 param->replyopts.opt.opt.faddr : iph->saddr); icmp_route_lookup()
474 fl4->saddr = saddr; icmp_route_lookup()
506 fl4_dec.saddr) == RTN_LOCAL) { icmp_route_lookup()
514 fl4_2.daddr = fl4_dec.saddr; icmp_route_lookup()
523 err = ip_route_input(skb_in, fl4_dec.daddr, fl4_dec.saddr, icmp_route_lookup()
576 __be32 saddr; icmp_send() local
661 saddr = iph->daddr; icmp_send()
671 saddr = inet_select_addr(dev, 0, RT_SCOPE_LINK); icmp_send()
673 saddr = 0; icmp_send()
698 ipc.addr = iph->saddr; icmp_send()
704 rt = icmp_route_lookup(net, &fl4, skb_in, iph, saddr, tos, mark, icmp_send()
857 &ip_hdr(skb)->saddr, icmp_unreach()
459 icmp_route_lookup(struct net *net, struct flowi4 *fl4, struct sk_buff *skb_in, const struct iphdr *iph, __be32 saddr, u8 tos, u32 mark, int type, int code, struct icmp_bxm *param) icmp_route_lookup() argument
H A Dip_fragment.c74 __be32 saddr; member in struct:ipq
107 static unsigned int ipqhashfn(__be16 id, __be32 saddr, __be32 daddr, u8 prot) ipqhashfn() argument
111 (__force u32)saddr, (__force u32)daddr, ipqhashfn()
120 return ipqhashfn(ipq->id, ipq->saddr, ipq->daddr, ipq->protocol); ip4_hashfn()
130 qp->saddr == arg->iph->saddr && ip4_frag_match()
149 qp->saddr = arg->iph->saddr; ip4_frag_init()
154 inet_getpeer_v4(net->ipv4.peers, arg->iph->saddr, arg->vif, 1) : ip4_frag_init()
228 err = ip_route_input_noref(head, iph->daddr, iph->saddr, ip_expire()
264 hash = ipqhashfn(iph->id, iph->saddr, iph->daddr, iph->protocol); ip_find()
650 net_info_ratelimited("Oversized IP packet from %pI4\n", &qp->saddr); ip_frag_reasm()
H A Dudp.c321 static u32 udp4_portaddr_hash(const struct net *net, __be32 saddr, udp4_portaddr_hash() argument
324 return jhash_1word((__force u32)saddr, net_hash_mix(net)) ^ port; udp4_portaddr_hash()
340 __be32 saddr, unsigned short hnum, __be16 sport, compute_score()
361 if (inet->inet_daddr != saddr) compute_score()
386 __be32 saddr, __be16 sport, compute_score2()
405 if (inet->inet_daddr != saddr) compute_score2()
442 __be32 saddr, __be16 sport, udp4_lib_lookup2()
455 score = compute_score2(sk, net, saddr, sport, udp4_lib_lookup2()
463 saddr, sport); udp4_lib_lookup2()
483 else if (unlikely(compute_score2(result, net, saddr, sport, udp4_lib_lookup2()
495 struct sock *__udp4_lib_lookup(struct net *net, __be32 saddr, __udp4_lib_lookup() argument
515 result = udp4_lib_lookup2(net, saddr, sport, __udp4_lib_lookup()
525 result = udp4_lib_lookup2(net, saddr, sport, __udp4_lib_lookup()
536 score = compute_score(sk, net, saddr, hnum, sport, __udp4_lib_lookup()
544 saddr, sport); __udp4_lib_lookup()
565 else if (unlikely(compute_score(result, net, saddr, hnum, sport, __udp4_lib_lookup()
582 return __udp4_lib_lookup(dev_net(skb_dst(skb)->dev), iph->saddr, sport, __udp4_lib_lookup_skb()
587 struct sock *udp4_lib_lookup(struct net *net, __be32 saddr, __be16 sport, udp4_lib_lookup() argument
590 return __udp4_lib_lookup(net, saddr, sport, daddr, dport, dif, &udp_table); udp4_lib_lookup()
638 iph->saddr, uh->source, skb->dev->ifindex, udptable); __udp4_lib_err()
766 __be32 saddr, __be32 daddr, int len) udp_set_csum()
773 uh->check = ~udp_v4_check(len, saddr, daddr, 0); udp_set_csum()
782 uh->check = ~udp_v4_check(len, saddr, daddr, 0); udp_set_csum()
790 uh->check = udp_v4_check(len, saddr, daddr, csum); udp_set_csum()
829 udp4_hwcsum(skb, fl4->saddr, fl4->daddr); udp_send_skb()
836 uh->check = csum_tcpudp_magic(fl4->saddr, fl4->daddr, len, udp_send_skb()
890 __be32 daddr, faddr, saddr; udp_sendmsg() local
990 saddr = ipc.addr; udp_sendmsg()
1010 if (!saddr) udp_sendmsg()
1011 saddr = inet->mc_addr; udp_sendmsg()
1028 faddr, saddr, dport, inet->inet_sport); udp_sendmsg()
1030 if (!saddr && ipc.oif) { udp_sendmsg()
1058 saddr = fl4->saddr; udp_sendmsg()
1088 fl4->saddr = saddr; udp_sendmsg()
1338 sin->sin_addr.s_addr = ip_hdr(skb)->saddr; udp_recvmsg()
1668 __be32 saddr, __be32 daddr, __udp4_lib_mcast_deliver()
1694 uh->source, saddr, __udp4_lib_mcast_deliver()
1762 __be32 saddr, daddr; __udp4_lib_rcv() local
1773 saddr = ip_hdr(skb)->saddr; __udp4_lib_rcv()
1809 saddr, daddr, udptable, proto); __udp4_lib_rcv()
1851 &saddr, ntohs(uh->source), __udp4_lib_rcv()
1863 &saddr, ntohs(uh->source), &daddr, ntohs(uh->dest), __udp4_lib_rcv()
1995 ours = ip_check_mc_rcu(in_dev, iph->daddr, iph->saddr, udp_v4_early_demux()
2002 uh->source, iph->saddr, dif); udp_v4_early_demux()
2005 uh->source, iph->saddr, dif); udp_v4_early_demux()
339 compute_score(struct sock *sk, struct net *net, __be32 saddr, unsigned short hnum, __be16 sport, __be32 daddr, __be16 dport, int dif) compute_score() argument
385 compute_score2(struct sock *sk, struct net *net, __be32 saddr, __be16 sport, __be32 daddr, unsigned int hnum, int dif) compute_score2() argument
441 udp4_lib_lookup2(struct net *net, __be32 saddr, __be16 sport, __be32 daddr, unsigned int hnum, int dif, struct udp_hslot *hslot2, unsigned int slot2) udp4_lib_lookup2() argument
765 udp_set_csum(bool nocheck, struct sk_buff *skb, __be32 saddr, __be32 daddr, int len) udp_set_csum() argument
1666 __udp4_lib_mcast_deliver(struct net *net, struct sk_buff *skb, struct udphdr *uh, __be32 saddr, __be32 daddr, struct udp_table *udptable, int proto) __udp4_lib_mcast_deliver() argument
H A Dtcp_ipv4.c94 __be32 daddr, __be32 saddr, const struct tcphdr *th);
103 ip_hdr(skb)->saddr, tcp_v4_init_sequence()
191 inet->inet_saddr = fl4->saddr; tcp_v4_connect()
373 th->dest, iph->saddr, ntohs(th->source), tcp_v4_err()
544 void __tcp_v4_send_check(struct sk_buff *skb, __be32 saddr, __be32 daddr) __tcp_v4_send_check() argument
549 th->check = ~tcp_v4_check(skb->len, saddr, daddr, 0); __tcp_v4_send_check()
553 th->check = tcp_v4_check(skb->len, saddr, daddr, __tcp_v4_send_check()
642 &tcp_hashinfo, ip_hdr(skb)->saddr, tcp_v4_send_reset()
650 &ip_hdr(skb)->saddr, AF_INET); tcp_v4_send_reset()
659 &ip_hdr(skb)->saddr, tcp_v4_send_reset()
673 key, ip_hdr(skb)->saddr, tcp_v4_send_reset()
678 ip_hdr(skb)->saddr, /* XXX */ tcp_v4_send_reset()
692 ip_hdr(skb)->saddr, ip_hdr(skb)->daddr, tcp_v4_send_reset()
763 key, ip_hdr(skb)->saddr, tcp_v4_send_ack()
769 ip_hdr(skb)->saddr, /* XXX */ tcp_v4_send_ack()
777 ip_hdr(skb)->saddr, ip_hdr(skb)->daddr, tcp_v4_send_ack()
1019 __be32 daddr, __be32 saddr, int nbytes) tcp_v4_md5_hash_pseudoheader()
1031 bp->saddr = saddr; tcp_v4_md5_hash_pseudoheader()
1042 __be32 daddr, __be32 saddr, const struct tcphdr *th) tcp_v4_md5_hash_hdr()
1054 if (tcp_v4_md5_hash_pseudoheader(hp, daddr, saddr, th->doff << 2)) tcp_v4_md5_hash_hdr()
1080 __be32 saddr, daddr; tcp_v4_md5_hash_skb() local
1083 saddr = sk->sk_rcv_saddr; tcp_v4_md5_hash_skb()
1087 saddr = iph->saddr; tcp_v4_md5_hash_skb()
1099 if (tcp_v4_md5_hash_pseudoheader(hp, daddr, saddr, skb->len)) tcp_v4_md5_hash_skb()
1143 hash_expected = tcp_md5_do_lookup(sk, (union tcp_md5_addr *)&iph->saddr, tcp_v4_inbound_md5_hash()
1170 &iph->saddr, ntohs(th->source), tcp_v4_inbound_md5_hash()
1188 sk_daddr_set(req_to_sk(req), ip_hdr(skb)->saddr); tcp_v4_init_req()
1457 iph->saddr, th->source, tcp_v4_early_demux()
1702 iph->saddr, th->source, tcp_v4_rcv()
1018 tcp_v4_md5_hash_pseudoheader(struct tcp_md5sig_pool *hp, __be32 daddr, __be32 saddr, int nbytes) tcp_v4_md5_hash_pseudoheader() argument
1041 tcp_v4_md5_hash_hdr(char *md5_hash, const struct tcp_md5sig_key *key, __be32 daddr, __be32 saddr, const struct tcphdr *th) tcp_v4_md5_hash_hdr() argument
H A Dinet_hashtables.c208 const __be32 saddr, __be16 sport, __inet_lookup_listener()
231 saddr, sport); __inet_lookup_listener()
285 const __be32 saddr, const __be16 sport, __inet_lookup_established()
289 INET_ADDR_COOKIE(acookie, saddr, daddr); __inet_lookup_established()
296 unsigned int hash = inet_ehashfn(net, daddr, hnum, saddr, sport); __inet_lookup_established()
306 saddr, daddr, ports, dif))) { __inet_lookup_established()
310 saddr, daddr, ports, dif))) { __inet_lookup_established()
340 __be32 saddr = inet->inet_daddr; __inet_check_established() local
342 INET_ADDR_COOKIE(acookie, saddr, daddr); __inet_check_established()
346 saddr, inet->inet_dport); __inet_check_established()
360 saddr, daddr, ports, dif))) { __inet_check_established()
206 __inet_lookup_listener(struct net *net, struct inet_hashinfo *hashinfo, const __be32 saddr, __be16 sport, const __be32 daddr, const unsigned short hnum, const int dif) __inet_lookup_listener() argument
283 __inet_lookup_established(struct net *net, struct inet_hashinfo *hashinfo, const __be32 saddr, const __be16 sport, const __be32 daddr, const u16 hnum, const int dif) __inet_lookup_established() argument
H A Dinet_lro.c124 tcph->check = csum_tcpudp_magic(iph->saddr, iph->daddr, lro_update_tcp_ip_header()
139 tcp_ps_hdr_csum = csum_tcpudp_nofold(iph->saddr, iph->daddr, lro_tcp_data_csum()
238 if ((lro_desc->iph->saddr != iph->saddr) || lro_check_tcp_conn()
H A Dip_gre.c306 iph->daddr, iph->saddr, tpi->key); ipgre_err()
399 iph->saddr, iph->daddr, tpi->key); ipgre_rcv()
515 fl->saddr = key->u.ipv4.src; gre_get_rt()
570 err = iptunnel_xmit(skb->sk, rt, skb, fl.saddr, gre_fb_xmit()
597 info->key.u.ipv4.src = fl4.saddr; gre_fill_metadata_dst()
731 const void *daddr, const void *saddr, unsigned int len) ipgre_header()
745 if (saddr) ipgre_header()
746 memcpy(&iph->saddr, saddr, 4); ipgre_header()
758 memcpy(haddr, &iph->saddr, 4); ipgre_header_parse()
778 t->parms.iph.saddr, ipgre_open()
871 memcpy(dev->dev_addr, &iph->saddr, 4); ipgre_tunnel_init()
881 if (!iph->saddr) ipgre_tunnel_init()
986 parms->iph.saddr = nla_get_in_addr(data[IFLA_GRE_LOCAL]); ipgre_netlink_parms()
1151 nla_put_in_addr(skb, IFLA_GRE_LOCAL, p->iph.saddr) || ipgre_fill_info()
1186 [IFLA_GRE_LOCAL] = { .len = FIELD_SIZEOF(struct iphdr, saddr) },
729 ipgre_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) ipgre_header() argument
H A Dping.c380 static void ping_set_saddr(struct sock *sk, struct sockaddr *saddr) ping_set_saddr() argument
382 if (saddr->sa_family == AF_INET) { ping_set_saddr()
384 struct sockaddr_in *addr = (struct sockaddr_in *) saddr; ping_set_saddr()
387 } else if (saddr->sa_family == AF_INET6) { ping_set_saddr()
388 struct sockaddr_in6 *addr = (struct sockaddr_in6 *) saddr; ping_set_saddr()
390 sk->sk_v6_rcv_saddr = np->saddr = addr->sin6_addr; ping_set_saddr()
405 memset(&np->saddr, 0, sizeof(np->saddr)); ping_clear_saddr()
708 __be32 saddr, daddr, faddr; ping_v4_sendmsg() local
769 saddr = ipc.addr; ping_v4_sendmsg()
787 if (!saddr) ping_v4_sendmsg()
788 saddr = inet->mc_addr; ping_v4_sendmsg()
794 inet_sk_flowi_flags(sk), faddr, saddr, 0, 0); ping_v4_sendmsg()
896 sin->sin_addr.s_addr = ip_hdr(skb)->saddr; ping_recvmsg()
913 sin6->sin6_addr = ip6->saddr; ping_recvmsg()
H A Darp.c331 __be32 saddr = 0; arp_solicit() local
349 ip_hdr(skb)->saddr) == RTN_LOCAL) arp_solicit()
350 saddr = ip_hdr(skb)->saddr; arp_solicit()
352 case 1: /* Restrict announcements of saddr in same subnet */ arp_solicit()
355 saddr = ip_hdr(skb)->saddr; arp_solicit()
357 saddr) == RTN_LOCAL) { arp_solicit()
358 /* saddr should be known to target */ arp_solicit()
359 if (inet_addr_onlink(in_dev, target, saddr)) arp_solicit()
362 saddr = 0; arp_solicit()
369 if (!saddr) arp_solicit()
370 saddr = inet_select_addr(dev, target, RT_SCOPE_LINK); arp_solicit()
388 arp_send_dst(ARPOP_REQUEST, ETH_P_ARP, target, dev, saddr, arp_solicit()
H A Draw.c182 iph->saddr, iph->daddr, raw_v4_input()
188 ip_mc_sf_allow(sk, iph->daddr, iph->saddr, raw_v4_input()
197 iph->saddr, iph->daddr, raw_v4_input()
300 iph->daddr, iph->saddr, raw_icmp_error()
401 if (!iph->saddr) raw_send_hdrinc()
402 iph->saddr = fl4->saddr; raw_send_hdrinc()
495 __be32 saddr; raw_sendmsg() local
558 saddr = ipc.addr; raw_sendmsg()
594 if (!saddr) raw_sendmsg()
595 saddr = inet->mc_addr; raw_sendmsg()
604 daddr, saddr, 0, 0); raw_sendmsg()
606 if (!saddr && ipc.oif) { raw_sendmsg()
758 sin->sin_addr.s_addr = ip_hdr(skb)->saddr; raw_recvmsg()
/linux-4.4.14/net/ipv6/
H A Dip6_checksum.c7 __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
18 sum += (__force u32)saddr->s6_addr32[0]; csum_ipv6_magic()
19 carry = (sum < (__force u32)saddr->s6_addr32[0]); csum_ipv6_magic()
22 sum += (__force u32)saddr->s6_addr32[1]; csum_ipv6_magic()
23 carry = (sum < (__force u32)saddr->s6_addr32[1]); csum_ipv6_magic()
26 sum += (__force u32)saddr->s6_addr32[2]; csum_ipv6_magic()
27 carry = (sum < (__force u32)saddr->s6_addr32[2]); csum_ipv6_magic()
30 sum += (__force u32)saddr->s6_addr32[3]; csum_ipv6_magic()
31 carry = (sum < (__force u32)saddr->s6_addr32[3]); csum_ipv6_magic()
92 const struct in6_addr *saddr, udp6_set_csum()
100 uh->check = ~udp_v6_check(len, saddr, daddr, 0); udp6_set_csum()
109 uh->check = ~udp_v6_check(len, saddr, daddr, 0); udp6_set_csum()
117 uh->check = udp_v6_check(len, saddr, daddr, csum); udp6_set_csum()
91 udp6_set_csum(bool nocheck, struct sk_buff *skb, const struct in6_addr *saddr, const struct in6_addr *daddr, int len) udp6_set_csum() argument
H A Dxfrm6_tunnel.c87 static struct xfrm6_tunnel_spi *__xfrm6_tunnel_spi_lookup(struct net *net, const xfrm_address_t *saddr) __xfrm6_tunnel_spi_lookup() argument
93 &xfrm6_tn->spi_byaddr[xfrm6_tunnel_spi_hash_byaddr(saddr)], __xfrm6_tunnel_spi_lookup()
95 if (xfrm6_addr_equal(&x6spi->addr, saddr)) __xfrm6_tunnel_spi_lookup()
102 __be32 xfrm6_tunnel_spi_lookup(struct net *net, const xfrm_address_t *saddr) xfrm6_tunnel_spi_lookup() argument
108 x6spi = __xfrm6_tunnel_spi_lookup(net, saddr); xfrm6_tunnel_spi_lookup()
130 static u32 __xfrm6_tunnel_alloc_spi(struct net *net, xfrm_address_t *saddr) __xfrm6_tunnel_alloc_spi() argument
161 memcpy(&x6spi->addr, saddr, sizeof(x6spi->addr)); __xfrm6_tunnel_alloc_spi()
167 index = xfrm6_tunnel_spi_hash_byaddr(saddr); __xfrm6_tunnel_alloc_spi()
173 __be32 xfrm6_tunnel_alloc_spi(struct net *net, xfrm_address_t *saddr) xfrm6_tunnel_alloc_spi() argument
179 x6spi = __xfrm6_tunnel_spi_lookup(net, saddr); xfrm6_tunnel_alloc_spi()
184 spi = __xfrm6_tunnel_alloc_spi(net, saddr); xfrm6_tunnel_alloc_spi()
197 static void xfrm6_tunnel_free_spi(struct net *net, xfrm_address_t *saddr) xfrm6_tunnel_free_spi() argument
206 &xfrm6_tn->spi_byaddr[xfrm6_tunnel_spi_hash_byaddr(saddr)], xfrm6_tunnel_free_spi()
209 if (xfrm6_addr_equal(&x6spi->addr, saddr)) { xfrm6_tunnel_free_spi()
238 spi = xfrm6_tunnel_spi_lookup(net, (const xfrm_address_t *)&iph->saddr); xfrm6_tunnel_rcv()
300 xfrm6_tunnel_free_spi(net, (xfrm_address_t *)&x->props.saddr); xfrm6_tunnel_destroy()
H A Dnetfilter.c30 .saddr = iph->saddr, ip6_route_me_harder()
77 struct in6_addr saddr; member in struct:ip6_rt_info
90 rt_info->saddr = iph->saddr; nf_ip6_saveroute()
103 !ipv6_addr_equal(&iph->saddr, &rt_info->saddr) || nf_ip6_reroute()
142 if (!csum_ipv6_magic(&ip6h->saddr, &ip6h->daddr, nf_ip6_checksum()
153 csum_ipv6_magic(&ip6h->saddr, &ip6h->daddr, nf_ip6_checksum()
180 skb->csum = ~csum_unfold(csum_ipv6_magic(&ip6h->saddr, nf_ip6_checksum_partial()
H A Dxfrm6_state.c31 *(struct in6_addr *)&sel->saddr = fl6->saddr; __xfrm6_init_tempsel()
45 const xfrm_address_t *daddr, const xfrm_address_t *saddr) xfrm6_init_temprop()
50 memcpy(&x->props.saddr, &tmpl->saddr, sizeof(x->props.saddr)); xfrm6_init_temprop()
51 if (ipv6_addr_any((struct in6_addr *)&x->props.saddr)) xfrm6_init_temprop()
52 memcpy(&x->props.saddr, saddr, sizeof(x->props.saddr)); xfrm6_init_temprop()
44 xfrm6_init_temprop(struct xfrm_state *x, const struct xfrm_tmpl *tmpl, const xfrm_address_t *daddr, const xfrm_address_t *saddr) xfrm6_init_temprop() argument
H A Dip6_udp_tunnel.c74 struct net_device *dev, struct in6_addr *saddr, udp_tunnel6_xmit_skb()
96 udp6_set_csum(nocheck, skb, saddr, daddr, skb->len); udp_tunnel6_xmit_skb()
106 ip6h->saddr = *saddr; udp_tunnel6_xmit_skb()
72 udp_tunnel6_xmit_skb(struct dst_entry *dst, struct sock *sk, struct sk_buff *skb, struct net_device *dev, struct in6_addr *saddr, struct in6_addr *daddr, __u8 prio, __u8 ttl, __be16 src_port, __be16 dst_port, bool nocheck) udp_tunnel6_xmit_skb() argument
H A Dicmp.c257 icmp6h->icmp6_cksum = csum_ipv6_magic(&fl6->saddr, icmpv6_push_pending_frames()
270 icmp6h->icmp6_cksum = csum_ipv6_magic(&fl6->saddr, icmpv6_push_pending_frames()
314 tmp = iph->saddr; mip6_addr_swap()
315 iph->saddr = hao->addr; mip6_addr_swap()
398 const struct in6_addr *saddr = NULL; icmp6_send() local
424 saddr = &hdr->daddr; icmp6_send()
437 saddr = NULL; icmp6_send()
440 addr_type = ipv6_addr_type(&hdr->saddr); icmp6_send()
457 &hdr->saddr, &hdr->daddr); icmp6_send()
466 &hdr->saddr, &hdr->daddr); icmp6_send()
474 fl6.daddr = hdr->saddr; icmp6_send()
475 if (saddr) icmp6_send()
476 fl6.saddr = *saddr; icmp6_send()
519 &hdr->saddr, &hdr->daddr); icmp6_send()
559 const struct in6_addr *saddr = NULL; icmpv6_echo_reply() local
570 saddr = &ipv6_hdr(skb)->daddr; icmpv6_echo_reply()
574 ipv6_anycast_destination(skb_dst(skb), saddr))) icmpv6_echo_reply()
575 saddr = NULL; icmpv6_echo_reply()
582 fl6.daddr = ipv6_hdr(skb)->saddr; icmpv6_echo_reply()
583 if (saddr) icmpv6_echo_reply()
584 fl6.saddr = *saddr; icmpv6_echo_reply()
686 const struct in6_addr *saddr, *daddr; icmpv6_rcv() local
713 saddr = &ipv6_hdr(skb)->saddr; icmpv6_rcv()
718 saddr, daddr); icmpv6_rcv()
792 saddr, daddr); icmpv6_rcv()
823 const struct in6_addr *saddr, icmpv6_flow_init()
828 fl6->saddr = *saddr; icmpv6_flow_init()
821 icmpv6_flow_init(struct sock *sk, struct flowi6 *fl6, u8 type, const struct in6_addr *saddr, const struct in6_addr *daddr, int oif) icmpv6_flow_init() argument
H A Dsyncookies.c47 static u32 cookie_hash(const struct in6_addr *saddr, const struct in6_addr *daddr, cookie_hash() argument
62 memcpy(tmp, saddr, 16); cookie_hash()
71 static __u32 secure_tcp_syn_cookie(const struct in6_addr *saddr, secure_tcp_syn_cookie() argument
77 return (cookie_hash(saddr, daddr, sport, dport, 0, 0) + secure_tcp_syn_cookie()
79 ((cookie_hash(saddr, daddr, sport, dport, count, 1) + data) secure_tcp_syn_cookie()
83 static __u32 check_tcp_syn_cookie(__u32 cookie, const struct in6_addr *saddr, check_tcp_syn_cookie() argument
89 cookie -= cookie_hash(saddr, daddr, sport, dport, 0, 0) + sseq; check_tcp_syn_cookie()
96 cookie_hash(saddr, daddr, sport, dport, count - diff, 1)) check_tcp_syn_cookie()
112 return secure_tcp_syn_cookie(&iph->saddr, &iph->daddr, th->source, __cookie_v6_init_sequence()
129 __u32 mssind = check_tcp_syn_cookie(cookie, &iph->saddr, &iph->daddr, __cookie_v6_check()
187 ireq->ir_v6_rmt_addr = ipv6_hdr(skb)->saddr; cookie_v6_check()
226 fl6.saddr = ireq->ir_v6_loc_addr; cookie_v6_check()
H A Dinet6_hashtables.c53 const struct in6_addr *saddr, __inet6_lookup_established()
65 unsigned int hash = inet6_ehashfn(net, daddr, hnum, saddr, sport); __inet6_lookup_established()
75 if (!INET6_MATCH(sk, net, saddr, daddr, ports, dif)) __inet6_lookup_established()
80 if (unlikely(!INET6_MATCH(sk, net, saddr, daddr, ports, dif))) { __inet6_lookup_established()
124 struct inet_hashinfo *hashinfo, const struct in6_addr *saddr, inet6_lookup_listener()
148 saddr, sport); inet6_lookup_listener()
180 const struct in6_addr *saddr, const __be16 sport, inet6_lookup()
187 sk = __inet6_lookup(net, hashinfo, saddr, sport, daddr, ntohs(dport), dif); inet6_lookup()
201 const struct in6_addr *saddr = &sk->sk_v6_daddr; __inet6_check_established() local
205 const unsigned int hash = inet6_ehashfn(net, daddr, lport, saddr, __inet6_check_established()
219 if (likely(INET6_MATCH(sk2, net, saddr, daddr, ports, dif))) { __inet6_check_established()
51 __inet6_lookup_established(struct net *net, struct inet_hashinfo *hashinfo, const struct in6_addr *saddr, const __be16 sport, const struct in6_addr *daddr, const u16 hnum, const int dif) __inet6_lookup_established() argument
123 inet6_lookup_listener(struct net *net, struct inet_hashinfo *hashinfo, const struct in6_addr *saddr, const __be16 sport, const struct in6_addr *daddr, const unsigned short hnum, const int dif) inet6_lookup_listener() argument
179 inet6_lookup(struct net *net, struct inet_hashinfo *hashinfo, const struct in6_addr *saddr, const __be16 sport, const struct in6_addr *daddr, const __be16 dport, const int dif) inet6_lookup() argument
H A Dxfrm6_mode_beet.c75 top_iph->saddr = *(struct in6_addr *)&x->props.saddr; xfrm6_beet_output()
99 ip6h->saddr = x->sel.saddr.in6; xfrm6_beet_input()
H A Dndisc.c410 const struct in6_addr *saddr, ip6_nd_hdr()
426 hdr->saddr = *saddr; ip6_nd_hdr()
432 const struct in6_addr *saddr) ndisc_send_skb()
448 icmpv6_flow_init(sk, &fl6, type, saddr, daddr, oif); ndisc_send_skb()
460 icmp6h->icmp6_cksum = csum_ipv6_magic(saddr, daddr, skb->len, ndisc_send_skb()
465 ip6_nd_hdr(skb, saddr, daddr, inet6_sk(sk)->hop_limit, skb->len); ndisc_send_skb()
559 const struct in6_addr *daddr, const struct in6_addr *saddr) ndisc_send_ns()
567 if (!saddr) { ndisc_send_ns()
571 saddr = &addr_buf; ndisc_send_ns()
574 if (ipv6_addr_any(saddr)) ndisc_send_ns()
595 ndisc_send_skb(skb, daddr, saddr); ndisc_send_ns()
598 void ndisc_send_rs(struct net_device *dev, const struct in6_addr *saddr, ndisc_send_rs() argument
616 struct inet6_ifaddr *ifp = ipv6_get_ifaddr(dev_net(dev), saddr, ndisc_send_rs()
646 ndisc_send_skb(skb, daddr, saddr); ndisc_send_rs()
664 struct in6_addr *saddr = NULL; ndisc_solicit() local
670 if (skb && ipv6_chk_addr_and_flags(dev_net(dev), &ipv6_hdr(skb)->saddr, ndisc_solicit()
673 saddr = &ipv6_hdr(skb)->saddr; ndisc_solicit()
681 ndisc_send_ns(dev, target, target, saddr); ndisc_solicit()
686 ndisc_send_ns(dev, target, &mcaddr, saddr); ndisc_solicit()
708 const struct in6_addr *saddr = &ipv6_hdr(skb)->saddr; ndisc_recv_ns() local
718 int dad = ipv6_addr_any(saddr); ndisc_recv_ns()
856 neigh = __neigh_lookup(&nd_tbl, saddr, dev, ndisc_recv_ns()
863 ndisc_send_na(dev, saddr, &msg->target, !!is_router, ndisc_recv_ns()
879 struct in6_addr *saddr = &ipv6_hdr(skb)->saddr; ndisc_recv_na() local
972 rt6_clean_tohost(dev_net(dev), saddr); ndisc_recv_na() local
986 const struct in6_addr *saddr = &ipv6_hdr(skb)->saddr; ndisc_recv_rs() local
1007 if (ipv6_addr_any(saddr)) ndisc_recv_rs()
1023 neigh = __neigh_lookup(&nd_tbl, saddr, skb->dev, 1); ndisc_recv_rs()
1067 if (nla_put_in6_addr(skb, NDUSEROPT_SRCADDR, &ipv6_hdr(ra)->saddr)) ndisc_ra_useropt()
1102 if (!(ipv6_addr_type(&ipv6_hdr(skb)->saddr) & IPV6_ADDR_LINKLOCAL)) { ndisc_router_discovery()
1185 ipv6_chk_addr(dev_net(in6_dev->dev), &ipv6_hdr(skb)->saddr, ndisc_router_discovery()
1203 rt = rt6_get_dflt_router(&ipv6_hdr(skb)->saddr, skb->dev); ndisc_router_discovery()
1206 neigh = dst_neigh_lookup(&rt->dst, &ipv6_hdr(skb)->saddr); ndisc_router_discovery()
1225 rt = rt6_add_dflt_router(&ipv6_hdr(skb)->saddr, skb->dev, pref); ndisc_router_discovery()
1233 neigh = dst_neigh_lookup(&rt->dst, &ipv6_hdr(skb)->saddr); ndisc_router_discovery()
1310 neigh = __neigh_lookup(&nd_tbl, &ipv6_hdr(skb)->saddr, ndisc_router_discovery()
1339 ipv6_chk_addr(dev_net(in6_dev->dev), &ipv6_hdr(skb)->saddr, ndisc_router_discovery()
1364 &ipv6_hdr(skb)->saddr); ndisc_router_discovery()
1447 if (!(ipv6_addr_type(&ipv6_hdr(skb)->saddr) & IPV6_ADDR_LINKLOCAL)) { ndisc_redirect_rcv()
1516 &saddr_buf, &ipv6_hdr(skb)->saddr, oif); ndisc_send_redirect()
1537 peer = inet_getpeer_v6(net->ipv6.peers, &ipv6_hdr(skb)->saddr, 1); ndisc_send_redirect()
1598 ndisc_send_skb(buff, &ipv6_hdr(skb)->saddr, &saddr_buf); ndisc_send_redirect()
409 ip6_nd_hdr(struct sk_buff *skb, const struct in6_addr *saddr, const struct in6_addr *daddr, int hop_limit, int len) ip6_nd_hdr() argument
430 ndisc_send_skb(struct sk_buff *skb, const struct in6_addr *daddr, const struct in6_addr *saddr) ndisc_send_skb() argument
558 ndisc_send_ns(struct net_device *dev, const struct in6_addr *solicit, const struct in6_addr *daddr, const struct in6_addr *saddr) ndisc_send_ns() argument
H A Dudp.c146 const struct in6_addr *saddr, __be16 sport, compute_score()
174 if (!ipv6_addr_equal(&sk->sk_v6_daddr, saddr)) compute_score()
192 const struct in6_addr *saddr, __be16 sport, compute_score2()
217 if (!ipv6_addr_equal(&sk->sk_v6_daddr, saddr)) compute_score2()
236 const struct in6_addr *saddr, __be16 sport, udp6_lib_lookup2()
249 score = compute_score2(sk, net, saddr, sport, udp6_lib_lookup2()
257 saddr, sport); udp6_lib_lookup2()
278 else if (unlikely(compute_score2(result, net, saddr, sport, udp6_lib_lookup2()
288 const struct in6_addr *saddr, __be16 sport, __udp6_lib_lookup()
308 result = udp6_lib_lookup2(net, saddr, sport, __udp6_lib_lookup()
318 result = udp6_lib_lookup2(net, saddr, sport, __udp6_lib_lookup()
329 score = compute_score(sk, net, hnum, saddr, sport, daddr, dport, dif); __udp6_lib_lookup()
336 saddr, sport); __udp6_lib_lookup()
357 else if (unlikely(compute_score(result, net, hnum, saddr, sport, __udp6_lib_lookup()
378 return __udp6_lib_lookup(dev_net(skb_dst(skb)->dev), &iph->saddr, sport, __udp6_lib_lookup_skb()
383 struct sock *udp6_lib_lookup(struct net *net, const struct in6_addr *saddr, __be16 sport, udp6_lib_lookup() argument
386 return __udp6_lib_lookup(net, saddr, sport, daddr, dport, dif, &udp_table); udp6_lib_lookup()
482 ipv6_addr_set_v4mapped(ip_hdr(skb)->saddr, udpv6_recvmsg()
486 sin6->sin6_addr = ipv6_hdr(skb)->saddr; udpv6_recvmsg()
543 const struct in6_addr *saddr = &hdr->saddr; __udp6_lib_err() local
551 saddr, uh->source, inet6_iif(skb), udptable); __udp6_lib_err()
777 &ipv6_hdr(skb)->saddr, ntohs(udp_hdr(skb)->source), udp6_csum_zero_error()
786 const struct in6_addr *saddr, const struct in6_addr *daddr, __udp6_lib_mcast_deliver()
812 uh->source, saddr, __udp6_lib_mcast_deliver()
853 const struct in6_addr *saddr, *daddr; __udp6_lib_rcv() local
859 saddr = &ipv6_hdr(skb)->saddr; __udp6_lib_rcv()
880 saddr = &ipv6_hdr(skb)->saddr; __udp6_lib_rcv()
894 saddr, daddr, udptable, proto); __udp6_lib_rcv()
946 saddr, ntohs(uh->source), __udp6_lib_rcv()
986 const struct in6_addr *saddr, udp6_hwcsum_outgoing()
998 uh->check = ~csum_ipv6_magic(saddr, daddr, len, IPPROTO_UDP, 0); udp6_hwcsum_outgoing()
1014 uh->check = csum_ipv6_magic(saddr, daddr, len, IPPROTO_UDP, udp6_hwcsum_outgoing()
1050 udp6_hwcsum_outgoing(sk, skb, &fl6->saddr, &fl6->daddr, len); udp_v6_send_skb()
1056 uh->check = csum_ipv6_magic(&fl6->saddr, &fl6->daddr, udp_v6_send_skb()
1278 if (ipv6_addr_any(&fl6.saddr) && !ipv6_addr_any(&np->saddr)) udpv6_sendmsg()
1279 fl6.saddr = np->saddr; udpv6_sendmsg()
1364 ipv6_addr_equal(&fl6.saddr, &np->saddr) ? udpv6_sendmsg()
1365 &np->saddr : udpv6_sendmsg()
144 compute_score(struct sock *sk, struct net *net, unsigned short hnum, const struct in6_addr *saddr, __be16 sport, const struct in6_addr *daddr, __be16 dport, int dif) compute_score() argument
191 compute_score2(struct sock *sk, struct net *net, const struct in6_addr *saddr, __be16 sport, const struct in6_addr *daddr, unsigned short hnum, int dif) compute_score2() argument
235 udp6_lib_lookup2(struct net *net, const struct in6_addr *saddr, __be16 sport, const struct in6_addr *daddr, unsigned int hnum, int dif, struct udp_hslot *hslot2, unsigned int slot2) udp6_lib_lookup2() argument
287 __udp6_lib_lookup(struct net *net, const struct in6_addr *saddr, __be16 sport, const struct in6_addr *daddr, __be16 dport, int dif, struct udp_table *udptable) __udp6_lib_lookup() argument
785 __udp6_lib_mcast_deliver(struct net *net, struct sk_buff *skb, const struct in6_addr *saddr, const struct in6_addr *daddr, struct udp_table *udptable, int proto) __udp6_lib_mcast_deliver() argument
985 udp6_hwcsum_outgoing(struct sock *sk, struct sk_buff *skb, const struct in6_addr *saddr, const struct in6_addr *daddr, int len) udp6_hwcsum_outgoing() argument
H A Dtcpv6_offload.c37 th->check = ~tcp_v6_check(skb->len - thoff, &iph->saddr, tcp6_gro_complete()
62 __tcp_v6_send_check(skb, &ipv6h->saddr, &ipv6h->daddr); tcp6_gso_segment()
H A Dtcp_ipv6.c108 ipv6_hdr(skb)->saddr.s6_addr32, tcp_v6_init_sequence()
121 struct in6_addr *saddr = NULL, *final_p, final; tcp_v6_connect() local
222 np->saddr = sk->sk_v6_rcv_saddr; tcp_v6_connect()
228 saddr = &sk->sk_v6_rcv_saddr; tcp_v6_connect()
232 fl6.saddr = saddr ? *saddr : np->saddr; tcp_v6_connect()
249 if (!saddr) { tcp_v6_connect()
250 saddr = &fl6.saddr; tcp_v6_connect()
251 sk->sk_v6_rcv_saddr = *saddr; tcp_v6_connect()
255 np->saddr = *saddr; tcp_v6_connect()
283 tp->write_seq = secure_tcpv6_sequence_number(np->saddr.s6_addr32, tcp_v6_connect()
336 &hdr->saddr, ntohs(th->source), tcp_v6_err()
532 const struct in6_addr *saddr, int nbytes) tcp_v6_md5_hash_pseudoheader()
539 bp->saddr = *saddr; tcp_v6_md5_hash_pseudoheader()
549 const struct in6_addr *daddr, struct in6_addr *saddr, tcp_v6_md5_hash_hdr()
562 if (tcp_v6_md5_hash_pseudoheader(hp, daddr, saddr, th->doff << 2)) tcp_v6_md5_hash_hdr()
586 const struct in6_addr *saddr, *daddr; tcp_v6_md5_hash_skb() local
592 saddr = &sk->sk_v6_rcv_saddr; tcp_v6_md5_hash_skb()
596 saddr = &ip6h->saddr; tcp_v6_md5_hash_skb()
608 if (tcp_v6_md5_hash_pseudoheader(hp, daddr, saddr, skb->len)) tcp_v6_md5_hash_skb()
642 hash_expected = tcp_v6_md5_do_lookup(sk, &ip6h->saddr); tcp_v6_inbound_md5_hash()
667 &ip6h->saddr, ntohs(th->source), tcp_v6_inbound_md5_hash()
682 ireq->ir_v6_rmt_addr = ipv6_hdr(skb)->saddr; tcp_v6_init_req()
793 &ipv6_hdr(skb)->saddr, tcp_v6_send_response()
799 fl6.daddr = ipv6_hdr(skb)->saddr; tcp_v6_send_response()
800 fl6.saddr = ipv6_hdr(skb)->daddr; tcp_v6_send_response()
806 __tcp_v6_send_check(buff, &fl6.saddr, &fl6.daddr); tcp_v6_send_response()
869 &tcp_hashinfo, &ipv6h->saddr, tcp_v6_send_reset()
876 key = tcp_v6_md5_do_lookup(sk1, &ipv6h->saddr); tcp_v6_send_reset()
884 key = sk ? tcp_v6_md5_do_lookup(sk, &ipv6h->saddr) : NULL; tcp_v6_send_reset()
1010 newnp->saddr = newsk->sk_v6_rcv_saddr; tcp_v6_syn_recv_sock()
1078 newnp->saddr = ireq->ir_v6_loc_addr; tcp_v6_syn_recv_sock()
1505 &ipv6_hdr(skb)->saddr, th->source, tcp_v6_rcv()
1549 &hdr->saddr, th->source, tcp_v6_early_demux()
530 tcp_v6_md5_hash_pseudoheader(struct tcp_md5sig_pool *hp, const struct in6_addr *daddr, const struct in6_addr *saddr, int nbytes) tcp_v6_md5_hash_pseudoheader() argument
548 tcp_v6_md5_hash_hdr(char *md5_hash, struct tcp_md5sig_key *key, const struct in6_addr *daddr, struct in6_addr *saddr, const struct tcphdr *th) tcp_v6_md5_hash_hdr() argument
H A Dxfrm6_policy.c31 const xfrm_address_t *saddr, xfrm6_dst_lookup()
42 if (saddr) xfrm6_dst_lookup()
43 memcpy(&fl6.saddr, saddr, sizeof(fl6.saddr)); xfrm6_dst_lookup()
57 xfrm_address_t *saddr, xfrm_address_t *daddr) xfrm6_get_saddr()
67 ipv6_dev_get_saddr(dev_net(dev), dev, &daddr->in6, 0, &saddr->in6); xfrm6_get_saddr()
143 fl6->daddr = reverse ? hdr->saddr : hdr->daddr; _decode_session6()
144 fl6->saddr = reverse ? hdr->daddr : hdr->saddr; _decode_session6()
30 xfrm6_dst_lookup(struct net *net, int tos, int oif, const xfrm_address_t *saddr, const xfrm_address_t *daddr) xfrm6_dst_lookup() argument
56 xfrm6_get_saddr(struct net *net, int oif, xfrm_address_t *saddr, xfrm_address_t *daddr) xfrm6_get_saddr() argument
H A Doutput_core.c51 offsetof(struct ipv6hdr, saddr), ipv6_proxy_select_ident()
67 const struct in6_addr *saddr) ipv6_select_ident()
74 id = __ipv6_select_ident(net, ip6_idents_hashrnd, daddr, saddr); ipv6_select_ident()
65 ipv6_select_ident(struct net *net, const struct in6_addr *daddr, const struct in6_addr *saddr) ipv6_select_ident() argument
H A Dipcomp6.c95 t->id.spi = xfrm6_tunnel_alloc_spi(net, (xfrm_address_t *)&x->props.saddr); ipcomp6_tunnel_create()
103 memcpy(t->props.saddr.a6, x->props.saddr.a6, sizeof(struct in6_addr)); ipcomp6_tunnel_create()
129 spi = xfrm6_tunnel_spi_lookup(net, (xfrm_address_t *)&x->props.saddr); ipcomp6_tunnel_attach()
H A Dxfrm6_input.c59 xfrm_address_t *saddr, u8 proto) xfrm6_input_addr()
90 src = saddr; xfrm6_input_addr()
58 xfrm6_input_addr(struct sk_buff *skb, xfrm_address_t *daddr, xfrm_address_t *saddr, u8 proto) xfrm6_input_addr() argument
H A Dxfrm6_mode_tunnel.c60 top_iph->saddr = *(struct in6_addr *)&x->props.saddr; xfrm6_mode_tunnel_output()
H A Dfib6_rules.c105 struct in6_addr saddr; fib6_rule_action() local
111 &saddr)) fib6_rule_action()
113 if (!ipv6_prefix_equal(&saddr, &r->src.addr, fib6_rule_action()
116 flp6->saddr = saddr; fib6_rule_action()
177 if (!ipv6_prefix_equal(&fl6->saddr, &r->src.addr, fib6_rule_match()
H A Ddatagram.c111 if (ipv6_addr_any(&np->saddr) || __ip6_datagram_connect()
112 ipv6_mapped_addr_any(&np->saddr)) __ip6_datagram_connect()
113 ipv6_addr_set_v4mapped(inet->inet_saddr, &np->saddr); __ip6_datagram_connect()
159 fl6.saddr = np->saddr; __ip6_datagram_connect()
187 if (ipv6_addr_any(&np->saddr)) __ip6_datagram_connect()
188 np->saddr = fl6.saddr; __ip6_datagram_connect()
191 sk->sk_v6_rcv_saddr = fl6.saddr; __ip6_datagram_connect()
201 ipv6_addr_equal(&fl6.saddr, &np->saddr) ? __ip6_datagram_connect()
202 &np->saddr : __ip6_datagram_connect()
448 sin->sin6_addr = ipv6_hdr(skb)->saddr; ipv6_recv_error()
455 ipv6_addr_set_v4mapped(ip_hdr(skb)->saddr, ipv6_recv_error()
751 fl6->saddr = src_info->ipi6_addr; for_each_cmsghdr()
H A Dsit.c102 if (local == t->parms.iph.saddr && ipip6_tunnel_lookup()
115 if (local == t->parms.iph.saddr && ipip6_tunnel_lookup()
130 __be32 local = parms->iph.saddr; __ipip6_bucket()
198 memcpy(dev->dev_addr, &t->parms.iph.saddr, 4); ipip6_tunnel_create()
225 __be32 local = parms->iph.saddr; ipip6_tunnel_locate()
235 if (local == t->parms.iph.saddr && ipip6_tunnel_locate()
447 p = __ipip6_tunnel_locate_prl(t, iph->saddr); isatap_chksrc()
454 const struct in6_addr *addr6 = &ipv6_hdr(skb)->saddr; isatap_chksrc()
457 (addr6->s6_addr32[3] == iph->saddr) && isatap_chksrc()
503 rt = rt6_lookup(dev_net(skb->dev), &ipv6_hdr(skb2)->saddr, NULL, 0, 0); ipip6_err_gen_icmpv6_unreach()
557 iph->saddr); ipip6_err()
647 if (unlikely(is_spoofed_6rd(tunnel, iph->saddr, &ipv6h->saddr))) { packet_is_spoofed()
649 &iph->saddr, &ipv6h->saddr, packet_is_spoofed()
661 &iph->saddr, &ipv6h->saddr, packet_is_spoofed()
673 iph->saddr, iph->daddr); ipip6_rcv()
697 &iph->saddr, iph->tos); ipip6_rcv()
735 iph->saddr, iph->daddr); ipip_rcv()
894 dst, tiph->saddr, ipip6_tunnel_xmit()
986 err = iptunnel_xmit(NULL, rt, skb, fl4.saddr, fl4.daddr, ipip6_tunnel_xmit()
1055 iph->daddr, iph->saddr, ipip6_tunnel_bind_dev()
1088 t->parms.iph.saddr = p->iph.saddr; ipip6_tunnel_update()
1090 memcpy(t->dev->dev_addr, &p->iph.saddr, 4); ipip6_tunnel_update()
1446 parms->iph.saddr = nla_get_be32(data[IFLA_IPTUN_LOCAL]); ipip6_netlink_parms()
1670 nla_put_in_addr(skb, IFLA_IPTUN_LOCAL, parm->iph.saddr) || ipip6_fill_info()
H A Draw.c160 const struct in6_addr *saddr; ipv6_raw_deliver() local
167 saddr = &ipv6_hdr(skb)->saddr; ipv6_raw_deliver()
168 daddr = saddr + 1; ipv6_raw_deliver()
179 sk = __raw_v6_lookup(net, sk, nexthdr, daddr, saddr, inet6_iif(skb)); ipv6_raw_deliver()
222 sk = __raw_v6_lookup(net, sk_next(sk), nexthdr, daddr, saddr, ipv6_raw_deliver()
311 np->saddr = addr->sin6_addr; rawv6_bind()
364 const struct in6_addr *saddr, *daddr; raw6_icmp_error() local
374 saddr = &ip6h->saddr; raw6_icmp_error()
378 while ((sk = __raw_v6_lookup(net, sk, nexthdr, saddr, daddr, raw6_icmp_error()
431 if (!csum_ipv6_magic(&ipv6_hdr(skb)->saddr, rawv6_rcv()
437 skb->csum = ~csum_unfold(csum_ipv6_magic(&ipv6_hdr(skb)->saddr, rawv6_rcv()
506 sin6->sin6_addr = ipv6_hdr(skb)->saddr; rawv6_recvmsg()
598 csum = csum_ipv6_magic(&fl6->saddr, &fl6->daddr, rawv6_push_pending_frames()
862 if (ipv6_addr_any(&fl6.saddr) && !ipv6_addr_any(&np->saddr)) rawv6_sendmsg()
863 fl6.saddr = np->saddr; rawv6_sendmsg()
H A Dinet6_connection_sock.c84 fl6->saddr = ireq->ir_v6_loc_addr; inet6_csk_route_req()
130 fl6->saddr = np->saddr; inet6_csk_route_socket()
H A Dmip6.c138 if (!ipv6_addr_equal(&iph->saddr, (struct in6_addr *)x->coaddr) && mip6_destopt_input()
176 memcpy(&hao->addr, &iph->saddr, sizeof(hao->addr)); mip6_destopt_output()
178 memcpy(&iph->saddr, x->coaddr, sizeof(iph->saddr)); mip6_destopt_output()
234 hao ? &hao->addr : &ipv6_hdr(skb)->saddr, mip6_destopt_reject()
242 memcpy(&sel.saddr, (xfrm_address_t *)&ipv6_hdr(skb)->saddr, mip6_destopt_reject()
243 sizeof(sel.saddr)); mip6_destopt_reject()
H A Droute.c467 const struct in6_addr *saddr, rt6_device_match()
474 if (!oif && ipv6_addr_any(saddr)) rt6_device_match()
495 if (ipv6_chk_addr(net, saddr, dev, rt6_device_match()
831 struct in6_addr *saddr) fib6_backtrack()
839 fn = fib6_lookup(FIB6_SUBTREE(pn), NULL, saddr); fib6_backtrack()
855 fn = fib6_lookup(&table->tb6_root, &fl6->daddr, &fl6->saddr); ip6_pol_route_lookup()
858 rt = rt6_device_match(net, rt, &fl6->saddr, fl6->flowi6_oif, flags); ip6_pol_route_lookup()
862 fn = fib6_backtrack(fn, &fl6->saddr); ip6_pol_route_lookup()
880 const struct in6_addr *saddr, int oif, int strict) rt6_lookup()
889 if (saddr) { rt6_lookup()
890 memcpy(&fl6.saddr, saddr, sizeof(*saddr)); rt6_lookup()
934 const struct in6_addr *saddr) ip6_rt_cache_alloc()
962 if (rt->rt6i_src.plen && saddr) { ip6_rt_cache_alloc()
963 rt->rt6i_src.addr = *saddr; ip6_rt_cache_alloc()
1053 fn = fib6_lookup(&table->tb6_root, &fl6->daddr, &fl6->saddr); ip6_pol_route()
1064 fn = fib6_backtrack(fn, &fl6->saddr); ip6_pol_route()
1158 .saddr = iph->saddr, ip6_route_input()
1189 any_src = ipv6_addr_any(&fl6->saddr); ip6_route_output_flags()
1356 const struct in6_addr *daddr, *saddr; __ip6_rt_update_pmtu() local
1361 saddr = &iph->saddr; __ip6_rt_update_pmtu()
1364 saddr = &inet6_sk(sk)->saddr; __ip6_rt_update_pmtu()
1368 nrt6 = ip6_rt_cache_alloc(rt6, daddr, saddr); __ip6_rt_update_pmtu()
1399 fl6.saddr = iph->saddr; ip6_update_pmtu()
1442 fn = fib6_lookup(&table->tb6_root, &fl6->daddr, &fl6->saddr); __ip6_route_redirect()
1466 fn = fib6_backtrack(fn, &fl6->saddr); __ip6_route_redirect()
1504 fl6.saddr = iph->saddr; ip6_redirect()
1507 dst = ip6_route_redirect(net, &fl6, &ipv6_hdr(skb)->saddr); ip6_redirect()
1526 fl6.saddr = iph->daddr; ip6_redirect_no_header()
1528 dst = ip6_route_redirect(net, &fl6, &iph->saddr); ip6_redirect_no_header()
2533 struct in6_addr *saddr) ip6_route_get_saddr()
2539 *saddr = rt->rt6i_prefsrc.addr; ip6_route_get_saddr()
2542 daddr, prefs, saddr); ip6_route_get_saddr()
3245 fl6.saddr = *(struct in6_addr *)nla_data(tb[RTA_SRC]); inet6_rtm_getroute()
3276 if (!ipv6_addr_any(&fl6.saddr)) inet6_rtm_getroute()
3307 err = rt6_fill_node(net, skb, rt, &fl6.daddr, &fl6.saddr, iif, inet6_rtm_getroute()
465 rt6_device_match(struct net *net, struct rt6_info *rt, const struct in6_addr *saddr, int oif, int flags) rt6_device_match() argument
830 fib6_backtrack(struct fib6_node *fn, struct in6_addr *saddr) fib6_backtrack() argument
879 rt6_lookup(struct net *net, const struct in6_addr *daddr, const struct in6_addr *saddr, int oif, int strict) rt6_lookup() argument
932 ip6_rt_cache_alloc(struct rt6_info *ort, const struct in6_addr *daddr, const struct in6_addr *saddr) ip6_rt_cache_alloc() argument
2529 ip6_route_get_saddr(struct net *net, struct rt6_info *rt, const struct in6_addr *daddr, unsigned int prefs, struct in6_addr *saddr) ip6_route_get_saddr() argument
H A Dudp_offload.c82 uh->check = udp_v6_check(skb->len, &ipv6h->saddr, udp6_ufo_fragment()
164 uh->check = ~udp_v6_check(skb->len - nhoff, &ipv6h->saddr, udp6_gro_complete()
/linux-4.4.14/net/core/
H A Dsecure_seq.c43 __u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr, secure_tcpv6_sequence_number() argument
51 memcpy(hash, saddr, 16); secure_tcpv6_sequence_number()
65 u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr, secure_ipv6_port_ephemeral() argument
73 memcpy(hash, saddr, 16); secure_ipv6_port_ephemeral()
89 __u32 secure_tcp_sequence_number(__be32 saddr, __be32 daddr, secure_tcp_sequence_number() argument
95 hash[0] = (__force u32)saddr; secure_tcp_sequence_number()
105 u32 secure_ipv4_port_ephemeral(__be32 saddr, __be32 daddr, __be16 dport) secure_ipv4_port_ephemeral() argument
110 hash[0] = (__force u32)saddr; secure_ipv4_port_ephemeral()
123 u64 secure_dccp_sequence_number(__be32 saddr, __be32 daddr, secure_dccp_sequence_number() argument
130 hash[0] = (__force u32)saddr; secure_dccp_sequence_number()
146 u64 secure_dccpv6_sequence_number(__be32 *saddr, __be32 *daddr, secure_dccpv6_sequence_number() argument
155 memcpy(hash, saddr, 16); secure_dccpv6_sequence_number()
/linux-4.4.14/include/uapi/linux/netfilter/
H A Dxt_policy.h21 __u8 saddr:1, member in struct:xt_policy_spec
40 union nf_inet_addr saddr; member in struct:xt_policy_elem::__anon14304::__anon14305
47 union xt_policy_addr saddr;
/linux-4.4.14/arch/cris/include/arch-v32/arch/
H A Dchecksum.h13 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
23 : "0" (sum), "r" (daddr), "r" (saddr), \ csum_tcpudp_nofold()
/linux-4.4.14/include/net/netfilter/
H A Dnf_queue.h49 if ((__force u32)iph->saddr < (__force u32)iph->daddr) hash_v4()
50 return jhash_3words((__force u32)iph->saddr, hash_v4()
54 (__force u32)iph->saddr, iph->protocol, jhash_initval); hash_v4()
63 if ((__force u32)ip6h->saddr.s6_addr32[3] < hash_v6()
65 a = (__force u32) ip6h->saddr.s6_addr32[3]; hash_v6()
68 b = (__force u32) ip6h->saddr.s6_addr32[3]; hash_v6()
72 if ((__force u32)ip6h->saddr.s6_addr32[1] < hash_v6()
74 c = (__force u32) ip6h->saddr.s6_addr32[1]; hash_v6()
/linux-4.4.14/arch/blackfin/include/asm/
H A Dchecksum.h17 __csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, __csum_tcpudp_nofold() argument
35 : "d" (daddr), "d" (saddr), "d" ((len + proto) << 8), "0"(sum) __csum_tcpudp_nofold()
/linux-4.4.14/net/ipv6/netfilter/
H A Dnft_chain_route_ipv6.c31 struct in6_addr saddr, daddr; nf_route_table_hook() local
40 memcpy(&saddr, &ipv6_hdr(skb)->saddr, sizeof(saddr)); nf_route_table_hook()
50 (memcmp(&ipv6_hdr(skb)->saddr, &saddr, sizeof(saddr)) || nf_route_table_hook()
H A Dip6table_mangle.c38 struct in6_addr saddr, daddr; ip6t_mangle_out() local
52 memcpy(&saddr, &ipv6_hdr(skb)->saddr, sizeof(saddr)); ip6t_mangle_out()
63 (!ipv6_addr_equal(&ipv6_hdr(skb)->saddr, &saddr) || ip6t_mangle_out()
H A Dip6t_rpfilter.c39 .daddr = iph->saddr, rpfilter_lookup_reverse6()
44 memcpy(&fl6.saddr, &iph->daddr, sizeof(struct in6_addr)); rpfilter_lookup_reverse6()
92 saddrtype = ipv6_addr_type(&iph->saddr); rpfilter_mt()
H A Dnf_reject_ipv6.c82 ip6h->saddr = oip6h->daddr; nf_reject_ip6hdr_put()
83 ip6h->daddr = oip6h->saddr; nf_reject_ip6hdr_put()
125 tcph->check = csum_ipv6_magic(&ipv6_hdr(nskb)->saddr, nf_reject_ip6_tcphdr_put()
144 if ((!(ipv6_addr_type(&oip6h->saddr) & IPV6_ADDR_UNICAST)) || nf_send_reset6()
156 fl6.saddr = oip6h->daddr; nf_send_reset6()
157 fl6.daddr = oip6h->saddr; nf_send_reset6()
H A Dip6t_SYNPROXY.c23 synproxy_build_ip(struct sk_buff *skb, const struct in6_addr *saddr, synproxy_build_ip() argument
33 iph->saddr = *saddr; synproxy_build_ip()
50 nth->check = ~tcp_v6_check(tcp_hdr_size, &niph->saddr, &niph->daddr, 0); synproxy_send_tcp()
57 fl6.saddr = niph->saddr; synproxy_send_tcp()
106 niph = synproxy_build_ip(nskb, &iph->daddr, &iph->saddr); synproxy_send_client_synack()
147 niph = synproxy_build_ip(nskb, &iph->saddr, &iph->daddr); synproxy_send_server_syn()
192 niph = synproxy_build_ip(nskb, &iph->daddr, &iph->saddr); synproxy_send_server_ack()
230 niph = synproxy_build_ip(nskb, &iph->saddr, &iph->daddr); synproxy_send_client_ack()
H A Dip6t_NPT.c88 if (!ip6t_npt_map_pfx(npt, &ipv6_hdr(skb)->saddr)) { ip6t_snpt_tg()
90 offsetof(struct ipv6hdr, saddr)); ip6t_snpt_tg()
H A Dip6t_eui64.c44 if (!memcmp(ipv6_hdr(skb)->saddr.s6_addr + 8, eui64, eui64_mt6()
H A Dnf_nat_l3proto_ipv6.c53 fl6->saddr = t->src.u3.in6; nf_nat_ipv6_decode_session()
104 ipv6h->saddr = target->src.u3.in6; nf_nat_ipv6_manip_pkt()
120 oldip = &ipv6h->saddr; nf_nat_ipv6_csum_update()
145 *check = ~csum_ipv6_magic(&ipv6h->saddr, &ipv6h->daddr, nf_nat_ipv6_csum_recalc()
149 *check = csum_ipv6_magic(&ipv6h->saddr, &ipv6h->daddr, nf_nat_ipv6_csum_recalc()
249 csum_ipv6_magic(&ipv6h->saddr, &ipv6h->daddr, nf_nat_icmpv6_reply_translation()
/linux-4.4.14/arch/nios2/include/asm/
H A Dchecksum.h47 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
62 : "=r" (sum), "=r" (saddr) csum_tcpudp_nofold()
65 "1" (saddr) csum_tcpudp_nofold()
71 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
75 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
/linux-4.4.14/net/ipv4/netfilter/
H A Dnft_chain_route_ipv4.c31 __be32 saddr, daddr; nf_route_table_hook() local
44 saddr = iph->saddr; nf_route_table_hook()
52 if (iph->saddr != saddr || nf_route_table_hook()
H A Diptable_mangle.c45 __be32 saddr, daddr; ipt_mangle_out() local
57 saddr = iph->saddr; ipt_mangle_out()
66 if (iph->saddr != saddr || ipt_mangle_out()
H A Dipt_rpfilter.c87 if (ipv4_is_zeronet(iph->saddr)) rpfilter_mt()
91 flow.daddr = iph->saddr; rpfilter_mt()
92 flow.saddr = rpfilter_get_saddr(iph->daddr); rpfilter_mt()
H A Dnf_reject_ipv4.c60 niph->saddr = oiph->daddr; nf_reject_iphdr_put()
61 niph->daddr = oiph->saddr; nf_reject_iphdr_put()
93 tcph->check = ~tcp_v4_check(sizeof(struct tcphdr), niph->saddr, nf_reject_ip_tcphdr_put()
H A Dipt_SYNPROXY.c21 synproxy_build_ip(struct sk_buff *skb, __be32 saddr, __be32 daddr) synproxy_build_ip() argument
35 iph->saddr = saddr; synproxy_build_ip()
50 nth->check = ~tcp_v4_check(tcp_hdr_size, niph->saddr, niph->daddr, 0); synproxy_send_tcp()
93 niph = synproxy_build_ip(nskb, iph->daddr, iph->saddr); synproxy_send_client_synack()
134 niph = synproxy_build_ip(nskb, iph->saddr, iph->daddr); synproxy_send_server_syn()
179 niph = synproxy_build_ip(nskb, iph->daddr, iph->saddr); synproxy_send_server_ack()
217 niph = synproxy_build_ip(nskb, iph->saddr, iph->daddr); synproxy_send_client_ack()
H A Dnf_nat_l3proto_ipv4.c54 fl4->saddr = t->src.u3.ip; nf_nat_ipv4_decode_session()
99 csum_replace4(&iph->check, iph->saddr, target->src.u3.ip); nf_nat_ipv4_manip_pkt()
100 iph->saddr = target->src.u3.ip; nf_nat_ipv4_manip_pkt()
117 oldip = iph->saddr; nf_nat_ipv4_csum_update()
141 *check = ~csum_tcpudp_magic(iph->saddr, iph->daddr, nf_nat_ipv4_csum_recalc()
145 *check = csum_tcpudp_magic(iph->saddr, iph->daddr, nf_nat_ipv4_csum_recalc()
/linux-4.4.14/arch/unicore32/include/asm/
H A Dchecksum.h23 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
33 : "r" (sum), "r" (daddr), "r" (saddr), "r" (len), "Ir" (htons(proto)) csum_tcpudp_nofold()
/linux-4.4.14/arch/c6x/include/asm/
H A Dchecksum.h13 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
27 : "a" (saddr), "a" (daddr), "a" (proto)); csum_tcpudp_nofold()
/linux-4.4.14/arch/cris/include/arch-v10/arch/
H A Dchecksum.h12 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
24 : "0" (sum), "r" (daddr), "r" (saddr), "r" ((len + proto) << 8)); csum_tcpudp_nofold()
/linux-4.4.14/arch/microblaze/include/asm/
H A Dchecksum.h19 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
27 : "d" (saddr), "d" (daddr), csum_tcpudp_nofold()
/linux-4.4.14/arch/arm/include/asm/
H A Dchecksum.h87 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
101 : "r" (daddr), "r" (saddr), "r" (lenprot) csum_tcpudp_nofold()
114 : "r" (sum), "r" (daddr), "r" (saddr), "r" (lenprot) csum_tcpudp_nofold()
124 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
127 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
143 __csum_ipv6_magic(const struct in6_addr *saddr, const struct in6_addr *daddr, __be32 len,
147 csum_ipv6_magic(const struct in6_addr *saddr, const struct in6_addr *daddr, __u32 len, csum_ipv6_magic() argument
150 return csum_fold(__csum_ipv6_magic(saddr, daddr, htonl(len), csum_ipv6_magic()
/linux-4.4.14/tools/testing/selftests/net/
H A Dpsock_lib.h73 struct sockaddr_in saddr, daddr; pair_udp_open() local
82 memset(&saddr, 0, sizeof(saddr)); pair_udp_open()
83 saddr.sin_family = AF_INET; pair_udp_open()
84 saddr.sin_port = htons(port); pair_udp_open()
85 saddr.sin_addr.s_addr = htonl(INADDR_LOOPBACK); pair_udp_open()
97 if (bind(fds[0], (void *) &saddr, sizeof(saddr))) { pair_udp_open()
/linux-4.4.14/arch/m68k/include/asm/
H A Dchecksum.h81 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
89 : "=&d" (sum), "=d" (saddr) csum_tcpudp_nofold()
90 : "g" (daddr), "1" (saddr), "d" (len + proto), csum_tcpudp_nofold()
101 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
104 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
119 csum_ipv6_magic(const struct in6_addr *saddr, const struct in6_addr *daddr, csum_ipv6_magic() argument
142 : "a" (saddr), "a" (daddr), "d" (len + proto), csum_ipv6_magic()
/linux-4.4.14/net/ieee802154/6lowpan/
H A Dtx.c32 struct lowpan_addr saddr; member in struct:lowpan_addr_info
54 const u8 *saddr = _saddr; lowpan_header_create() local
64 if (!saddr) lowpan_header_create()
65 saddr = ldev->dev_addr; lowpan_header_create()
67 raw_dump_inline(__func__, "saddr", (unsigned char *)saddr, 8); lowpan_header_create()
76 info->saddr.mode = IEEE802154_ADDR_LONG; lowpan_header_create()
77 memcpy(&info->saddr.u.extended_addr, saddr, lowpan_header_create()
215 void *daddr, *saddr; lowpan_header() local
221 saddr = &info.saddr.u.extended_addr; lowpan_header()
224 lowpan_header_compress(skb, ldev, daddr, saddr); lowpan_header()
233 sa.extended_addr = ieee802154_devaddr_from_raw(saddr); lowpan_header()
H A D6lowpan_i.h33 struct ieee802154_addr saddr; member in struct:lowpan_frag_queue
/linux-4.4.14/net/netfilter/
H A Dxt_iprange.c27 m = ntohl(iph->saddr) < ntohl(info->src_min.ip); iprange_mt4()
28 m |= ntohl(iph->saddr) > ntohl(info->src_max.ip); iprange_mt4()
32 &iph->saddr, iprange_mt4()
76 m = iprange_ipv6_lt(&iph->saddr, &info->src_min.in6); iprange_mt6()
77 m |= iprange_ipv6_lt(&info->src_max.in6, &iph->saddr); iprange_mt6()
81 &iph->saddr, iprange_mt6()
H A Dxt_socket.c85 * its saddr is the local address */ extract_icmp4_fields()
87 *laddr = inside_iph->saddr; extract_icmp4_fields()
116 const __be32 saddr, const __be32 daddr, xt_socket_get_sock_v4()
123 saddr, sport, daddr, dport, xt_socket_get_sock_v4()
126 return udp4_lib_lookup(net, saddr, sport, daddr, dport, xt_socket_get_sock_v4()
151 __be32 uninitialized_var(daddr), uninitialized_var(saddr); xt_socket_lookup_slow_v4()
168 saddr = iph->saddr; xt_socket_lookup_slow_v4()
174 if (extract_icmp4_fields(skb, &protocol, &saddr, &daddr, xt_socket_lookup_slow_v4()
201 return xt_socket_get_sock_v4(net, protocol, saddr, daddr, xt_socket_lookup_slow_v4()
310 * its saddr is the local address */ extract_icmp6_fields()
312 *laddr = &inside_iph->saddr; extract_icmp6_fields()
322 const struct in6_addr *saddr, const struct in6_addr *daddr, xt_socket_get_sock_v6()
329 saddr, sport, daddr, dport, xt_socket_get_sock_v6()
332 return udp6_lib_lookup(net, saddr, sport, daddr, dport, xt_socket_get_sock_v6()
344 const struct in6_addr *daddr = NULL, *saddr = NULL; xt_socket_lookup_slow_v6() local
361 saddr = &iph->saddr; xt_socket_lookup_slow_v6()
369 if (extract_icmp6_fields(skb, thoff, &tproto, &saddr, &daddr, xt_socket_lookup_slow_v6()
376 return xt_socket_get_sock_v6(net, tproto, saddr, daddr, xt_socket_lookup_slow_v6()
115 xt_socket_get_sock_v4(struct net *net, const u8 protocol, const __be32 saddr, const __be32 daddr, const __be16 sport, const __be16 dport, const struct net_device *in) xt_socket_get_sock_v4() argument
321 xt_socket_get_sock_v6(struct net *net, const u8 protocol, const struct in6_addr *saddr, const struct in6_addr *daddr, const __be16 sport, const __be16 dport, const struct net_device *in) xt_socket_get_sock_v6() argument
H A Dxt_TPROXY.c109 const __be32 saddr, const __be32 daddr, nf_tproxy_get_sock_v4()
121 saddr, sport, nf_tproxy_get_sock_v4()
133 saddr, sport, daddr, dport, nf_tproxy_get_sock_v4()
141 sk = udp4_lib_lookup(net, saddr, sport, daddr, dport, nf_tproxy_get_sock_v4()
165 protocol, ntohl(saddr), ntohs(sport), ntohl(daddr), ntohs(dport), lookup_type, sk); nf_tproxy_get_sock_v4()
173 const struct in6_addr *saddr, const struct in6_addr *daddr, nf_tproxy_get_sock_v6()
185 saddr, sport, nf_tproxy_get_sock_v6()
197 saddr, sport, daddr, ntohs(dport), nf_tproxy_get_sock_v6()
205 sk = udp6_lib_lookup(net, saddr, sport, daddr, dport, nf_tproxy_get_sock_v6()
229 protocol, saddr, ntohs(sport), daddr, ntohs(dport), lookup_type, sk); nf_tproxy_get_sock_v6()
271 iph->saddr, laddr ? laddr : iph->daddr, tproxy_handle_time_wait4()
309 iph->saddr, iph->daddr, tproxy_tg4()
325 iph->saddr, laddr, tproxy_tg4()
344 iph->protocol, &iph->saddr, ntohs(hp->source), tproxy_tg4()
433 &iph->saddr, tproxy_handle_time_wait6()
476 &iph->saddr, &iph->daddr, tproxy_tg6_v1()
491 &iph->saddr, laddr, tproxy_tg6_v1()
502 tproto, &iph->saddr, ntohs(hp->source), tproxy_tg6_v1()
510 tproto, &iph->saddr, ntohs(hp->source), tproxy_tg6_v1()
108 nf_tproxy_get_sock_v4(struct net *net, const u8 protocol, const __be32 saddr, const __be32 daddr, const __be16 sport, const __be16 dport, const struct net_device *in, const enum nf_tproxy_lookup_t lookup_type) nf_tproxy_get_sock_v4() argument
172 nf_tproxy_get_sock_v6(struct net *net, const u8 protocol, const struct in6_addr *saddr, const struct in6_addr *daddr, const __be16 sport, const __be16 dport, const struct net_device *in, const enum nf_tproxy_lookup_t lookup_type) nf_tproxy_get_sock_v6() argument
H A Dxt_AUDIT.c85 audit_log_format(ab, " saddr=%pI4 daddr=%pI4 ipid=%hu proto=%hhu", audit_ip4()
86 &ih->saddr, &ih->daddr, ntohs(ih->id), ih->protocol); audit_ip4()
114 audit_log_format(ab, " saddr=%pI6c daddr=%pI6c proto=%hhu", audit_ip6()
115 &ih->saddr, &ih->daddr, nexthdr); audit_ip6()
H A Dxt_NETMAP.c40 new_addr.in6 = ipv6_hdr(skb)->saddr; netmap_tg6()
87 new_ip = ip_hdr(skb)->saddr & ~netmask; netmap_tg4()
H A Dxt_policy.c46 return MATCH_ADDR(saddr, smask, &x->props.saddr) && match_xfrm_state()
/linux-4.4.14/arch/parisc/include/asm/
H A Dchecksum.h87 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
98 : "r" (daddr), "r"(saddr), "r"(proto+len), "0"(sum)); csum_tcpudp_nofold()
106 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
111 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
125 static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
140 " ldd,ma 8(%1), %%r19\n" /* get 1st saddr word */ csum_ipv6_magic()
144 " ldd,ma 8(%1), %%r21\n" /* 2cd saddr */ csum_ipv6_magic()
163 " ldw,ma 4(%1), %%r19\n" /* get 1st saddr word */ csum_ipv6_magic()
167 " ldw,ma 4(%1), %%r21\n" /* 2cd saddr */ csum_ipv6_magic()
171 " ldw,ma 4(%1), %%r19\n" /* 3rd saddr */ csum_ipv6_magic()
175 " ldw,ma 4(%1), %%r21\n" /* 4th saddr */ csum_ipv6_magic()
183 : "=r" (sum), "=r" (saddr), "=r" (daddr), "=r" (len) csum_ipv6_magic()
184 : "0" (sum), "1" (saddr), "2" (daddr), "3" (len), "r" (proto) csum_ipv6_magic()
/linux-4.4.14/arch/x86/include/asm/
H A Dchecksum_64.h77 * @saddr: source address
87 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
95 : "g" (daddr), "g" (saddr), csum_tcpudp_nofold()
103 * @saddr: source address
112 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
116 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
164 * @saddr: source address
179 csum_ipv6_magic(const struct in6_addr *saddr, const struct in6_addr *daddr,
H A Dchecksum_32.h114 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
124 : "g" (daddr), "g"(saddr), csum_tcpudp_nofold()
133 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
138 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
152 static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
169 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/arch/x86/um/asm/
H A Dchecksum_32.h14 static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
32 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
H A Dchecksum.h80 * @saddr: source address
90 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
98 : "g" (daddr), "g" (saddr), "g" ((len + proto) << 8), "0" (sum)); csum_tcpudp_nofold()
106 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
111 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
/linux-4.4.14/include/uapi/linux/netfilter_bridge/
H A Debt_arp.h24 __be32 saddr; member in struct:ebt_arp_info
H A Debt_ip.h32 __be32 saddr; member in struct:ebt_ip_info
H A Debt_ip6.h32 struct in6_addr saddr; member in struct:ebt_ip6_info
H A Debt_802_3.h47 __u8 saddr[ETH_ALEN]; member in struct:ebt_802_3_hdr
/linux-4.4.14/arch/metag/include/asm/
H A Dchecksum.h61 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
74 : "d" (daddr), "d" (saddr), "d" (len_proto), csum_tcpudp_nofold()
81 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
84 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
/linux-4.4.14/arch/mn10300/include/asm/
H A Dchecksum.h40 static inline __wsum csum_tcpudp_nofold(unsigned long saddr, csum_tcpudp_nofold() argument
57 : "r" (daddr), "r"(saddr), "r"(tmp), "0"(sum) csum_tcpudp_nofold()
67 static inline __sum16 csum_tcpudp_magic(unsigned long saddr, csum_tcpudp_magic() argument
73 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
/linux-4.4.14/arch/ia64/lib/
H A Dchecksum.c37 csum_tcpudp_magic (__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
41 (__force u64)saddr + (__force u64)daddr + csum_tcpudp_magic()
48 csum_tcpudp_nofold (__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
53 result = (__force u64)saddr + (__force u64)daddr + csum_tcpudp_nofold()
/linux-4.4.14/net/802/
H A Dfc.c38 const void *daddr, const void *saddr, unsigned int len) fc_header()
65 if(saddr) fc_header()
66 memcpy(fch->saddr,saddr,dev->addr_len); fc_header()
68 memcpy(fch->saddr,dev->dev_addr,dev->addr_len); fc_header()
36 fc_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) fc_header() argument
H A Dfddi.c48 * saddr=NULL means use device source address
54 const void *daddr, const void *saddr, unsigned int len) fddi_header()
76 if (saddr != NULL) fddi_header()
77 memcpy(fddi->saddr, saddr, dev->addr_len); fddi_header()
79 memcpy(fddi->saddr, dev->dev_addr, dev->addr_len); fddi_header()
52 fddi_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) fddi_header() argument
/linux-4.4.14/net/bridge/netfilter/
H A Debt_arp.c40 __be32 saddr, daddr; ebt_arp_mt() local
45 ah->ar_hln, sizeof(saddr), ebt_arp_mt()
46 &saddr); ebt_arp_mt()
50 2*ah->ar_hln+sizeof(saddr), ebt_arp_mt()
55 FWINV(info->saddr != (*sap & info->smsk), EBT_ARP_SRC_IP)) ebt_arp_mt()
H A Debt_ip.c43 FWINV((ih->saddr & info->smsk) != ebt_ip_mt()
44 info->saddr, EBT_IP_SOURCE)) ebt_ip_mt()
H A Debt_ip6.c52 FWINV(ipv6_masked_addr_cmp(&ih6->saddr, &info->smsk, ebt_ip6_mt()
53 &info->saddr), EBT_IP6_SOURCE)) || ebt_ip6_mt()
/linux-4.4.14/arch/s390/include/asm/
H A Dchecksum.h94 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
100 csum += (__force __u32)saddr; csum_tcpudp_nofold()
101 if (csum < (__force __u32)saddr) csum_tcpudp_nofold()
121 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
125 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
/linux-4.4.14/drivers/gpu/drm/radeon/
H A Dradeon_benchmark.c36 uint64_t saddr, uint64_t daddr, radeon_benchmark_do_move()
49 fence = radeon_copy_dma(rdev, saddr, daddr, radeon_benchmark_do_move()
54 fence = radeon_copy_blit(rdev, saddr, daddr, radeon_benchmark_do_move()
92 uint64_t saddr, daddr; radeon_benchmark_move() local
104 r = radeon_bo_pin(sobj, sdomain, &saddr); radeon_benchmark_move()
123 time = radeon_benchmark_do_move(rdev, size, saddr, daddr, radeon_benchmark_move()
134 time = radeon_benchmark_do_move(rdev, size, saddr, daddr, radeon_benchmark_move()
35 radeon_benchmark_do_move(struct radeon_device *rdev, unsigned size, uint64_t saddr, uint64_t daddr, int flag, int n, struct reservation_object *resv) radeon_benchmark_do_move() argument
/linux-4.4.14/arch/sparc/include/asm/
H A Dchecksum_64.h98 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
108 : "=r" (sum), "=r" (saddr) csum_tcpudp_nofold()
109 : "r" (daddr), "r" (proto + len), "0" (sum), "1" (saddr) csum_tcpudp_nofold()
118 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
123 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
128 static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
154 : "r" (saddr), "r" (daddr), "r"(htonl(len)), csum_ipv6_magic()
H A Dchecksum_32.h172 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
181 : "=r" (sum), "=r" (saddr) csum_tcpudp_nofold()
183 "1" (saddr) csum_tcpudp_nofold()
192 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
197 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
202 static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
228 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/net/tipc/
H A Dsubscr.c313 struct sockaddr_tipc *saddr; tipc_topsrv_start() local
315 saddr = kzalloc(sizeof(*saddr), GFP_ATOMIC); tipc_topsrv_start()
316 if (!saddr) tipc_topsrv_start()
318 saddr->family = AF_TIPC; tipc_topsrv_start()
319 saddr->addrtype = TIPC_ADDR_NAMESEQ; tipc_topsrv_start()
320 saddr->addr.nameseq.type = TIPC_TOP_SRV; tipc_topsrv_start()
321 saddr->addr.nameseq.lower = TIPC_TOP_SRV; tipc_topsrv_start()
322 saddr->addr.nameseq.upper = TIPC_TOP_SRV; tipc_topsrv_start()
323 saddr->scope = TIPC_NODE_SCOPE; tipc_topsrv_start()
327 kfree(saddr); tipc_topsrv_start()
331 topsrv->saddr = saddr; tipc_topsrv_start()
352 kfree(topsrv->saddr); tipc_topsrv_stop()
H A Dserver.c93 struct sockaddr_tipc *saddr = con->server->saddr; tipc_conn_kref_release() local
103 saddr->scope = -TIPC_NODE_SCOPE; tipc_conn_kref_release()
104 kernel_bind(sock, (struct sockaddr *)saddr, sizeof(*saddr)); tipc_conn_kref_release()
335 ret = kernel_bind(sock, (struct sockaddr *)s->saddr, sizeof(*s->saddr)); tipc_create_listen_sock()
H A Dserver.h58 * @saddr: TIPC server address
77 struct sockaddr_tipc *saddr; member in struct:tipc_server
/linux-4.4.14/drivers/media/usb/cx231xx/
H A Dcx231xx-i2c.c95 u16 saddr = 0; cx231xx_i2c_send_bytes() local
107 saddr = msg->buf[0] << 8 | msg->buf[1]; cx231xx_i2c_send_bytes()
109 saddr = msg->buf[0]; cx231xx_i2c_send_bytes()
111 switch (saddr) { cx231xx_i2c_send_bytes()
131 "GPIO WRITE: addr 0x%x, len %d, saddr 0x%x\n", cx231xx_i2c_send_bytes()
132 msg->addr, msg->len, saddr); cx231xx_i2c_send_bytes()
202 u16 saddr = 0; cx231xx_i2c_recv_bytes() local
207 saddr = msg->buf[0] << 8 | msg->buf[1]; cx231xx_i2c_recv_bytes()
209 saddr = msg->buf[0]; cx231xx_i2c_recv_bytes()
213 switch (saddr) { cx231xx_i2c_recv_bytes()
233 "GPIO R E A D: addr 0x%x, len %d, saddr 0x%x\n", cx231xx_i2c_recv_bytes()
289 u16 saddr = 0; cx231xx_i2c_recv_bytes_with_saddr() local
293 saddr = msg1->buf[0] << 8 | msg1->buf[1]; cx231xx_i2c_recv_bytes_with_saddr()
295 saddr = msg1->buf[0]; cx231xx_i2c_recv_bytes_with_saddr()
301 "i2c_read: addr 0x%x, len %d, saddr 0x%x, len %d\n", cx231xx_i2c_recv_bytes_with_saddr()
302 msg2->addr, msg2->len, saddr, msg1->len); cx231xx_i2c_recv_bytes_with_saddr()
304 switch (saddr) { cx231xx_i2c_recv_bytes_with_saddr()
331 req_data.saddr_dat = saddr; cx231xx_i2c_recv_bytes_with_saddr()
H A Dcx231xx-core.c1511 int cx231xx_read_i2c_master(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_read_i2c_master() argument
1519 saddr = 0; cx231xx_read_i2c_master()
1521 saddr &= 0xff; cx231xx_read_i2c_master()
1527 req_data.saddr_dat = saddr; cx231xx_read_i2c_master()
1551 *data = value[saddr]; cx231xx_read_i2c_master()
1557 int cx231xx_write_i2c_master(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_write_i2c_master() argument
1570 saddr = 0; cx231xx_write_i2c_master()
1572 saddr &= 0xff; cx231xx_write_i2c_master()
1578 req_data.saddr_dat = saddr; cx231xx_write_i2c_master()
1596 int cx231xx_read_i2c_data(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_read_i2c_data() argument
1604 saddr = 0; cx231xx_read_i2c_data()
1606 saddr &= 0xff; cx231xx_read_i2c_data()
1612 req_data.saddr_dat = saddr; cx231xx_read_i2c_data()
1632 int cx231xx_write_i2c_data(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_write_i2c_data() argument
1645 saddr = 0; cx231xx_write_i2c_data()
1647 saddr &= 0xff; cx231xx_write_i2c_data()
1653 req_data.saddr_dat = saddr; cx231xx_write_i2c_data()
1713 u16 saddr, u32 mask, u32 value) cx231xx_read_modify_write_i2c_dword()
1718 status = cx231xx_read_i2c_data(dev, dev_addr, saddr, 2, &temp, 4); cx231xx_read_modify_write_i2c_dword()
1726 status = cx231xx_write_i2c_data(dev, dev_addr, saddr, 2, temp, 4); cx231xx_read_modify_write_i2c_dword()
1712 cx231xx_read_modify_write_i2c_dword(struct cx231xx *dev, u8 dev_addr, u16 saddr, u32 mask, u32 value) cx231xx_read_modify_write_i2c_dword() argument
/linux-4.4.14/net/decnet/
H A Ddn_route.c325 (fl1->saddr ^ fl2->saddr) | compare_keys()
922 __le16 saddr = 0; dnet_select_source() local
936 saddr = ifa->ifa_local; dnet_select_source()
941 saddr = ifa->ifa_local; dnet_select_source()
943 saddr = ifa->ifa_local; dnet_select_source()
947 return saddr; dnet_select_source()
965 .saddr = oldflp->saddr, dn_route_output_slow()
985 le16_to_cpu(oldflp->saddr), dn_route_output_slow()
1002 if (oldflp->saddr) { dn_route_output_slow()
1006 if (dn_dev_islocal(dev_out, oldflp->saddr)) dn_route_output_slow()
1015 if (!dn_dev_islocal(dev, oldflp->saddr)) dn_route_output_slow()
1035 fld.daddr = fld.saddr; dn_route_output_slow()
1047 fld.saddr = dnet_select_source(dev_out, 0, dn_route_output_slow()
1061 le16_to_cpu(fld.daddr), le16_to_cpu(fld.saddr), dn_route_output_slow()
1089 (oldflp->saddr && dn_route_output_slow()
1091 oldflp->saddr)))) { dn_route_output_slow()
1136 if (fld.saddr == 0) { dn_route_output_slow()
1137 fld.saddr = dnet_select_source(dev_out, gateway, dn_route_output_slow()
1141 if (fld.saddr == 0 && res.type != RTN_LOCAL) dn_route_output_slow()
1153 if (!fld.saddr) dn_route_output_slow()
1154 fld.saddr = fld.daddr; dn_route_output_slow()
1176 if (!fld.saddr) dn_route_output_slow()
1177 fld.saddr = DN_FIB_RES_PREFSRC(res); dn_route_output_slow()
1195 rt->fld.saddr = oldflp->saddr; dn_route_output_slow()
1201 rt->rt_saddr = fld.saddr; dn_route_output_slow()
1204 rt->rt_local_src = fld.saddr; dn_route_output_slow()
1207 rt->rt_src_map = fld.saddr; dn_route_output_slow()
1223 hash = dn_hash(rt->fld.saddr, rt->fld.daddr); dn_route_output_slow()
1256 unsigned int hash = dn_hash(flp->saddr, flp->daddr); __dn_route_output_key()
1264 (flp->saddr == rt->fld.saddr) && __dn_route_output_key()
1326 .saddr = cb->src, dn_route_input_slow()
1341 if (fld.saddr == 0) dn_route_input_slow()
1367 __le16 src_map = fld.saddr; dn_route_input_slow()
1378 src_map = fld.saddr; /* no NAT support for now */ dn_route_input_slow()
1393 fld.saddr = src_map; dn_route_input_slow()
1426 fld.saddr = cb->dst; dn_route_input_slow()
1459 rt->rt_saddr = fld.saddr; dn_route_input_slow()
1467 rt->rt_src_map = fld.saddr; dn_route_input_slow()
1469 rt->fld.saddr = cb->src; dn_route_input_slow()
1499 hash = dn_hash(rt->fld.saddr, rt->fld.daddr); dn_route_input_slow()
1539 if ((rt->fld.saddr == cb->src) && dn_route_input()
1585 if (rt->fld.saddr) { dn_rt_fill_info()
1587 if (nla_put_le16(skb, RTA_SRC, rt->fld.saddr) < 0) dn_rt_fill_info()
1671 fld.saddr = nla_get_le16(tb[RTA_SRC]); dn_cache_getroute()
1688 cb->src = fld.saddr; dn_cache_getroute()
H A Ddn_rules.c112 __le16 saddr = fld->saddr; dn_fib_rule_match() local
114 if (((saddr ^ r->src) & r->srcmask) || dn_fib_rule_match()
/linux-4.4.14/arch/xtensa/include/asm/
H A Dchecksum.h125 static __inline__ __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
151 : "r" (daddr), "r" (saddr), "1" (len_proto), "0" (sum)); csum_tcpudp_nofold()
159 static __inline__ __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
164 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
178 static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
233 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/arch/score/include/asm/
H A Dchecksum.h130 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
153 : "0" (daddr), "r"(saddr), csum_tcpudp_nofold()
164 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
167 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
181 static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
239 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/arch/sh/include/asm/
H A Dchecksum_32.h117 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
134 : "r" (daddr), "r" (saddr), "1" (len_proto), "0" (sum) csum_tcpudp_nofold()
144 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
149 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
162 static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
190 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/arch/frv/include/asm/
H A Dchecksum.h108 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
116 : "r" (daddr), "r" (saddr), "r" (len + proto), "0"(sum) csum_tcpudp_nofold()
123 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
126 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
137 csum_ipv6_magic(const struct in6_addr *saddr, const struct in6_addr *daddr, csum_ipv6_magic() argument
173 : "r" (saddr), "r" (daddr), "0" (sum), "2" (len + proto) csum_ipv6_magic()
/linux-4.4.14/arch/m32r/include/asm/
H A Dchecksum.h116 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
136 : "r" (daddr), "r" (saddr), "r" (len_proto), "0" (sum) csum_tcpudp_nofold()
147 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
152 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
166 static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
195 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/arch/alpha/include/asm/
H A Dchecksum.h16 extern __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr,
21 __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr,
71 extern __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
/linux-4.4.14/include/asm-generic/
H A Dchecksum.h68 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len,
74 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_magic() argument
77 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
/linux-4.4.14/arch/ia64/include/asm/
H A Dchecksum.h19 extern __sum16 csum_tcpudp_magic (__be32 saddr, __be32 daddr,
24 extern __wsum csum_tcpudp_nofold (__be32 saddr, __be32 daddr,
75 extern __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
/linux-4.4.14/arch/avr32/include/asm/
H A Dchecksum.h113 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
123 : "r"(daddr), "r"(saddr), "r"(len + proto), csum_tcpudp_nofold()
134 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
139 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
/linux-4.4.14/net/netfilter/ipvs/
H A Dip_vs_proto_ah_esp.c50 &iph->saddr, htons(PORT_ISAKMP), ah_esp_conn_fill_param_proto()
55 &iph->saddr, htons(PORT_ISAKMP), p); ah_esp_conn_fill_param_proto()
76 IP_VS_DBG_ADDR(af, &iph->saddr), ah_esp_conn_in_get()
98 IP_VS_DBG_ADDR(af, &iph->saddr), ah_esp_conn_out_get()
H A Dip_vs_xmit.c55 IP_VS_RT_MODE_CONNECT = 8, /* Always bind route to saddr */
123 /* Get route to daddr, update *saddr, optionally bind route to saddr */ do_output_route4()
125 int rt_mode, __be32 *saddr) do_output_route4()
139 /* Invalid saddr ? */ do_output_route4()
140 if (PTR_ERR(rt) == -EINVAL && *saddr && do_output_route4()
142 *saddr = 0; do_output_route4()
148 } else if (!*saddr && rt_mode & IP_VS_RT_MODE_CONNECT && fl4.saddr) { do_output_route4()
150 *saddr = fl4.saddr; do_output_route4()
151 flowi4_update_output(&fl4, 0, 0, daddr, fl4.saddr); do_output_route4()
155 *saddr = fl4.saddr; do_output_route4()
178 int addr_type = ipv6_addr_type(&ipv6_hdr(skb)->saddr); crosses_local_route_boundary()
188 source_is_loopback = ipv4_is_loopback(ip_hdr(skb)->saddr); crosses_local_route_boundary()
231 &ipv6_hdr(skb)->saddr); ensure_mtu_is_adequate()
249 &ip_hdr(skb)->saddr); ensure_mtu_is_adequate()
299 __be32 saddr = htonl(INADDR_ANY); __ip_vs_get_out_rt() local
304 * for performance reasons because we do not remember saddr __ip_vs_get_out_rt()
307 rt = do_output_route4(net, daddr, rt_mode, &saddr); __ip_vs_get_out_rt()
311 *ret_saddr = saddr; __ip_vs_get_out_rt()
382 if (ipv6_addr_any(&fl6.saddr) && __ip_vs_route_output_v6()
384 &fl6.daddr, 0, &fl6.saddr) < 0) __ip_vs_route_output_v6()
393 *ret_saddr = fl6.saddr; __ip_vs_route_output_v6()
980 __be32 saddr; /* Source for tunnel */ ip_vs_tunnel_xmit() local
998 IP_VS_RT_MODE_TUNNEL, &saddr, ipvsh); ip_vs_tunnel_xmit()
1043 iph->saddr = saddr; ip_vs_tunnel_xmit()
1075 struct in6_addr saddr; /* Source for tunnel */ ip_vs_tunnel_xmit_v6() local
1090 &saddr, ipvsh, 1, ip_vs_tunnel_xmit_v6()
1136 iph->saddr = saddr; ip_vs_tunnel_xmit_v6()
124 do_output_route4(struct net *net, __be32 daddr, int rt_mode, __be32 *saddr) do_output_route4() argument
H A Dip_vs_proto.c241 sprintf(buf, "%pI4->%pI4 frag", &ih->saddr, &ih->daddr); ip_vs_tcpudp_debug_packet_v4()
249 &ih->saddr, &ih->daddr); ip_vs_tcpudp_debug_packet_v4()
252 &ih->saddr, ntohs(pptr[0]), ip_vs_tcpudp_debug_packet_v4()
273 sprintf(buf, "%pI6c->%pI6c frag", &ih->saddr, &ih->daddr); ip_vs_tcpudp_debug_packet_v6()
281 &ih->saddr, &ih->daddr); ip_vs_tcpudp_debug_packet_v6()
284 &ih->saddr, ntohs(pptr[0]), ip_vs_tcpudp_debug_packet_v6()
H A Dip_vs_core.c251 src_addr = &iph->saddr; ip_vs_sched_persist()
255 dst_addr = &iph->saddr; ip_vs_sched_persist()
259 /* Mask saddr with the netmask to adjust template granularity */ ip_vs_sched_persist()
445 caddr = &iph->saddr; ip_vs_schedule()
452 vaddr = &iph->saddr; ip_vs_schedule()
595 &iph->saddr, pptr[0], ip_vs_leave()
741 iph->saddr = cp->vaddr.ip; ip_vs_nat_icmp()
748 ciph->saddr = cp->daddr.ip; ip_vs_nat_icmp()
796 iph->saddr = cp->vaddr.in6; ip_vs_nat_icmp_v6()
800 ciph->saddr = cp->daddr.in6; ip_vs_nat_icmp_v6()
818 icmph->icmp6_cksum = ~csum_ipv6_magic(&iph->saddr, &iph->daddr, ip_vs_nat_icmp_v6()
926 &iph->saddr, &iph->daddr); ip_vs_out_icmp()
967 snet.ip = iph->saddr; ip_vs_out_icmp()
1008 &ipvsh->saddr, &ipvsh->daddr); ip_vs_out_icmp_v6()
1023 snet.in6 = ciph.saddr.in6; ip_vs_out_icmp_v6()
1122 ipv6_hdr(skb)->saddr = cp->vaddr.in6; handle_response()
1126 ip_hdr(skb)->saddr = cp->vaddr.ip; handle_response()
1257 if (ip_vs_has_real_service(ipvs, af, iph.protocol, &iph.saddr, ip_vs_out()
1416 &iph->saddr, &iph->daddr); ip_vs_in_icmp()
1492 &iph->saddr); ip_vs_in_icmp()
1514 &ip_hdr(skb)->saddr, &ip_hdr(skb)->daddr, mtu); ip_vs_in_icmp()
1541 &ip_hdr(skb)->saddr, &ip_hdr(skb)->daddr, ip_vs_in_icmp()
1607 &iph->saddr, &iph->daddr); ip_vs_in_icmp_v6()
/linux-4.4.14/net/irda/
H A Dirlap_frame.c152 frame->saddr = cpu_to_le32(self->saddr); irlap_send_snrm_frame()
191 info->daddr = le32_to_cpu(frame->saddr); irlap_recv_snrm_cmd()
192 info->saddr = le32_to_cpu(frame->daddr); irlap_recv_snrm_cmd()
195 if (info->saddr != self->saddr) { irlap_recv_snrm_cmd()
237 frame->saddr = cpu_to_le32(self->saddr); irlap_send_ua_response_frame()
347 frame->saddr = cpu_to_le32(self->saddr); irlap_send_discovery_xid_frame()
426 info->daddr = le32_to_cpu(xid->saddr); irlap_recv_discovery_xid_rsp()
427 info->saddr = le32_to_cpu(xid->daddr); irlap_recv_discovery_xid_rsp()
430 if ((info->saddr != self->saddr) && (info->saddr != BROADCAST)) { irlap_recv_discovery_xid_rsp()
442 discovery->data.saddr = self->saddr; irlap_recv_discovery_xid_rsp()
497 info->daddr = le32_to_cpu(xid->saddr); irlap_recv_discovery_xid_cmd()
498 info->saddr = le32_to_cpu(xid->daddr); irlap_recv_discovery_xid_cmd()
501 if ((info->saddr != self->saddr) && (info->saddr != BROADCAST)) { irlap_recv_discovery_xid_cmd()
548 discovery->data.saddr = self->saddr; irlap_recv_discovery_xid_cmd()
1204 /* Broadcast frames must include saddr and daddr fields */ irlap_send_test_frame()
1210 frame->saddr = cpu_to_le32(self->saddr); irlap_send_test_frame()
1244 /* Broadcast frames must carry saddr and daddr fields */ irlap_recv_test_frame()
1253 info->daddr = le32_to_cpu(frame->saddr); irlap_recv_test_frame()
1254 info->saddr = le32_to_cpu(frame->daddr); irlap_recv_test_frame()
1257 if ((info->saddr != self->saddr) && irlap_recv_test_frame()
1258 (info->saddr != BROADCAST)) { irlap_recv_test_frame()
H A Ddiscovery.c83 if ((node->data.saddr == new->data.saddr) && irlmp_add_discovery()
143 * Function irlmp_expire_discoveries (log, saddr, force)
147 * Note : this assume that IrLAP won't change its saddr, which
150 void irlmp_expire_discoveries(hashbin_t *log, __u32 saddr, int force) irlmp_expire_discoveries() argument
169 if ((curr->data.saddr == saddr) && irlmp_expire_discoveries()
233 pr_debug(" saddr=%08x\n", discovery->data.saddr);
387 seq_printf(seq,", saddr: 0x%08x, daddr: 0x%08x\n\n", discovery_seq_show()
388 discovery->data.saddr, discovery_seq_show()
H A Dirlap.c145 get_random_bytes(&self->saddr, sizeof(self->saddr)); irlap_open()
146 } while ((self->saddr == 0x0) || (self->saddr == BROADCAST) || irlap_open()
147 (hashbin_lock_find(irlap, self->saddr, NULL)) ); irlap_open()
149 memcpy(dev->dev_addr, &self->saddr, 4); irlap_open()
166 hashbin_insert(irlap, (irda_queue_t *) self, self->saddr, NULL); irlap_open()
168 irlmp_register_link(self, self->saddr, &self->notify); irlap_open()
220 irlmp_unregister_link(self->saddr); irlap_close()
224 lap = hashbin_remove(irlap, self->saddr, NULL); irlap_close()
246 irlmp_link_connect_indication(self->notify.instance, self->saddr, irlap_connect_indication()
1122 seq_printf(seq, "saddr: %#08x, ", self->saddr); irlap_seq_show()
/linux-4.4.14/arch/arc/include/asm/
H A Dchecksum.h73 csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, csum_tcpudp_nofold() argument
83 : "r"(saddr), "r"(daddr), csum_tcpudp_nofold()
/linux-4.4.14/arch/hexagon/include/asm/
H A Dchecksum.h41 __wsum csum_tcpudp_nofold(unsigned long saddr, unsigned long daddr,
45 __sum16 csum_tcpudp_magic(unsigned long saddr, unsigned long daddr,
/linux-4.4.14/include/linux/
H A Dlsm_audit.h34 __be32 saddr; member in struct:lsm_network_audit::__anon12521::__anon12522
38 struct in6_addr saddr; member in struct:lsm_network_audit::__anon12521::__anon12523
H A Dicmpv6.h42 const struct in6_addr *saddr,
H A Dmroute.h105 __be32 saddr, __be32 daddr,
/linux-4.4.14/arch/x86/lib/
H A Dcsum-wrappers_64.c136 __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
145 asm(" addq (%[saddr]),%[sum]\n" csum_ipv6_magic()
146 " adcq 8(%[saddr]),%[sum]\n" csum_ipv6_magic()
152 : "[sum]" (rest), [saddr] "r" (saddr), [daddr] "r" (daddr)); csum_ipv6_magic()
/linux-4.4.14/arch/powerpc/include/asm/
H A Dchecksum.h95 static inline __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
103 s += (__force u32)saddr; csum_tcpudp_nofold()
116 : "r" (daddr), "r"(saddr), "r"(proto + len), "0"(sum)); csum_tcpudp_nofold()
125 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
130 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); csum_tcpudp_magic()
/linux-4.4.14/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_benchmark.c32 uint64_t saddr, uint64_t daddr, int n) amdgpu_benchmark_do_move()
42 r = amdgpu_copy_buffer(ring, saddr, daddr, size, NULL, &fence); amdgpu_benchmark_do_move()
77 uint64_t saddr, daddr; amdgpu_benchmark_move() local
90 r = amdgpu_bo_pin(sobj, sdomain, &saddr); amdgpu_benchmark_move()
110 time = amdgpu_benchmark_do_move(adev, size, saddr, daddr, n); amdgpu_benchmark_move()
31 amdgpu_benchmark_do_move(struct amdgpu_device *adev, unsigned size, uint64_t saddr, uint64_t daddr, int n) amdgpu_benchmark_do_move() argument
H A Damdgpu_vm.c986 * @saddr: where to map the BO
997 uint64_t saddr, uint64_t offset, amdgpu_vm_bo_map()
1008 if (saddr & AMDGPU_GPU_PAGE_MASK || offset & AMDGPU_GPU_PAGE_MASK || amdgpu_vm_bo_map()
1013 eaddr = saddr + size - 1; amdgpu_vm_bo_map()
1014 if ((saddr >= eaddr) || (offset + size > amdgpu_bo_size(bo_va->bo))) amdgpu_vm_bo_map()
1024 saddr /= AMDGPU_GPU_PAGE_SIZE; amdgpu_vm_bo_map()
1028 it = interval_tree_iter_first(&vm->va, saddr, eaddr); amdgpu_vm_bo_map()
1035 "0x%010lx-0x%010lx\n", bo_va->bo, saddr, eaddr, amdgpu_vm_bo_map()
1048 mapping->it.start = saddr; amdgpu_vm_bo_map()
1062 saddr >>= amdgpu_vm_block_size; amdgpu_vm_bo_map()
1071 for (pt_idx = saddr; pt_idx <= eaddr; ++pt_idx) { amdgpu_vm_bo_map()
1120 * @saddr: where to the BO is mapped
1129 uint64_t saddr) amdgpu_vm_bo_unmap()
1135 saddr /= AMDGPU_GPU_PAGE_SIZE; amdgpu_vm_bo_unmap()
1138 if (mapping->it.start == saddr) amdgpu_vm_bo_unmap()
1146 if (mapping->it.start == saddr) amdgpu_vm_bo_unmap()
995 amdgpu_vm_bo_map(struct amdgpu_device *adev, struct amdgpu_bo_va *bo_va, uint64_t saddr, uint64_t offset, uint64_t size, uint32_t flags) amdgpu_vm_bo_map() argument
1127 amdgpu_vm_bo_unmap(struct amdgpu_device *adev, struct amdgpu_bo_va *bo_va, uint64_t saddr) amdgpu_vm_bo_unmap() argument
/linux-4.4.14/drivers/video/fbdev/
H A Dhitfb.c63 u32 saddr = WIDTH * dy + dx; hitfb_accel_set_dest() local
65 saddr <<= 1; hitfb_accel_set_dest()
70 fb_writew(saddr & 0xffff, HD64461_BBTDSARL); hitfb_accel_set_dest()
71 fb_writew(saddr >> 16, HD64461_BBTDSARH); hitfb_accel_set_dest()
79 u32 saddr, daddr; hitfb_accel_bitblt() local
86 saddr = WIDTH * (sy + height) + sx + width; hitfb_accel_bitblt()
99 saddr = WIDTH * sy + sx; hitfb_accel_bitblt()
108 saddr <<= 1; hitfb_accel_bitblt()
113 fb_writew(saddr & 0xffff, HD64461_BBTSSARL); hitfb_accel_bitblt()
114 fb_writew(saddr >> 16, HD64461_BBTSSARH); hitfb_accel_bitblt()
/linux-4.4.14/net/netrom/
H A Dnr_dev.c70 const void *daddr, const void *saddr, unsigned int len) nr_header()
74 memcpy(buff, (saddr != NULL) ? saddr : dev->dev_addr, dev->addr_len); nr_header()
68 nr_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) nr_header() argument
/linux-4.4.14/net/dccp/
H A Dipv6.c45 const struct in6_addr *saddr, dccp_v6_csum_finish()
48 return csum_ipv6_magic(saddr, daddr, skb->len, IPPROTO_DCCP, skb->csum); dccp_v6_csum_finish()
57 dh->dccph_checksum = dccp_v6_csum_finish(skb, &np->saddr, &sk->sk_v6_daddr); dccp_v6_send_check()
63 ipv6_hdr(skb)->saddr.s6_addr32, dccp_v6_init_sequence()
90 &hdr->saddr, ntohs(dh->dccph_sport), dccp_v6_err()
197 fl6.saddr = ireq->ir_v6_loc_addr; dccp_v6_send_response()
262 dccp_hdr(skb)->dccph_checksum = dccp_v6_csum_finish(skb, &rxip6h->saddr, dccp_v6_ctl_send_reset()
266 fl6.daddr = rxip6h->saddr; dccp_v6_ctl_send_reset()
267 fl6.saddr = rxip6h->daddr; dccp_v6_ctl_send_reset()
342 ireq->ir_v6_rmt_addr = ipv6_hdr(skb)->saddr; dccp_v6_conn_request()
416 newnp->saddr = newsk->sk_v6_rcv_saddr; dccp_v6_request_recv_sock()
473 newnp->saddr = ireq->ir_v6_loc_addr; dccp_v6_request_recv_sock()
654 if (dccp_v6_csum_finish(skb, &ipv6_hdr(skb)->saddr, dccp_v6_rcv()
767 struct in6_addr *saddr = NULL, *final_p, final; dccp_v6_connect() local
853 np->saddr = sk->sk_v6_rcv_saddr; dccp_v6_connect()
858 saddr = &sk->sk_v6_rcv_saddr; dccp_v6_connect()
862 fl6.saddr = saddr ? *saddr : np->saddr; dccp_v6_connect()
877 if (saddr == NULL) { dccp_v6_connect()
878 saddr = &fl6.saddr; dccp_v6_connect()
879 sk->sk_v6_rcv_saddr = *saddr; dccp_v6_connect()
883 np->saddr = *saddr; dccp_v6_connect()
899 dp->dccps_iss = secure_dccpv6_sequence_number(np->saddr.s6_addr32, dccp_v6_connect()
44 dccp_v6_csum_finish(struct sk_buff *skb, const struct in6_addr *saddr, const struct in6_addr *daddr) dccp_v6_csum_finish() argument
/linux-4.4.14/arch/alpha/lib/
H A Dchecksum.c44 __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
50 (__force u64)saddr + (__force u64)daddr + csum_tcpudp_magic()
54 __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
61 result = (__force u64)saddr + (__force u64)daddr + csum_tcpudp_nofold()
H A Dev6-csum_ipv6_magic.S5 * unsigned short csum_ipv6_magic(struct in6_addr *saddr,
22 * unsigned short csum_ipv6_magic(struct in6_addr *saddr,
H A Dcsum_ipv6_magic.S5 * unsigned short csum_ipv6_magic(struct in6_addr *saddr,
/linux-4.4.14/net/ax25/
H A Dax25_ip.c50 const void *saddr, unsigned int len) ax25_hard_header()
70 if (saddr != NULL) ax25_hard_header()
71 memcpy(buff, saddr, dev->addr_len); ax25_hard_header()
219 const void *saddr, unsigned int len) ax25_hard_header()
48 ax25_hard_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) ax25_hard_header() argument
217 ax25_hard_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) ax25_hard_header() argument
/linux-4.4.14/include/net/irda/
H A Dirlap_frame.h92 __le32 saddr; /* Source device address */ member in struct:xid_frame
102 __le32 saddr; /* Source device address */ member in struct:test_frame
109 __le32 saddr; /* Source device address */ member in struct:ua_frame
136 __le32 saddr; member in struct:snrm_frame
H A Diriap.h65 __u32 saddr; member in struct:iriap_cb
98 __u32 saddr, __u32 daddr,
H A Dirlmp.h152 __u32 saddr; /* Source device address */ member in struct:lap_cb
210 void irlmp_register_link(struct irlap_cb *, __u32 saddr, notify_t *);
211 void irlmp_unregister_link(__u32 saddr);
214 __u32 saddr, __u32 daddr,
251 return (self && self->lap) ? self->lap->saddr : 0; irlmp_get_saddr()
H A Dircomm_core.h70 __u32 saddr; /* Source device address (link we are using) */ member in struct:ircomm_cb
92 __u32 saddr, __u32 daddr, struct sk_buff *skb,
H A Dircomm_event.h65 __u32 saddr; /* Source device address */ member in struct:ircomm_info
H A Dirlan_client.h37 void irlan_client_wakeup(struct irlan_cb *self, __u32 saddr, __u32 daddr);
H A Dirlmp_frame.h52 void irlmp_link_connect_indication(struct lap_cb *, __u32 saddr, __u32 daddr,
H A Daf_irda.h42 __u32 saddr; /* my local address */ member in struct:irda_sock
H A Dircomm_tty_attach.h62 __u32 saddr; /* Source device address */ member in struct:ircomm_tty_info
/linux-4.4.14/arch/hexagon/lib/
H A Dchecksum.c63 __sum16 csum_tcpudp_magic(unsigned long saddr, unsigned long daddr, csum_tcpudp_magic() argument
68 (__force u64)saddr + (__force u64)daddr + csum_tcpudp_magic()
72 __wsum csum_tcpudp_nofold(unsigned long saddr, unsigned long daddr, csum_tcpudp_nofold() argument
78 result = (__force u64)saddr + (__force u64)daddr + csum_tcpudp_nofold()
/linux-4.4.14/security/
H A Dlsm_audit.c52 ad->u.net->v4info.saddr = ih->saddr; ipv4_skb_to_auditdata()
122 ad->u.net->v6info.saddr = ip6->saddr; ipv6_skb_to_auditdata()
360 print_ipv4_addr(ab, a->u.net->v4info.saddr, dump_common_audit_data()
362 "saddr", "src"); dump_common_audit_data()
368 print_ipv6_addr(ab, &a->u.net->v6info.saddr, dump_common_audit_data()
370 "saddr", "src"); dump_common_audit_data()
/linux-4.4.14/include/trace/events/
H A Dfib.h40 *p32 = flp->saddr;
100 *p32 = flp->saddr;
/linux-4.4.14/arch/cris/include/asm/
H A Dchecksum.h65 static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, csum_tcpudp_magic() argument
70 return csum_fold(csum_tcpudp_nofold(saddr,daddr,len,proto,sum)); csum_tcpudp_magic()
/linux-4.4.14/net/sctp/
H A Dipv6.c78 static void sctp_v6_to_addr(union sctp_addr *addr, struct in6_addr *saddr,
215 skb->len, &fl6->saddr, &fl6->daddr); sctp_v6_xmit()
233 static void sctp_v6_get_dst(struct sctp_transport *t, union sctp_addr *saddr, sctp_v6_get_dst() argument
262 if (saddr) { sctp_v6_get_dst()
263 fl6->saddr = saddr->v6.sin6_addr; sctp_v6_get_dst()
264 fl6->fl6_sport = saddr->v6.sin6_port; sctp_v6_get_dst()
266 pr_debug("src=%pI6 - ", &fl6->saddr); sctp_v6_get_dst()
274 if (!asoc || saddr) sctp_v6_get_dst()
279 /* ip6_dst_lookup has filled in the fl6->saddr for us. Check sctp_v6_get_dst()
286 sctp_v6_to_addr(&dst_saddr, &fl6->saddr, htons(bp->port)); sctp_v6_get_dst()
327 fl6->saddr = baddr->v6.sin6_addr; sctp_v6_get_dst()
343 &fl6->saddr); sctp_v6_get_dst()
360 /* Fills in the source address(saddr) based on the destination address(daddr)
368 union sctp_addr *saddr = &t->saddr; sctp_v6_get_saddr() local
373 saddr->v6.sin6_family = AF_INET6; sctp_v6_get_saddr()
374 saddr->v6.sin6_addr = fl6->saddr; sctp_v6_get_saddr()
426 addr->v6.sin6_addr = ipv6_hdr(skb)->saddr; sctp_v6_from_skb()
496 static void sctp_v6_to_addr(union sctp_addr *addr, struct in6_addr *saddr, sctp_v6_to_addr() argument
501 addr->v6.sin6_addr = *saddr; sctp_v6_to_addr()
783 addr->v4.sin_addr.s_addr = ip_hdr(skb)->saddr; sctp_inet6_skb_msgname()
788 addr->v6.sin6_addr = ipv6_hdr(skb)->saddr; sctp_inet6_skb_msgname()
H A Dprotocol.c245 from = &ip_hdr(skb)->saddr; sctp_v4_from_skb()
299 static void sctp_v4_dst_saddr(union sctp_addr *saddr, struct flowi4 *fl4, sctp_v4_dst_saddr() argument
302 saddr->v4.sin_family = AF_INET; sctp_v4_dst_saddr()
303 saddr->v4.sin_port = port; sctp_v4_dst_saddr()
304 saddr->v4.sin_addr.s_addr = fl4->saddr; sctp_v4_dst_saddr()
423 static void sctp_v4_get_dst(struct sctp_transport *t, union sctp_addr *saddr, sctp_v4_get_dst() argument
444 if (saddr) { sctp_v4_get_dst()
445 fl4->saddr = saddr->v4.sin_addr.s_addr; sctp_v4_get_dst()
446 fl4->fl4_sport = saddr->v4.sin_port; sctp_v4_get_dst()
450 &fl4->saddr); sctp_v4_get_dst()
459 if (!asoc || saddr) sctp_v4_get_dst()
537 &fl4->daddr, &fl4->saddr); sctp_v4_get_dst()
549 union sctp_addr *saddr = &t->saddr; sctp_v4_get_saddr() local
553 saddr->v4.sin_family = AF_INET; sctp_v4_get_saddr()
554 saddr->v4.sin_addr.s_addr = fl->u.ip4.saddr; sctp_v4_get_saddr()
919 sin->sin_addr.s_addr = ip_hdr(skb)->saddr; sctp_inet_skb_msgname()
980 skb->len, &transport->fl.u.ip4.saddr, &transport->fl.u.ip4.daddr); sctp_v4_xmit()
H A Dtransport.c63 memset(&peer->saddr, 0, sizeof(union sctp_addr)); sctp_transport_init()
226 transport->af_specific->get_dst(transport, &transport->saddr, sctp_transport_pmtu()
254 t->af_specific->get_dst(t, &t->saddr, &t->fl, sk); sctp_transport_update_pmtu()
261 t->af_specific->get_dst(t, &t->saddr, &t->fl, sk); sctp_transport_update_pmtu()
269 union sctp_addr *saddr, struct sctp_sock *opt) sctp_transport_route()
274 af->get_dst(transport, saddr, &transport->fl, sctp_opt2sk(opt)); sctp_transport_route()
276 if (saddr) sctp_transport_route()
277 memcpy(&transport->saddr, saddr, sizeof(union sctp_addr)); sctp_transport_route()
292 opt->pf->to_sk_saddr(&transport->saddr, sctp_transport_route()
268 sctp_transport_route(struct sctp_transport *transport, union sctp_addr *saddr, struct sctp_sock *opt) sctp_transport_route() argument
/linux-4.4.14/include/uapi/linux/
H A Dxfrm.h50 xfrm_address_t saddr; member in struct:xfrm_selector
238 xfrm_address_t saddr; member in struct:xfrm_user_tmpl
362 xfrm_address_t saddr; member in struct:xfrm_usersa_info
393 xfrm_address_t saddr; member in struct:xfrm_aevent_id
429 xfrm_address_t saddr; member in struct:xfrm_user_acquire
489 xfrm_address_t saddr; member in struct:xfrm_address_filter
H A Dif_fc.h39 __u8 saddr[FC_ALEN]; /* source address */ member in struct:fch_hdr
H A Dipv6.h130 struct in6_addr saddr; member in struct:ipv6hdr
/linux-4.4.14/net/llc/
H A Dllc_s_ac.c57 llc_pdu_header_init(skb, LLC_PDU_TYPE_U, ev->saddr.lsap, llc_sap_action_send_ui()
60 rc = llc_mac_hdr_init(skb, ev->saddr.mac, ev->daddr.mac); llc_sap_action_send_ui()
80 llc_pdu_header_init(skb, LLC_PDU_TYPE_U, ev->saddr.lsap, llc_sap_action_send_xid_c()
83 rc = llc_mac_hdr_init(skb, ev->saddr.mac, ev->daddr.mac); llc_sap_action_send_xid_c()
134 llc_pdu_header_init(skb, LLC_PDU_TYPE_U, ev->saddr.lsap, llc_sap_action_send_test_c()
137 rc = llc_mac_hdr_init(skb, ev->saddr.mac, ev->daddr.mac); llc_sap_action_send_test_c()
/linux-4.4.14/drivers/staging/wlan-ng/
H A Dp80211conv.c195 memcpy(p80211_hdr->a3.a3, &e_hdr.saddr, ETH_ALEN); skb_ether_to_p80211()
285 u8 saddr[ETH_ALEN]; skb_p80211_to_ether() local
302 ether_addr_copy(saddr, w_hdr->a3.a2); skb_p80211_to_ether()
306 ether_addr_copy(saddr, w_hdr->a3.a3); skb_p80211_to_ether()
310 ether_addr_copy(saddr, w_hdr->a3.a2); skb_p80211_to_ether()
319 ether_addr_copy(saddr, w_hdr->a4.a4); skb_p80211_to_ether()
364 (!ether_addr_equal_unaligned(saddr, e_hdr->saddr)))) { skb_p80211_to_ether()
411 ether_addr_copy(e_hdr->saddr, saddr); skb_p80211_to_ether()
452 ether_addr_copy(e_hdr->saddr, saddr); skb_p80211_to_ether()
478 ether_addr_copy(e_hdr->saddr, saddr); skb_p80211_to_ether()
/linux-4.4.14/net/phonet/
H A Dpn_dev.c192 u8 saddr; phonet_address_get() local
201 saddr = daddr; phonet_address_get()
203 saddr = find_first_bit(pnd->addrs, 64) << 2; phonet_address_get()
205 saddr = PN_NO_ADDR; phonet_address_get()
208 if (saddr == PN_NO_ADDR) { phonet_address_get()
215 saddr = phonet_address_get(def_dev, daddr); phonet_address_get()
219 return saddr; phonet_address_get()
H A Daf_phonet.c132 const void *saddr, unsigned int len) pn_header_create()
139 if (!saddr) pn_header_create()
140 saddr = dev->dev_addr; pn_header_create()
141 *media = *(const u8 *)saddr; pn_header_create()
245 u8 daddr, saddr, res; pn_skb_send() local
278 saddr = phonet_address_get(dev, daddr); pn_skb_send()
279 if (saddr == PN_NO_ADDR) pn_skb_send()
283 src = pn_object(saddr, pn_obj(src)); pn_skb_send()
130 pn_header_create(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) pn_header_create() argument
H A Dsocket.c172 u8 saddr; pn_socket_bind() local
183 saddr = pn_addr(handle); pn_socket_bind()
184 if (saddr && phonet_address_lookup(sock_net(sk), saddr)) pn_socket_bind()
199 pn->sobject = pn_object(saddr, pn_port(pn->sobject)); pn_socket_bind()
375 u8 saddr; pn_socket_ioctl() local
387 saddr = phonet_address_get(dev, pn_addr(handle)); pn_socket_ioctl()
389 saddr = PN_NO_ADDR; pn_socket_ioctl()
394 if (saddr == PN_NO_ADDR) pn_socket_ioctl()
397 handle = pn_object(saddr, pn_port(pn->sobject)); pn_socket_ioctl()
/linux-4.4.14/net/bridge/
H A Dbr_multicast.c402 iph->saddr = br->multicast_query_use_ifaddr ? br_ip4_multicast_alloc_query()
465 &ip6h->saddr)) { br_ip6_multicast_alloc_query()
499 mldq->mld_cksum = csum_ipv6_magic(&ip6h->saddr, &ip6h->daddr, br_ip6_multicast_alloc_query()
813 br->ip4_querier.addr.u.ip4 = ip_hdr(skb)->saddr; br_multicast_select_own_querier()
816 br->ip6_querier.addr.u.ip6 = ipv6_hdr(skb)->saddr; br_multicast_select_own_querier()
1124 __be32 saddr) br_ip4_multicast_select_querier()
1133 if (ntohl(saddr) <= ntohl(br->ip4_querier.addr.u.ip4)) br_ip4_multicast_select_querier()
1139 br->ip4_querier.addr.u.ip4 = saddr; br_ip4_multicast_select_querier()
1150 struct in6_addr *saddr) br_ip6_multicast_select_querier()
1156 if (ipv6_addr_cmp(saddr, &br->ip6_querier.addr.u.ip6) <= 0) br_ip6_multicast_select_querier()
1162 br->ip6_querier.addr.u.ip6 = *saddr; br_ip6_multicast_select_querier()
1173 struct br_ip *saddr) br_multicast_select_querier()
1175 switch (saddr->proto) { br_multicast_select_querier()
1177 return br_ip4_multicast_select_querier(br, port, saddr->u.ip4); br_multicast_select_querier()
1180 return br_ip6_multicast_select_querier(br, port, &saddr->u.ip6); br_multicast_select_querier()
1249 struct br_ip *saddr, br_multicast_query_received()
1252 if (!br_multicast_select_querier(br, port, saddr)) br_multicast_query_received()
1270 struct br_ip saddr; br_ip4_multicast_query() local
1303 saddr.proto = htons(ETH_P_IP); br_ip4_multicast_query()
1304 saddr.u.ip4 = iph->saddr; br_ip4_multicast_query()
1307 &saddr, max_delay); br_ip4_multicast_query()
1349 struct br_ip saddr; br_ip6_multicast_query() local
1386 saddr.proto = htons(ETH_P_IPV6); br_ip6_multicast_query()
1387 saddr.u.ip6 = ip6h->saddr; br_ip6_multicast_query()
1390 &saddr, max_delay); br_ip6_multicast_query()
1122 br_ip4_multicast_select_querier(struct net_bridge *br, struct net_bridge_port *port, __be32 saddr) br_ip4_multicast_select_querier() argument
1148 br_ip6_multicast_select_querier(struct net_bridge *br, struct net_bridge_port *port, struct in6_addr *saddr) br_ip6_multicast_select_querier() argument
1171 br_multicast_select_querier(struct net_bridge *br, struct net_bridge_port *port, struct br_ip *saddr) br_multicast_select_querier() argument
1246 br_multicast_query_received(struct net_bridge *br, struct net_bridge_port *port, struct bridge_mcast_other_query *query, struct br_ip *saddr, unsigned long max_delay) br_multicast_query_received() argument
/linux-4.4.14/net/irda/irlan/
H A Dirlan_client.c86 irlan_client_wakeup(self, self->saddr, self->daddr); irlan_client_kick_timer_expired()
97 * Function irlan_client_wakeup (self, saddr, daddr)
102 void irlan_client_wakeup(struct irlan_cb *self, __u32 saddr, __u32 daddr) irlan_client_wakeup() argument
119 self->saddr = saddr; irlan_client_wakeup()
148 __u32 saddr, daddr; irlan_client_discovery_indication() local
161 saddr = discovery->saddr; irlan_client_discovery_indication()
173 irlan_client_wakeup(self, saddr, daddr); irlan_client_discovery_indication()
H A Dirlan_client_event.c111 self->saddr, self->daddr, irlan_client_state_idle()
148 self->saddr, self->daddr, NULL, irlan_client_state_query()
159 irlan_client_wakeup(self, self->saddr, self->daddr); irlan_client_state_query()
329 self->saddr, self->daddr, &qos, irlan_client_state_open()
411 self->saddr, self->daddr, &qos, irlan_client_state_arb()
/linux-4.4.14/net/irda/ircomm/
H A Dircomm_tty_attach.c192 self->daddr = self->saddr = 0; ircomm_tty_detach_cable()
377 info.saddr = discovery->saddr; ircomm_tty_discovery_indication()
672 self->saddr = info->saddr; ircomm_tty_state_idle()
684 self->saddr, self->daddr, ircomm_tty_state_idle()
730 self->saddr = info->saddr; ircomm_tty_state_search()
742 iriap_getvaluebyclass_request(self->iriap, self->saddr, ircomm_tty_state_search()
747 iriap_getvaluebyclass_request(self->iriap, self->saddr, ircomm_tty_state_search()
811 iriap_getvaluebyclass_request(self->iriap, self->saddr, ircomm_tty_state_query_parameters()
862 self->saddr, self->daddr, ircomm_tty_state_query_lsap_sel()
/linux-4.4.14/arch/sparc/kernel/
H A Duna_asm_32.S78 * unsigned long *saddr, int is_signed)
82 * %o2 = saddr
/linux-4.4.14/drivers/net/
H A Dvxlan.c1159 union vxlan_addr saddr; vxlan_rcv() local
1183 saddr.sin.sin_addr.s_addr = oip->saddr; vxlan_rcv()
1184 saddr.sa.sa_family = AF_INET; vxlan_rcv()
1188 saddr.sin6.sin6_addr = oip6->saddr; vxlan_rcv()
1189 saddr.sa.sa_family = AF_INET6; vxlan_rcv()
1199 vxlan_snoop(skb->dev, &saddr, eth_hdr(skb)->h_source)) vxlan_rcv()
1216 &oip6->saddr); vxlan_rcv()
1219 &oip->saddr, oip->tos); vxlan_rcv()
1489 pip6->daddr = ipv6_hdr(request)->saddr; vxlan_na_create()
1490 pip6->saddr = *(struct in6_addr *)n->primary_key; vxlan_na_create()
1508 na->icmph.icmp6_cksum = csum_ipv6_magic(&pip6->saddr, vxlan_na_create()
1526 const struct in6_addr *saddr, *daddr; neigh_reduce() local
1535 saddr = &iphdr->saddr; neigh_reduce()
1686 struct net_device *dev, struct in6_addr *saddr, vxlan6_xmit_skb()
1761 udp_tunnel6_xmit_skb(dst, sk, skb, dev, saddr, daddr, prio, vxlan6_xmit_skb()
1849 struct in6_addr *saddr) vxlan6_get_route()
1858 fl6.saddr = vxlan->cfg.saddr.sin6.sin6_addr; vxlan6_get_route()
1868 *saddr = fl6.saddr; vxlan6_get_route()
2013 fl4.saddr = vxlan->cfg.saddr.sin.sin_addr.s_addr; vxlan_xmit_one()
2047 err = vxlan_xmit_skb(rt, sk, skb, fl4.saddr, vxlan_xmit_one()
2062 struct in6_addr saddr; vxlan_xmit_one() local
2071 &dst->sin6.sin6_addr, &saddr); vxlan_xmit_one()
2111 err = vxlan6_xmit_skb(ndst, sk, skb, dev, &saddr, &dst->sin6.sin6_addr, vxlan_xmit_one()
2423 info->key.u.ipv4.src = fl4.saddr; egress_ipv4_tun_info()
2561 [IFLA_VXLAN_LOCAL] = { .len = FIELD_SIZEOF(struct iphdr, saddr) },
2792 vxlan->cfg.saddr.sa.sa_family == AF_INET6) { vxlan_dev_configure()
2847 tmp->cfg.saddr.sa.sa_family == AF_INET6) == use_ipv6 && vxlan_dev_configure()
2927 conf.saddr.sin.sin_addr.s_addr = nla_get_in_addr(data[IFLA_VXLAN_LOCAL]); vxlan_newlink()
2928 conf.saddr.sa.sa_family = AF_INET; vxlan_newlink()
2934 conf.saddr.sin6.sin6_addr = nla_get_in6_addr(data[IFLA_VXLAN_LOCAL6]); vxlan_newlink()
2935 conf.saddr.sa.sa_family = AF_INET6; vxlan_newlink()
3099 if (!vxlan_addr_any(&vxlan->cfg.saddr)) { vxlan_fill_info()
3100 if (vxlan->cfg.saddr.sa.sa_family == AF_INET) { vxlan_fill_info()
3102 vxlan->cfg.saddr.sin.sin_addr.s_addr)) vxlan_fill_info()
3107 &vxlan->cfg.saddr.sin6.sin6_addr)) vxlan_fill_info()
1684 vxlan6_xmit_skb(struct dst_entry *dst, struct sock *sk, struct sk_buff *skb, struct net_device *dev, struct in6_addr *saddr, struct in6_addr *daddr, __u8 prio, __u8 ttl, __be16 src_port, __be16 dst_port, __be32 vni, struct vxlan_metadata *md, bool xnet, u32 vxflags) vxlan6_xmit_skb() argument
1846 vxlan6_get_route(struct vxlan_dev *vxlan, struct sk_buff *skb, int oif, const struct in6_addr *daddr, struct in6_addr *saddr) vxlan6_get_route() argument
/linux-4.4.14/net/sched/
H A Dact_nat.c124 addr = iph->saddr; tcf_nat()
140 iph->saddr = new_addr; tcf_nat()
211 addr = iph->saddr; tcf_nat()
232 iph->saddr = new_addr; tcf_nat()
/linux-4.4.14/arch/mips/include/asm/
H A Dchecksum.h163 static inline __wsum csum_tcpudp_nofold(__be32 saddr, csum_tcpudp_nofold() argument
194 "r" ((__force unsigned long)saddr), csum_tcpudp_nofold()
216 static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr, csum_ipv6_magic() argument
276 : "r" (saddr), "r" (daddr), csum_ipv6_magic()
/linux-4.4.14/drivers/net/ipvlan/
H A Dipvlan_core.c168 if (ipv6_addr_any(&ip6h->saddr) && htons()
305 i6addr = use_dest ? &ip6h->daddr : &ip6h->saddr; ipvlan_addr_lookup()
324 i4addr = use_dest ? &ip4h->daddr : &ip4h->saddr; ipvlan_addr_lookup()
357 .saddr = ip4h->saddr, ipvlan_process_v4_outbound()
393 .saddr = ip6h->saddr, ipvlan_process_v6_outbound()
/linux-4.4.14/net/8021q/
H A Dvlan_dev.c11 * - see that changed MAC is saddr for outgoing packets
42 * saddr=NULL means use device source address
50 const void *daddr, const void *saddr, vlan_dev_hard_header()
81 if (saddr == NULL) vlan_dev_hard_header()
82 saddr = dev->dev_addr; vlan_dev_hard_header()
86 rc = dev_hard_header(skb, dev, type, daddr, saddr, len + vhdrlen); vlan_dev_hard_header()
509 const void *daddr, const void *saddr, vlan_passthru_hard_header()
515 if (saddr == NULL) vlan_passthru_hard_header()
516 saddr = dev->dev_addr; vlan_passthru_hard_header()
518 return dev_hard_header(skb, real_dev, type, daddr, saddr, len); vlan_passthru_hard_header()
48 vlan_dev_hard_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) vlan_dev_hard_header() argument
507 vlan_passthru_hard_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, const void *daddr, const void *saddr, unsigned int len) vlan_passthru_hard_header() argument
/linux-4.4.14/fs/dlm/
H A Dlowcomms.c471 struct sockaddr_storage saddr; lowcomms_error_report() local
473 if (nodeid_to_addr(con->nodeid, &saddr, NULL, false)) { lowcomms_error_report()
480 } else if (saddr.ss_family == AF_INET) { lowcomms_error_report()
481 struct sockaddr_in *sin4 = (struct sockaddr_in *)&saddr; lowcomms_error_report()
490 struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)&saddr; lowcomms_error_report()
522 static void make_sockaddr(struct sockaddr_storage *saddr, uint16_t port, make_sockaddr() argument
525 saddr->ss_family = dlm_local_addr[0]->ss_family; make_sockaddr()
526 if (saddr->ss_family == AF_INET) { make_sockaddr()
527 struct sockaddr_in *in4_addr = (struct sockaddr_in *)saddr; make_sockaddr()
532 struct sockaddr_in6 *in6_addr = (struct sockaddr_in6 *)saddr; make_sockaddr()
536 memset((char *)saddr + *addr_len, 0, sizeof(struct sockaddr_storage) - *addr_len); make_sockaddr()
1069 struct sockaddr_storage saddr, src_addr; tcp_connect_to_sock() local
1094 memset(&saddr, 0, sizeof(saddr)); tcp_connect_to_sock()
1095 result = nodeid_to_addr(con->nodeid, &saddr, NULL, false); tcp_connect_to_sock()
1117 make_sockaddr(&saddr, dlm_config.ci_tcp_port, &addr_len); tcp_connect_to_sock()
1125 result = sock->ops->connect(sock, (struct sockaddr *)&saddr, addr_len, tcp_connect_to_sock()
1163 struct sockaddr_storage *saddr) tcp_create_listen_sock()
1197 make_sockaddr(saddr, dlm_config.ci_tcp_port, &addr_len); tcp_create_listen_sock()
1198 result = sock->ops->bind(sock, (struct sockaddr *) saddr, addr_len); tcp_create_listen_sock()
1162 tcp_create_listen_sock(struct connection *con, struct sockaddr_storage *saddr) tcp_create_listen_sock() argument
/linux-4.4.14/drivers/infiniband/core/
H A Daddr.c236 fl4.saddr = src_ip; addr4_resolve()
244 src_in->sin_addr.s_addr = fl4.saddr; addr4_resolve()
277 fl6.saddr = src_in->sin6_addr; addr6_resolve()
284 if (ipv6_addr_any(&fl6.saddr)) { addr6_resolve()
286 &fl6.daddr, 0, &fl6.saddr); addr6_resolve()
291 src_in->sin6_addr = fl6.saddr; addr6_resolve()
/linux-4.4.14/drivers/net/arcnet/
H A Drfc1201.c139 int saddr = pkt->hard.source, ofs; rx() local
140 struct Incoming *in = &lp->rfc1201.incoming[saddr]; rx()
155 saddr); rx()
214 if (!*cptr) { /* is saddr = 00? */ rx()
217 saddr); rx()
219 *cptr = saddr; rx()
259 arc_printk(D_EXTRA, dev, "wrong seq number (saddr=%d, expected=%d, seq=%d, splitflag=%d)\n", rx()
260 saddr, in->sequence, soft->sequence, rx()
/linux-4.4.14/lib/
H A Dchecksum.c193 __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, csum_tcpudp_nofold() argument
200 s += (__force u32)saddr; csum_tcpudp_nofold()
/linux-4.4.14/samples/bpf/
H A Dsockex2_kern.c72 flow->src = load_word(skb, nhoff + offsetof(struct iphdr, saddr)); parse_ip()
91 nhoff + offsetof(struct ipv6hdr, saddr)); parse_ipv6()
H A Dtcbpf1_kern.c31 #define IP_SRC_OFF (ETH_HLEN + offsetof(struct iphdr, saddr))

Completed in 4238 milliseconds

123