]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
cfg80211: ignore channel state for stopped AP/mesh interfaces
authorFelix Fietkau <nbd@openwrt.org>
Thu, 12 Jul 2012 14:10:02 +0000 (16:10 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Thu, 12 Jul 2012 14:18:17 +0000 (16:18 +0200)
Without this change, running AP + station on the same wiphy
does not work since the commit "cfg80211: add channel checking
for iface combinations". The stopped AP prevents the client
from connecting to an AP on a different channel.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
[line-break commit message to < 72 chars]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/chan.c

index 1cc4b7cc7372260eedc9872115a9ff2b81563279..a16cdffb24a9510ffee1c6b012bcbbc9492ae97b 100644 (file)
@@ -134,9 +134,16 @@ cfg80211_get_chan_state(struct wireless_dev *wdev,
                break;
        case NL80211_IFTYPE_AP:
        case NL80211_IFTYPE_P2P_GO:
+               if (wdev->beacon_interval) {
+                       *chan = wdev->channel;
+                       *chanmode = CHAN_MODE_SHARED;
+               }
+               return;
        case NL80211_IFTYPE_MESH_POINT:
-               *chan = wdev->channel;
-               *chanmode = CHAN_MODE_SHARED;
+               if (wdev->mesh_id_len) {
+                       *chan = wdev->channel;
+                       *chanmode = CHAN_MODE_SHARED;
+               }
                return;
        case NL80211_IFTYPE_MONITOR:
        case NL80211_IFTYPE_AP_VLAN: