Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e94ef682 authored by Thomas Graf's avatar Thomas Graf Committed by David S. Miller
Browse files

[GENETLINK] ctrl: Avoid empty CTRL_ATTR_OPS attribute when dumping



Based on Jamal's patch but compiled and even tested. :-)

Signed-off-by: default avatarThomas Graf <tgraf@suug.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent cdbc6dae
Loading
Loading
Loading
Loading
+25 −22
Original line number Diff line number Diff line
@@ -394,10 +394,7 @@ static struct genl_family genl_ctrl = {
static int ctrl_fill_info(struct genl_family *family, u32 pid, u32 seq,
			  u32 flags, struct sk_buff *skb, u8 cmd)
{
	struct nlattr *nla_ops;
	struct genl_ops *ops;
	void *hdr;
	int idx = 1;

	hdr = genlmsg_put(skb, pid, seq, &genl_ctrl, flags, cmd);
	if (hdr == NULL)
@@ -409,6 +406,11 @@ static int ctrl_fill_info(struct genl_family *family, u32 pid, u32 seq,
	NLA_PUT_U32(skb, CTRL_ATTR_HDRSIZE, family->hdrsize);
	NLA_PUT_U32(skb, CTRL_ATTR_MAXATTR, family->maxattr);

	if (!list_empty(&family->ops_list)) {
		struct nlattr *nla_ops;
		struct genl_ops *ops;
		int idx = 1;

		nla_ops = nla_nest_start(skb, CTRL_ATTR_OPS);
		if (nla_ops == NULL)
			goto nla_put_failure;
@@ -436,6 +438,7 @@ static int ctrl_fill_info(struct genl_family *family, u32 pid, u32 seq,
		}

		nla_nest_end(skb, nla_ops);
	}

	return genlmsg_end(skb, hdr);