cfg80211: provide channel to start_ap function

Instead of setting the channel first and then
starting the AP, let cfg80211 store the channel
and provide it as one of the AP settings.

This means that now you have to set the channel
before you can start an AP interface, but since
hostapd/wpa_supplicant always do that we're OK
with this change.

Alternatively, it's now possible to give the
channel as an attribute to the start-ap nl80211
command, overriding any preset channel.

Cc: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Johannes Berg
2012-05-16 23:50:18 +02:00
committed by John W. Linville
parent d58e7e37aa
commit aa430da410
7 changed files with 72 additions and 40 deletions

View File

@@ -823,6 +823,11 @@ static int ieee80211_start_ap(struct wiphy *wiphy, struct net_device *dev,
if (old)
return -EALREADY;
err = ieee80211_set_channel(wiphy, dev, params->channel,
params->channel_type);
if (err)
return err;
/*
* Apply control port protocol, this allows us to
* not encrypt dynamic WEP control frames.