nl80211: fix missing nesting
authorJohannes Berg <johannes.berg@intel.com>
Tue, 24 Aug 2010 10:15:53 +0000 (12:15 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 25 Aug 2010 18:34:56 +0000 (14:34 -0400)
commit 95a6ccbb46c70cff376684c752831c014c87029d
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Thu Aug 12 15:38:38 2010 +0200

    cfg80211/mac80211: extensible frame processing

introduced a netlink bug that caused parsing errors
in userspace because it forgot to close a nesting,
which would advertise a nesting length of zero to
userspace, which then completely threw off parsing
and led to

Illegal nla->nla_type == 0

being printed by libnl.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/wireless/nl80211.c

index 927ffbd2aebcbaa1df4b224e2117c7e7fa6db1df..49f5ca35e787dc4214140a1e12b3357faeb56572 100644 (file)
@@ -636,6 +636,8 @@ static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags,
                        nla_nest_end(msg, nl_ftypes);
                }
 
+               nla_nest_end(msg, nl_ifs);
+
                nl_ifs = nla_nest_start(msg, NL80211_ATTR_RX_FRAME_TYPES);
                if (!nl_ifs)
                        goto nla_put_failure;