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

[GENL]: Add genlmsg_reply() to simply unicast replies to requests



A generic netlink user has no interest in knowing how to
address the source of the original request.

Signed-off-by: default avatarThomas Graf <tgraf@suug.ch>
Acked-by: default avatarPaul Moore <paul.moore@hp.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3dabc715
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -149,6 +149,16 @@ static inline int genlmsg_unicast(struct sk_buff *skb, u32 pid)
	return nlmsg_unicast(genl_sock, skb, pid);
}

/**
 * genlmsg_reply - reply to a request
 * @skb: netlink message to be sent back
 * @info: receiver information
 */
static inline int genlmsg_reply(struct sk_buff *skb, struct genl_info *info)
{
	return genlmsg_unicast(skb, info->snd_pid);
}

/**
 * gennlmsg_data - head of message payload
 * @gnlh: genetlink messsage header
+1 −1
Original line number Diff line number Diff line
@@ -568,7 +568,7 @@ list_start:

	genlmsg_end(ans_skb, data);

	ret_val = genlmsg_unicast(ans_skb, info->snd_pid);
	ret_val = genlmsg_reply(ans_skb, info);
	if (ret_val != 0)
		goto list_failure;

+2 −2
Original line number Diff line number Diff line
@@ -390,7 +390,7 @@ static int netlbl_mgmt_listdef(struct sk_buff *skb, struct genl_info *info)

	genlmsg_end(ans_skb, data);

	ret_val = genlmsg_unicast(ans_skb, info->snd_pid);
	ret_val = genlmsg_reply(ans_skb, info);
	if (ret_val != 0)
		goto listdef_failure;
	return 0;
@@ -512,7 +512,7 @@ static int netlbl_mgmt_version(struct sk_buff *skb, struct genl_info *info)

	genlmsg_end(ans_skb, data);

	ret_val = genlmsg_unicast(ans_skb, info->snd_pid);
	ret_val = genlmsg_reply(ans_skb, info);
	if (ret_val != 0)
		goto version_failure;
	return 0;
+1 −1
Original line number Diff line number Diff line
@@ -160,7 +160,7 @@ static int netlbl_unlabel_list(struct sk_buff *skb, struct genl_info *info)

	genlmsg_end(ans_skb, data);

	ret_val = genlmsg_unicast(ans_skb, info->snd_pid);
	ret_val = genlmsg_reply(ans_skb, info);
	if (ret_val != 0)
		goto list_failure;
	return 0;
+1 −1
Original line number Diff line number Diff line
@@ -529,7 +529,7 @@ static int ctrl_getfamily(struct sk_buff *skb, struct genl_info *info)
		goto errout;
	}

	err = genlmsg_unicast(msg, info->snd_pid);
	err = genlmsg_reply(msg, info);
errout:
	return err;
}