Home
last modified time | relevance | path

Searched refs:afinfo (Results 1 – 9 of 9) sorted by relevance

/Linux-v5.4/net/xfrm/
Dxfrm_input.c51 int xfrm_input_register_afinfo(const struct xfrm_input_afinfo *afinfo) in xfrm_input_register_afinfo() argument
55 if (WARN_ON(afinfo->family >= ARRAY_SIZE(xfrm_input_afinfo))) in xfrm_input_register_afinfo()
59 if (unlikely(xfrm_input_afinfo[afinfo->family] != NULL)) in xfrm_input_register_afinfo()
62 rcu_assign_pointer(xfrm_input_afinfo[afinfo->family], afinfo); in xfrm_input_register_afinfo()
68 int xfrm_input_unregister_afinfo(const struct xfrm_input_afinfo *afinfo) in xfrm_input_unregister_afinfo() argument
73 if (likely(xfrm_input_afinfo[afinfo->family] != NULL)) { in xfrm_input_unregister_afinfo()
74 if (unlikely(xfrm_input_afinfo[afinfo->family] != afinfo)) in xfrm_input_unregister_afinfo()
77 RCU_INIT_POINTER(xfrm_input_afinfo[afinfo->family], NULL); in xfrm_input_unregister_afinfo()
87 const struct xfrm_input_afinfo *afinfo; in xfrm_input_get_afinfo() local
93 afinfo = rcu_dereference(xfrm_input_afinfo[family]); in xfrm_input_get_afinfo()
[all …]
Dxfrm_state.c184 struct xfrm_state_afinfo *afinfo = xfrm_state_get_afinfo(family); in xfrm_register_type() local
187 if (!afinfo) in xfrm_register_type()
197 X(afinfo, type, comp); in xfrm_register_type()
200 X(afinfo, type, ah); in xfrm_register_type()
203 X(afinfo, type, esp); in xfrm_register_type()
206 X(afinfo, type, ipip); in xfrm_register_type()
209 X(afinfo, type, dstopts); in xfrm_register_type()
212 X(afinfo, type, routing); in xfrm_register_type()
215 X(afinfo, type, ipip6); in xfrm_register_type()
230 struct xfrm_state_afinfo *afinfo = xfrm_state_get_afinfo(family); in xfrm_unregister_type() local
[all …]
Dxfrm_output.c617 const struct xfrm_state_afinfo *afinfo; in xfrm_inner_extract_output() local
631 afinfo = xfrm_state_afinfo_get_rcu(inner_mode->family); in xfrm_inner_extract_output()
632 if (likely(afinfo)) in xfrm_inner_extract_output()
633 err = afinfo->extract_output(x, skb); in xfrm_inner_extract_output()
642 struct xfrm_state_afinfo *afinfo; in xfrm_local_error() local
651 afinfo = xfrm_state_get_afinfo(proto); in xfrm_local_error()
652 if (afinfo) { in xfrm_local_error()
653 afinfo->local_error(skb, mtu); in xfrm_local_error()
Dxfrm_policy.c233 const struct xfrm_policy_afinfo *afinfo; in xfrm_policy_get_afinfo() local
238 afinfo = rcu_dereference(xfrm_policy_afinfo[family]); in xfrm_policy_get_afinfo()
239 if (unlikely(!afinfo)) in xfrm_policy_get_afinfo()
241 return afinfo; in xfrm_policy_get_afinfo()
255 const struct xfrm_policy_afinfo *afinfo; in __xfrm_dst_lookup() local
258 afinfo = xfrm_policy_get_afinfo(family); in __xfrm_dst_lookup()
259 if (unlikely(afinfo == NULL)) in __xfrm_dst_lookup()
262 dst = afinfo->dst_lookup(net, tos, oif, saddr, daddr, mark); in __xfrm_dst_lookup()
2349 const struct xfrm_policy_afinfo *afinfo = xfrm_policy_get_afinfo(family); in xfrm_get_saddr() local
2351 if (unlikely(afinfo == NULL)) in xfrm_get_saddr()
[all …]
/Linux-v5.4/net/ipv4/
Dxfrm4_output.c71 const struct xfrm_state_afinfo *afinfo; in __xfrm4_output() local
82 afinfo = xfrm_state_afinfo_get_rcu(x->outer_mode.family); in __xfrm4_output()
83 if (likely(afinfo)) in __xfrm4_output()
84 ret = afinfo->output_finish(sk, skb); in __xfrm4_output()
Dudp.c2810 struct udp_seq_afinfo *afinfo = PDE_DATA(file_inode(seq->file)); in udp_get_first() local
2814 for (state->bucket = start; state->bucket <= afinfo->udp_table->mask; in udp_get_first()
2816 struct udp_hslot *hslot = &afinfo->udp_table->hash[state->bucket]; in udp_get_first()
2825 if (sk->sk_family == afinfo->family) in udp_get_first()
2837 struct udp_seq_afinfo *afinfo = PDE_DATA(file_inode(seq->file)); in udp_get_next() local
2843 } while (sk && (!net_eq(sock_net(sk), net) || sk->sk_family != afinfo->family)); in udp_get_next()
2846 if (state->bucket <= afinfo->udp_table->mask) in udp_get_next()
2847 spin_unlock_bh(&afinfo->udp_table->hash[state->bucket].lock); in udp_get_next()
2888 struct udp_seq_afinfo *afinfo = PDE_DATA(file_inode(seq->file)); in udp_seq_stop() local
2891 if (state->bucket <= afinfo->udp_table->mask) in udp_seq_stop()
[all …]
Dtcp_ipv4.c2148 struct tcp_seq_afinfo *afinfo = PDE_DATA(file_inode(seq->file)); in listening_get_next() local
2171 if (sk->sk_family == afinfo->family) in listening_get_next()
2208 struct tcp_seq_afinfo *afinfo = PDE_DATA(file_inode(seq->file)); in established_get_first() local
2225 if (sk->sk_family != afinfo->family || in established_get_first()
2240 struct tcp_seq_afinfo *afinfo = PDE_DATA(file_inode(seq->file)); in established_get_next() local
2252 if (sk->sk_family == afinfo->family && in established_get_next()
/Linux-v5.4/net/ipv6/
Dxfrm6_output.c124 const struct xfrm_state_afinfo *afinfo; in __xfrm6_output_state_finish() local
128 afinfo = xfrm_state_afinfo_get_rcu(x->outer_mode.family); in __xfrm6_output_state_finish()
129 if (likely(afinfo)) in __xfrm6_output_state_finish()
130 ret = afinfo->output_finish(sk, skb); in __xfrm6_output_state_finish()
/Linux-v5.4/include/net/
Dxfrm.h336 int xfrm_policy_register_afinfo(const struct xfrm_policy_afinfo *afinfo, int family);
337 void xfrm_policy_unregister_afinfo(const struct xfrm_policy_afinfo *afinfo);
373 int xfrm_state_register_afinfo(struct xfrm_state_afinfo *afinfo);
374 int xfrm_state_unregister_afinfo(struct xfrm_state_afinfo *afinfo);
384 int xfrm_input_register_afinfo(const struct xfrm_input_afinfo *afinfo);
385 int xfrm_input_unregister_afinfo(const struct xfrm_input_afinfo *afinfo);