xfrm_policy
struct xfrm_policy *x,
struct xfrm_policy *x = pol_entry->x;
static int mlx5e_xfrm_add_policy(struct xfrm_policy *x,
static void mlx5e_xfrm_del_policy(struct xfrm_policy *x)
static void mlx5e_xfrm_free_policy(struct xfrm_policy *x)
static struct mlx5e_ipsec_pol_entry *to_ipsec_pol_entry(struct xfrm_policy *x)
struct xfrm_policy *x;
struct xfrm_policy *xp, const struct flowi_common *flic)
int (*xdo_dev_policy_add) (struct xfrm_policy *x, struct netlink_ext_ack *extack);
void (*xdo_dev_policy_delete) (struct xfrm_policy *x);
void (*xdo_dev_policy_free) (struct xfrm_policy *x);
struct xfrm_policy *xp,
struct xfrm_policy *xp,
struct xfrm_policy;
struct xfrm_policy __rcu *sk_policy[2];
struct xfrm_policy *pols[XFRM_POLICY_TYPE_MAX];
int xfrm_policy_delete(struct xfrm_policy *pol, int dir);
struct xfrm_policy *pol;
struct xfrm_policy *pol, int *err,
struct xfrm_policy *xfrm_policy_alloc(struct net *net, gfp_t gfp);
int (*func)(struct xfrm_policy *, int, int, void*),
int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl);
struct xfrm_policy *xfrm_policy_bysel_ctx(struct net *net,
struct xfrm_policy *xfrm_policy_byid(struct net *net,
int xfrm_sk_policy_insert(struct sock *sk, int dir, struct xfrm_policy *pol);
void km_policy_expired(struct xfrm_policy *pol, int dir, int hard, u32 portid);
int xfrm_dev_policy_add(struct net *net, struct xfrm_policy *xp,
static inline void xfrm_dev_policy_delete(struct xfrm_policy *x)
static inline void xfrm_dev_policy_free(struct xfrm_policy *x)
static inline int xfrm_dev_policy_add(struct net *net, struct xfrm_policy *xp,
static inline void xfrm_dev_policy_delete(struct xfrm_policy *x)
static inline void xfrm_dev_policy_free(struct xfrm_policy *x)
void km_policy_notify(struct xfrm_policy *xp, int dir,
struct xfrm_policy *pol);
static inline struct net *xp_net(const struct xfrm_policy *xp)
int (*acquire)(struct xfrm_state *x, struct xfrm_tmpl *, struct xfrm_policy *xp);
struct xfrm_policy *(*compile_policy)(struct sock *sk, int opt, u8 *data, int len, int *dir);
int (*notify_policy)(struct xfrm_policy *x, int dir, const struct km_event *c);
void xfrm_audit_policy_add(struct xfrm_policy *xp, int result, bool task_valid);
void xfrm_audit_policy_delete(struct xfrm_policy *xp, int result,
static inline void xfrm_audit_policy_add(struct xfrm_policy *xp, int result,
static inline void xfrm_audit_policy_delete(struct xfrm_policy *xp, int result,
static inline void xfrm_pol_hold(struct xfrm_policy *policy)
void xfrm_policy_destroy(struct xfrm_policy *policy);
static inline void xfrm_pol_put(struct xfrm_policy *policy)
static inline void xfrm_pols_put(struct xfrm_policy **pols, int npols)
static int check_reqid(struct xfrm_policy *xp, int dir, int count, void *ptr)
parse_ipsecrequest(struct xfrm_policy *xp, struct sadb_x_policy *pol,
parse_ipsecrequests(struct xfrm_policy *xp, struct sadb_x_policy *pol)
static inline int pfkey_xfrm_policy2sec_ctx_size(const struct xfrm_policy *xp)
static int pfkey_xfrm_policy2msg_size(const struct xfrm_policy *xp)
static struct sk_buff * pfkey_xfrm_policy2msg_prep(const struct xfrm_policy *xp)
static int pfkey_xfrm_policy2msg(struct sk_buff *skb, const struct xfrm_policy *xp, int dir)
static int key_notify_policy(struct xfrm_policy *xp, int dir, const struct km_event *c)
struct xfrm_policy *xp;
struct xfrm_policy *xp;
static int key_pol_get_resp(struct sock *sk, struct xfrm_policy *xp, const struct sadb_msg *hdr, int dir)
struct xfrm_policy *xp;
static int dump_sp(struct xfrm_policy *xp, int dir, int count, void *ptr)
static int key_notify_policy_expire(struct xfrm_policy *xp, const struct km_event *c)
static int pfkey_send_policy_notify(struct xfrm_policy *xp, int dir, const struct km_event *c)
static int pfkey_send_acquire(struct xfrm_state *x, struct xfrm_tmpl *t, struct xfrm_policy *xp)
static struct xfrm_policy *pfkey_compile_policy(struct sock *sk, int opt,
struct xfrm_policy *xp;
int xfrm_dev_policy_add(struct net *net, struct xfrm_policy *xp,
struct xfrm_policy *tmp;
struct xfrm_policy *policy, u8 dir)
static struct xfrm_policy *
xfrm_policy_inexact_insert(struct xfrm_policy *policy, u8 dir, int excl)
struct xfrm_policy *delpol;
static bool xfrm_policy_is_dead_or_sk(const struct xfrm_policy *policy)
struct xfrm_policy *pol;
struct xfrm_policy *policy;
struct xfrm_policy *p;
static void xfrm_policy_requeue(struct xfrm_policy *old,
struct xfrm_policy *new)
struct xfrm_policy *pol)
static struct xfrm_policy *xfrm_policy_insert_list(struct hlist_head *chain,
struct xfrm_policy *policy,
struct xfrm_policy *pol, *newpos = NULL, *delpol = NULL;
int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl)
struct xfrm_policy *delpol;
static struct xfrm_policy *
struct xfrm_policy *pol;
struct xfrm_policy *
struct xfrm_policy *pol, *ret = NULL;
struct xfrm_policy *tmp;
struct xfrm_policy *
struct xfrm_policy *pol, *ret;
struct xfrm_policy *pol;
struct xfrm_policy *pol;
struct xfrm_policy *pol;
struct xfrm_policy *pol;
int (*func)(struct xfrm_policy *, int, int, void*),
static void __xfrm_policy_link(struct xfrm_policy *pol, int dir);
struct xfrm_policy *pol;
static struct xfrm_policy *__xfrm_policy_unlink(struct xfrm_policy *pol,
pol = container_of(x, struct xfrm_policy, walk);
static int xfrm_policy_match(const struct xfrm_policy *pol,
static struct xfrm_policy *
xfrm_policy_insert_list(struct hlist_head *chain, struct xfrm_policy *policy,
static struct xfrm_policy *
struct xfrm_policy *prefer,
struct xfrm_policy *pol;
static inline bool xfrm_pol_hold_rcu(struct xfrm_policy *policy)
static struct xfrm_policy *
struct xfrm_policy *prefer,
struct xfrm_policy *tmp;
static struct xfrm_policy *xfrm_policy_lookup_bytype(struct net *net, u8 type,
struct xfrm_policy *pol, *ret;
static struct xfrm_policy *xfrm_policy_lookup(struct net *net,
struct xfrm_policy *pol;
static struct xfrm_policy *xfrm_sk_policy_lookup(const struct sock *sk, int dir,
struct xfrm_policy *pol;
struct xfrm_policy *policy;
const struct xfrm_policy *policy;
static void __xfrm_policy_link(struct xfrm_policy *pol, int dir)
static struct xfrm_policy *__xfrm_policy_unlink(struct xfrm_policy *pol,
static void xfrm_sk_policy_link(struct xfrm_policy *pol, int dir)
static void xfrm_sk_policy_unlink(struct xfrm_policy *pol, int dir)
int xfrm_policy_delete(struct xfrm_policy *pol, int dir)
int xfrm_sk_policy_insert(struct sock *sk, int dir, struct xfrm_policy *pol)
struct xfrm_policy *old_pol;
static struct xfrm_policy *clone_policy(const struct xfrm_policy *old, int dir)
struct xfrm_policy *newp = xfrm_policy_alloc(xp_net(old), GFP_ATOMIC);
const struct xfrm_policy *p;
struct xfrm_policy *np;
xfrm_tmpl_resolve_one(struct xfrm_policy *policy, const struct flowi *fl,
xfrm_tmpl_resolve(struct xfrm_policy **pols, int npols, const struct flowi *fl,
static struct dst_entry *xfrm_bundle_create(struct xfrm_policy *policy,
struct xfrm_policy **pols,
xfrm_resolve_and_create_bundle(struct xfrm_policy **pols, int num_pols,
memcpy(xdst->pols, pols, sizeof(struct xfrm_policy *) * num_pols);
struct xfrm_policy *pol = timer_container_of(pol, t, polq.hold_timer);
struct xfrm_policy *pol = xdst->pols[0];
struct xfrm_policy *pols[XFRM_POLICY_TYPE_MAX];
memcpy(xdst->pols, pols, sizeof(struct xfrm_policy *) * num_pols);
struct xfrm_policy *pols[XFRM_POLICY_TYPE_MAX];
memcpy(pols, xdst->pols, sizeof(struct xfrm_policy *) * num_pols);
struct xfrm_policy *xp = timer_container_of(xp, t, timer);
xfrm_policy *xfrm_in_fwd_icmp(struct sk_buff *skb,
struct xfrm_policy *pol = NULL;
struct xfrm_policy *pol;
struct xfrm_policy *pols[XFRM_POLICY_TYPE_MAX];
struct xfrm_policy *xfrm_policy_alloc(struct net *net, gfp_t gfp)
struct xfrm_policy *policy;
policy = kzalloc_obj(struct xfrm_policy, gfp);
static void xfrm_audit_common_policyinfo(struct xfrm_policy *xp,
void xfrm_audit_policy_add(struct xfrm_policy *xp, int result, bool task_valid)
void xfrm_audit_policy_delete(struct xfrm_policy *xp, int result,
static struct xfrm_policy *xfrm_migrate_policy_find(const struct xfrm_selector *sel,
struct xfrm_policy *pol;
struct xfrm_policy *policy = container_of(head, struct xfrm_policy, rcu);
static int xfrm_policy_migrate(struct xfrm_policy *pol,
void xfrm_policy_destroy(struct xfrm_policy *policy)
struct xfrm_policy *pol = NULL;
static void xfrm_policy_kill(struct xfrm_policy *policy)
struct xfrm_policy *pol;
struct xfrm_policy *pol;
xfrm_policy_inexact_alloc_bin(const struct xfrm_policy *pol, u8 dir)
xfrm_policy_inexact_insert_use_any_list(const struct xfrm_policy *policy)
struct xfrm_policy *policy, *p;
struct xfrm_policy *tmp;
static void xfrm_state_look_at(struct xfrm_policy *pol, struct xfrm_state *x,
struct xfrm_policy *pol, int *err,
int km_query(struct xfrm_state *x, struct xfrm_tmpl *t, struct xfrm_policy *pol);
void km_policy_notify(struct xfrm_policy *xp, int dir, const struct km_event *c)
int km_query(struct xfrm_state *x, struct xfrm_tmpl *t, struct xfrm_policy *pol)
void km_policy_expired(struct xfrm_policy *pol, int dir, int hard, u32 portid)
struct xfrm_policy *pol = NULL;
static int copy_from_user_sec_ctx(struct xfrm_policy *pol, struct nlattr **attrs)
static void copy_templates(struct xfrm_policy *xp, struct xfrm_user_tmpl *ut,
static int copy_from_user_tmpl(struct xfrm_policy *pol, struct nlattr **attrs,
static void copy_from_user_policy(struct xfrm_policy *xp, struct xfrm_userpolicy_info *p)
static void copy_to_user_policy(struct xfrm_policy *xp, struct xfrm_userpolicy_info *p, int dir)
static struct xfrm_policy *xfrm_policy_construct(struct net *net,
struct xfrm_policy *xp = xfrm_policy_alloc(net, GFP_KERNEL);
struct xfrm_policy *xp;
static int copy_to_user_tmpl(struct xfrm_policy *xp, struct sk_buff *skb)
static inline int copy_to_user_sec_ctx(struct xfrm_policy *xp, struct sk_buff *skb)
static int dump_one_policy(struct xfrm_policy *xp, int dir, int count, void *ptr)
struct xfrm_policy *xp,
struct xfrm_policy *xp;
struct xfrm_policy *xp;
struct xfrm_policy *xp;
struct xfrm_policy *xp)
struct xfrm_tmpl *xt, struct xfrm_policy *xp)
struct xfrm_policy *xp)
static struct xfrm_policy *xfrm_compile_policy(struct sock *sk, int opt,
struct xfrm_policy *xp;
static inline unsigned int xfrm_polexpire_msgsize(struct xfrm_policy *xp)
static int build_polexpire(struct sk_buff *skb, struct xfrm_policy *xp,
static int xfrm_exp_policy_notify(struct xfrm_policy *xp, int dir, const struct km_event *c)
static int xfrm_notify_policy(struct xfrm_policy *xp, int dir, const struct km_event *c)
static int xfrm_send_policy_notify(struct xfrm_policy *xp, int dir, const struct km_event *c)
struct xfrm_policy *xp,
struct xfrm_policy *xp,
struct xfrm_policy *xp,