xfrm: SP lookups signature with mark
pass mark to all SP lookups to prepare them for when we add code to have them search. Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
3d6acfa764
commit
8ca2e93b55
@@ -635,8 +635,8 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl)
|
||||
}
|
||||
EXPORT_SYMBOL(xfrm_policy_insert);
|
||||
|
||||
struct xfrm_policy *xfrm_policy_bysel_ctx(struct net *net, u8 type, int dir,
|
||||
struct xfrm_selector *sel,
|
||||
struct xfrm_policy *xfrm_policy_bysel_ctx(struct net *net, u32 mark, u8 type,
|
||||
int dir, struct xfrm_selector *sel,
|
||||
struct xfrm_sec_ctx *ctx, int delete,
|
||||
int *err)
|
||||
{
|
||||
@@ -676,8 +676,8 @@ struct xfrm_policy *xfrm_policy_bysel_ctx(struct net *net, u8 type, int dir,
|
||||
}
|
||||
EXPORT_SYMBOL(xfrm_policy_bysel_ctx);
|
||||
|
||||
struct xfrm_policy *xfrm_policy_byid(struct net *net, u8 type, int dir, u32 id,
|
||||
int delete, int *err)
|
||||
struct xfrm_policy *xfrm_policy_byid(struct net *net, u32 mark, u8 type,
|
||||
int dir, u32 id, int delete, int *err)
|
||||
{
|
||||
struct xfrm_policy *pol, *ret;
|
||||
struct hlist_head *chain;
|
||||
|
@@ -1457,7 +1457,7 @@ static int xfrm_get_policy(struct sk_buff *skb, struct nlmsghdr *nlh,
|
||||
return err;
|
||||
|
||||
if (p->index)
|
||||
xp = xfrm_policy_byid(net, type, p->dir, p->index, delete, &err);
|
||||
xp = xfrm_policy_byid(net, DUMMY_MARK, type, p->dir, p->index, delete, &err);
|
||||
else {
|
||||
struct nlattr *rt = attrs[XFRMA_SEC_CTX];
|
||||
struct xfrm_sec_ctx *ctx;
|
||||
@@ -1474,8 +1474,8 @@ static int xfrm_get_policy(struct sk_buff *skb, struct nlmsghdr *nlh,
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
xp = xfrm_policy_bysel_ctx(net, type, p->dir, &p->sel, ctx,
|
||||
delete, &err);
|
||||
xp = xfrm_policy_bysel_ctx(net, DUMMY_MARK, type, p->dir,
|
||||
&p->sel, ctx, delete, &err);
|
||||
security_xfrm_policy_free(ctx);
|
||||
}
|
||||
if (xp == NULL)
|
||||
@@ -1712,7 +1712,7 @@ static int xfrm_add_pol_expire(struct sk_buff *skb, struct nlmsghdr *nlh,
|
||||
return err;
|
||||
|
||||
if (p->index)
|
||||
xp = xfrm_policy_byid(net, type, p->dir, p->index, 0, &err);
|
||||
xp = xfrm_policy_byid(net, DUMMY_MARK, type, p->dir, p->index, 0, &err);
|
||||
else {
|
||||
struct nlattr *rt = attrs[XFRMA_SEC_CTX];
|
||||
struct xfrm_sec_ctx *ctx;
|
||||
@@ -1729,7 +1729,7 @@ static int xfrm_add_pol_expire(struct sk_buff *skb, struct nlmsghdr *nlh,
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
xp = xfrm_policy_bysel_ctx(net, type, p->dir, &p->sel, ctx, 0, &err);
|
||||
xp = xfrm_policy_bysel_ctx(net, DUMMY_MARK, type, p->dir, &p->sel, ctx, 0, &err);
|
||||
security_xfrm_policy_free(ctx);
|
||||
}
|
||||
if (xp == NULL)
|
||||
|
Reference in New Issue
Block a user