mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 08:44:21 +08:00
net sched filters: pass netlink message flags in event notification
Userland client should be able to read an event, and reflect it back to the kernel, therefore it needs to extract complete set of netlink flags. For example, this will allow "tc monitor" to distinguish Add and Replace operations. Signed-off-by: Roman Mashak <mrv@mojatatu.com> Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b5c2d49544
commit
30a391a13a
@ -112,7 +112,7 @@ static void tfilter_notify_chain(struct net *net, struct sk_buff *oskb,
|
||||
|
||||
for (it_chain = chain; (tp = rtnl_dereference(*it_chain)) != NULL;
|
||||
it_chain = &tp->next)
|
||||
tfilter_notify(net, oskb, n, tp, 0, event, false);
|
||||
tfilter_notify(net, oskb, n, tp, n->nlmsg_flags, event, false);
|
||||
}
|
||||
|
||||
/* Select new prio value from the range, managed by kernel. */
|
||||
@ -430,7 +430,8 @@ static int tfilter_notify(struct net *net, struct sk_buff *oskb,
|
||||
if (!skb)
|
||||
return -ENOBUFS;
|
||||
|
||||
if (tcf_fill_node(net, skb, tp, fh, portid, n->nlmsg_seq, 0, event) <= 0) {
|
||||
if (tcf_fill_node(net, skb, tp, fh, portid, n->nlmsg_seq,
|
||||
n->nlmsg_flags, event) <= 0) {
|
||||
kfree_skb(skb);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user