cfg80211: fix incorrect assumption on last_request for 11d
authorLuis R. Rodriguez <lrodriguez@atheros.com>
Sat, 28 Mar 2009 01:45:08 +0000 (01:45 +0000)
committerChris Wright <chrisw@sous-sol.org>
Thu, 2 Apr 2009 20:55:19 +0000 (13:55 -0700)
commitcbb76e6c205242d8889f9979d53f22a43328b9ec
treedfc703925dd1f2030480ea900ba5f4ffcedb0dee
parent4d25e3d0370354092b04aa338df14fb0b4c63331
cfg80211: fix incorrect assumption on last_request for 11d

upstream commit: cc0b6fe88e99096868bdbacbf486c97299533b5a

The incorrect assumption is the last regulatory request
(last_request) is always a country IE when processing
country IEs. Although this is true 99% of the time the
first time this happens this could not be true.

This fixes an oops in the branch check for the last_request
when accessing drv_last_ie. The access was done under the
assumption the struct won't be null.

Note to stable: to port to 29 replace as follows, only 29 has
country IE code:

s|NL80211_REGDOM_SET_BY_COUNTRY_IE|REGDOM_SET_BY_COUNTRY_IE

Cc: stable@kernel.org
Reported-by: Quentin Armitage <Quentin@armitage.org.uk>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
[chrisw: backport to 2.6.29]
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
net/wireless/reg.c