cfg80211: Update of regulatory request initiator handling
In some cases there could be possible dereferencing freed pointer. The update is intended to avoid this issue. Signed-off-by: Yuri Ershov <ext-yuri.ershov@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Родитель
d080e2755d
Коммит
c4c322941c
|
@ -1306,6 +1306,7 @@ static void reg_process_hint(struct regulatory_request *reg_request)
|
||||||
{
|
{
|
||||||
int r = 0;
|
int r = 0;
|
||||||
struct wiphy *wiphy = NULL;
|
struct wiphy *wiphy = NULL;
|
||||||
|
enum nl80211_reg_initiator initiator = reg_request->initiator;
|
||||||
|
|
||||||
BUG_ON(!reg_request->alpha2);
|
BUG_ON(!reg_request->alpha2);
|
||||||
|
|
||||||
|
@ -1325,7 +1326,7 @@ static void reg_process_hint(struct regulatory_request *reg_request)
|
||||||
/* This is required so that the orig_* parameters are saved */
|
/* This is required so that the orig_* parameters are saved */
|
||||||
if (r == -EALREADY && wiphy &&
|
if (r == -EALREADY && wiphy &&
|
||||||
wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY)
|
wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY)
|
||||||
wiphy_update_regulatory(wiphy, reg_request->initiator);
|
wiphy_update_regulatory(wiphy, initiator);
|
||||||
out:
|
out:
|
||||||
mutex_unlock(®_mutex);
|
mutex_unlock(®_mutex);
|
||||||
mutex_unlock(&cfg80211_mutex);
|
mutex_unlock(&cfg80211_mutex);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче