Lines Matching +defs:pid +defs:dir

942 		x->dir = nla_get_u8(attrs[XFRMA_SA_DIR]);
1183 if (xso->dir == XFRM_DEV_OFFLOAD_IN)
1425 if (x->dir)
1426 ret = nla_put_u8(skb, XFRMA_SA_DIR, x->dir);
1569 u32 pid, unsigned int group)
1590 return nlmsg_multicast(nlsk, skb, pid, group, GFP_ATOMIC);
1878 x->dir = nla_get_u8(attrs[XFRMA_SA_DIR]);
1905 static int verify_policy_dir(u8 dir, struct netlink_ext_ack *extack)
1907 switch (dir) {
1992 ret = verify_policy_dir(p->dir, extack);
1995 if (p->index && (xfrm_policy_id2dir(p->index) != p->dir)) {
2041 int dir, struct netlink_ext_ack *extack)
2067 if (ut[i].optional && dir == XFRM_POLICY_OUT) {
2110 int dir, struct netlink_ext_ack *extack)
2121 err = validate_tmpl(nr, utmpl, pol->family, dir, extack);
2163 static void copy_to_user_policy(struct xfrm_policy *xp, struct xfrm_userpolicy_info *p, int dir)
2172 p->dir = dir;
2198 if (!(err = copy_from_user_tmpl(xp, attrs, p->dir, extack)))
2212 p->dir, extack);
2252 err = xfrm_policy_insert(p->dir, xp, excl);
2266 km_policy_notify(xp, p->dir, &c);
2347 static int dump_one_policy(struct xfrm_policy *xp, int dir, int count, void *ptr)
2363 copy_to_user_policy(xp, p, dir);
2432 int dir, u32 seq)
2447 err = dump_one_policy(xp, dir, 0, &info);
2566 err = verify_policy_dir(p->dir, extack);
2576 xp = xfrm_policy_byid(net, &m, if_id, type, p->dir,
2594 xp = xfrm_policy_bysel_ctx(net, &m, if_id, type, p->dir,
2604 resp_skb = xfrm_policy_netlink(skb, xp, p->dir, nlh->nlmsg_seq);
2621 km_policy_notify(xp, p->dir, &c);
2666 + nla_total_size(sizeof(x->dir)) /* XFRMA_SA_DIR */
2729 if (x->dir) {
2730 err = nla_put_u8(skb, XFRMA_SA_DIR, x->dir);
2890 err = verify_policy_dir(p->dir, extack);
2900 xp = xfrm_policy_byid(net, &m, if_id, type, p->dir, p->index,
2918 xp = xfrm_policy_bysel_ctx(net, &m, if_id, type, p->dir,
2930 xfrm_policy_delete(xp, p->dir);
2933 km_policy_expired(xp, p->dir, up->hard, nlh->nlmsg_pid);
3144 err = xfrm_migrate(&pi->sel, pi->dir, type, m, n, kmp, net, encap,
3204 const struct xfrm_encap_tmpl *encap, u8 dir, u8 type)
3216 /* copy data from selector, dir, and type to the pol_id */
3219 pol_id->dir = dir;
3248 static int xfrm_send_migrate(const struct xfrm_selector *sel, u8 dir, u8 type,
3263 err = build_migrate(skb, m, num_migrate, k, sel, encap, dir, type);
3269 static int xfrm_send_migrate(const struct xfrm_selector *sel, u8 dir, u8 type,
3531 nla_total_size(sizeof_field(struct xfrm_state, dir)) +
3564 if (x->dir) {
3565 err = nla_put_u8(skb, XFRMA_SA_DIR, x->dir);
3679 if (x->dir)
3680 l += nla_total_size(sizeof(x->dir));
3850 u8 *data, int len, int *dir)
3861 *dir = -EOPNOTSUPP;
3868 *dir = -EOPNOTSUPP;
3874 *dir = -EINVAL;
3878 *dir = -EINVAL;
3885 if (validate_tmpl(nr, ut, p->sel.family, p->dir, NULL))
3888 if (p->dir > XFRM_POLICY_OUT)
3893 *dir = -ENOBUFS;
3901 *dir = p->dir;
3916 int dir, const struct km_event *c)
3928 copy_to_user_policy(xp, &upe->pol, dir);
3950 static int xfrm_exp_policy_notify(struct xfrm_policy *xp, int dir, const struct km_event *c)
3960 err = build_polexpire(skb, xp, dir, c);
3966 static int xfrm_notify_policy(struct xfrm_policy *xp, int dir, const struct km_event *c)
4001 id->dir = dir;
4015 copy_to_user_policy(xp, p, dir);
4065 static int xfrm_send_policy_notify(struct xfrm_policy *xp, int dir, const struct km_event *c)
4072 return xfrm_notify_policy(xp, dir, c);
4076 return xfrm_exp_policy_notify(xp, dir, c);