summaryrefslogtreecommitdiff
path: root/net/netlink/genetlink.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2020-10-03 11:44:43 +0300
committerDavid S. Miller <davem@davemloft.net>2020-10-04 00:18:29 +0300
commit04a351a62bd4be1dbcc88fae69b990362d88ffe5 (patch)
treec195449e729188a3f50df194b5842720d467654d /net/netlink/genetlink.c
parent899b07c5787fbc6d2be51d0ea31721c8c2165458 (diff)
downloadlinux-04a351a62bd4be1dbcc88fae69b990362d88ffe5.tar.xz
netlink: rework policy dump to support multiple policies
Rework the policy dump code a bit to support adding multiple policies to a single dump, in order to e.g. support per-op policies in generic netlink. v2: - move kernel-doc to implementation [Jakub] - squash the first patch to not flip-flop on the prototype [Jakub] - merge netlink_policy_dump_get_policy_idx() with the old get_policy_idx() we already had - rebase without Jakub's patch to have per-op dump Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netlink/genetlink.c')
-rw-r--r--net/netlink/genetlink.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c
index 7ddc574931f4..89646b97300c 100644
--- a/net/netlink/genetlink.c
+++ b/net/netlink/genetlink.c
@@ -1150,7 +1150,8 @@ static int ctrl_dumppolicy_start(struct netlink_callback *cb)
if (!rt->policy)
return -ENODATA;
- return netlink_policy_dump_start(rt->policy, rt->maxattr, &ctx->state);
+ return netlink_policy_dump_add_policy(&ctx->state, rt->policy,
+ rt->maxattr);
}
static int ctrl_dumppolicy(struct sk_buff *skb, struct netlink_callback *cb)