]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
DFS: Do not use cf1 to override freq for 20 MHz channels
authorJouni Malinen <j@w1.fi>
Sun, 3 Nov 2013 19:50:48 +0000 (21:50 +0200)
committerJouni Malinen <j@w1.fi>
Sun, 3 Nov 2013 19:50:48 +0000 (21:50 +0200)
NL80211_ATTR_CENTER_FREQ1 is defined to be used for anything but 20 MHz
bandwidth, so it could be unset for 20 MHz channels. Do not use it to
override center frequency from NL80211_ATTR_WIPHY_FREQ (if available)
for 20 MHz channels to avoid clearing frequency.

Signed-hostap: Jouni Malinen <j@w1.fi>

src/ap/dfs.c

index 2168941fea7bd133c8f3dc2fcab26537f1de59e1..0a909f4af010949dc2b10c458dafdb6c23bfd6f1 100644 (file)
@@ -411,7 +411,8 @@ static int set_dfs_state(struct hostapd_iface *iface, int freq, int ht_enabled,
        case CHAN_WIDTH_20_NOHT:
        case CHAN_WIDTH_20:
                n_chans = 1;
-               frequency = cf1;
+               if (frequency == 0)
+                       frequency = cf1;
                break;
        case CHAN_WIDTH_40:
                n_chans = 2;
@@ -466,7 +467,8 @@ static int dfs_are_channels_overlapped(struct hostapd_iface *iface, int freq,
        case CHAN_WIDTH_20_NOHT:
        case CHAN_WIDTH_20:
                radar_n_chans = 1;
-               frequency = cf1;
+               if (frequency == 0)
+                       frequency = cf1;
                break;
        case CHAN_WIDTH_40:
                radar_n_chans = 2;