Symbol: xfrm_policy_afinfo
include/net/xfrm.h
398
int xfrm_policy_register_afinfo(const struct xfrm_policy_afinfo *afinfo, int family);
include/net/xfrm.h
399
void xfrm_policy_unregister_afinfo(const struct xfrm_policy_afinfo *afinfo);
net/ipv4/xfrm4_policy.c
135
static const struct xfrm_policy_afinfo xfrm4_policy_afinfo = {
net/ipv6/xfrm6_policy.c
171
static const struct xfrm_policy_afinfo xfrm6_policy_afinfo = {
net/xfrm/xfrm_policy.c
177
static struct xfrm_policy_afinfo const __rcu *xfrm_policy_afinfo[AF_INET6 + 1]
net/xfrm/xfrm_policy.c
2468
const struct xfrm_policy_afinfo *afinfo = xfrm_policy_get_afinfo(family);
net/xfrm/xfrm_policy.c
257
static const struct xfrm_policy_afinfo *xfrm_policy_get_afinfo(unsigned short family)
net/xfrm/xfrm_policy.c
259
const struct xfrm_policy_afinfo *afinfo;
net/xfrm/xfrm_policy.c
2598
const struct xfrm_policy_afinfo *afinfo = xfrm_policy_get_afinfo(family);
net/xfrm/xfrm_policy.c
261
if (unlikely(family >= ARRAY_SIZE(xfrm_policy_afinfo)))
net/xfrm/xfrm_policy.c
264
afinfo = rcu_dereference(xfrm_policy_afinfo[family]);
net/xfrm/xfrm_policy.c
2641
const struct xfrm_policy_afinfo *afinfo =
net/xfrm/xfrm_policy.c
279
const struct xfrm_policy_afinfo *afinfo;
net/xfrm/xfrm_policy.c
3144
const struct xfrm_policy_afinfo *afinfo = xfrm_policy_get_afinfo(family);
net/xfrm/xfrm_policy.c
4111
int xfrm_policy_register_afinfo(const struct xfrm_policy_afinfo *afinfo, int family)
net/xfrm/xfrm_policy.c
4115
if (WARN_ON(family >= ARRAY_SIZE(xfrm_policy_afinfo)))
net/xfrm/xfrm_policy.c
4119
if (unlikely(xfrm_policy_afinfo[family] != NULL))
net/xfrm/xfrm_policy.c
4139
rcu_assign_pointer(xfrm_policy_afinfo[family], afinfo);
net/xfrm/xfrm_policy.c
4147
void xfrm_policy_unregister_afinfo(const struct xfrm_policy_afinfo *afinfo)
net/xfrm/xfrm_policy.c
4152
for (i = 0; i < ARRAY_SIZE(xfrm_policy_afinfo); i++) {
net/xfrm/xfrm_policy.c
4153
if (rcu_access_pointer(xfrm_policy_afinfo[i]) != afinfo)
net/xfrm/xfrm_policy.c
4155
RCU_INIT_POINTER(xfrm_policy_afinfo[i], NULL);