diff mbox

nl80211: fix attrtype and value for NL80211_ATTR_SUPPORTED_COMMANDS

Message ID 1249464510-21539-1-git-send-email-yi.zhu@intel.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Zhu Yi Aug. 5, 2009, 9:28 a.m. UTC
The patch fixes the misuse between attrtype and value for the
CMD list nested in NL80211_ATTR_SUPPORTED_COMMANDS attribute.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
---
 net/wireless/nl80211.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

Comments

Johannes Berg Aug. 5, 2009, 3:41 p.m. UTC | #1
On Wed, 2009-08-05 at 17:28 +0800, Zhu Yi wrote:
> The patch fixes the misuse between attrtype and value for the
> CMD list nested in NL80211_ATTR_SUPPORTED_COMMANDS attribute.

No? It was this way intentionally.

> --- a/net/wireless/nl80211.c
> +++ b/net/wireless/nl80211.c
> @@ -520,7 +520,7 @@ static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags,
>  	 do {							\
>  		if (dev->ops->op) {				\
>  			i++;					\
> -			NLA_PUT_U32(msg, i, NL80211_CMD_ ## n);	\
> +			NLA_PUT_U32(msg, NL80211_CMD_ ## n, i);	\

This is an array, the index doesn't matter, and the value is the
supported command. You parse it with nla_for_each_nested()

johannes
Zhu Yi Aug. 6, 2009, 1:46 a.m. UTC | #2
On Wed, 2009-08-05 at 23:41 +0800, Johannes Berg wrote: 
> On Wed, 2009-08-05 at 17:28 +0800, Zhu Yi wrote:
> > The patch fixes the misuse between attrtype and value for the
> > CMD list nested in NL80211_ATTR_SUPPORTED_COMMANDS attribute.
> 
> No? It was this way intentionally.
> 
> > --- a/net/wireless/nl80211.c
> > +++ b/net/wireless/nl80211.c
> > @@ -520,7 +520,7 @@ static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags,
> >  	 do {							\
> >  		if (dev->ops->op) {				\
> >  			i++;					\
> > -			NLA_PUT_U32(msg, i, NL80211_CMD_ ## n);	\
> > +			NLA_PUT_U32(msg, NL80211_CMD_ ## n, i);	\
> 
> This is an array, the index doesn't matter, and the value is the
> supported command. You parse it with nla_for_each_nested()

I'm trying to find if a command (i.e. NL80211_CMD_CONNECT) is supported
or not. I think I can use nla_find_nested() if the command is an
attribute. But I can also do the find myself if it is an array like now.
So, never mind.

Thanks,
-yi

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Johannes Berg Aug. 6, 2009, 7:28 a.m. UTC | #3
On Thu, 2009-08-06 at 09:46 +0800, Zhu Yi wrote:

> I'm trying to find if a command (i.e. NL80211_CMD_CONNECT) is supported
> or not. I think I can use nla_find_nested() if the command is an
> attribute. But I can also do the find myself if it is an array like now.

Ok, that would have worked too, but I'm pretty sure I documented it the
way I also implemented it.

johannes
diff mbox

Patch

diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index 0cd5482..086d3fb 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -520,7 +520,7 @@  static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags,
 	 do {							\
 		if (dev->ops->op) {				\
 			i++;					\
-			NLA_PUT_U32(msg, i, NL80211_CMD_ ## n);	\
+			NLA_PUT_U32(msg, NL80211_CMD_ ## n, i);	\
 		}						\
 	} while (0)
 
@@ -539,19 +539,19 @@  static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags,
 	CMD(join_ibss, JOIN_IBSS);
 	if (dev->wiphy.netnsok) {
 		i++;
-		NLA_PUT_U32(msg, i, NL80211_CMD_SET_WIPHY_NETNS);
+		NLA_PUT_U32(msg, NL80211_CMD_SET_WIPHY_NETNS, i);
 	}
 
 #undef CMD
 
 	if (dev->ops->connect || dev->ops->auth) {
 		i++;
-		NLA_PUT_U32(msg, i, NL80211_CMD_CONNECT);
+		NLA_PUT_U32(msg, NL80211_CMD_CONNECT, i);
 	}
 
 	if (dev->ops->disconnect || dev->ops->deauth) {
 		i++;
-		NLA_PUT_U32(msg, i, NL80211_CMD_DISCONNECT);
+		NLA_PUT_U32(msg, NL80211_CMD_DISCONNECT, i);
 	}
 
 	nla_nest_end(msg, nl_cmds);