mac80211: fix various problems in ibss code
authorJohannes Berg <johannes@sipsolutions.net>
Thu, 23 Apr 2009 09:48:56 +0000 (11:48 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 6 May 2009 19:14:29 +0000 (15:14 -0400)
commit0e41f715c04f85a40ae6531d660be2241717be1c
tree35e44d6a2d4de54ad6cfd5d7fe2b6348efad2c6a
parentc7ae011dc8306d982c25fb4f679752e790a08dc4
mac80211: fix various problems in ibss code

There are a few problems in the IBSS code:
 a) it tries to activate interfaces that are down after scanning
 b) it crashes after scanning on an IBSS iface that isn't active
 c) since the ssid_len is used as a flag, need to make it visible
    only after all other settings are set, this helps protect
    against b)

For b), we get a system crash:

wlan0: Creating new IBSS network, BSSID ce:f9:88:76:1e:4d
BUG: unable to handle kernel NULL pointer dereference at (null)
IP: [<...>] ieee80211_sta_find_ibss+0x294/0x37d [mac80211]
Call Trace:
 [<...>] ieee80211_ibss_notify_scan_completed+0x0/0x88 [mac80211]

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/ibss.c