diff options
| author | Eric W. Biederman <[email protected]> | 2012-05-25 19:42:45 +0000 |
|---|---|---|
| committer | Eric W. Biederman <[email protected]> | 2012-08-15 04:55:28 +0000 |
| commit | af4c6641f5ad445fe6d0832da42406dbd9a37ce4 (patch) | |
| tree | d1ef8c8fafb5cde0f55b7efd174c3d2032a58180 /net/sched/cls_api.c | |
| parent | userns: nfnetlink_log: Report socket uids in the log sockets user namespace (diff) | |
| download | kernel-af4c6641f5ad445fe6d0832da42406dbd9a37ce4.tar.gz kernel-af4c6641f5ad445fe6d0832da42406dbd9a37ce4.zip | |
net sched: Pass the skb into change so it can access NETLINK_CB
cls_flow.c plays with uids and gids. Unless I misread that
code it is possible for classifiers to depend on the specific uid and
gid values. Therefore I need to know the user namespace of the
netlink socket that is installing the packet classifiers. Pass
in the rtnetlink skb so I can access the NETLINK_CB of the passed
packet. In particular I want access to sk_user_ns(NETLINK_CB(in_skb).ssk).
Pass in not the user namespace but the incomming rtnetlink skb into
the the classifier change routines as that is generally the more useful
parameter.
Cc: Jamal Hadi Salim <[email protected]>
Acked-by: David S. Miller <[email protected]>
Acked-by: Serge Hallyn <[email protected]>
Signed-off-by: Eric W. Biederman <[email protected]>
Diffstat (limited to 'net/sched/cls_api.c')
| -rw-r--r-- | net/sched/cls_api.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c index 6dd1131f2ec1..dc3ef5aef355 100644 --- a/net/sched/cls_api.c +++ b/net/sched/cls_api.c @@ -319,7 +319,7 @@ replay: } } - err = tp->ops->change(tp, cl, t->tcm_handle, tca, &fh); + err = tp->ops->change(skb, tp, cl, t->tcm_handle, tca, &fh); if (err == 0) { if (tp_created) { spin_lock_bh(root_lock); |
