From 01b99998bd031347e1be335499399db0944c72c9 Mon Sep 17 00:00:00 2001 From: Simon Wunderlich Date: Thu, 6 Feb 2014 19:30:38 +0100 Subject: [PATCH] hostapd: Allow to switch to DFS channels if available If DFS channels are marked as "available", an AP can switch to them immediately without performing CAC. Therefore, the channel selection function should consider these channels even though these are radar channels. Signed-hostap: Simon Wunderlich --- src/ap/dfs.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ap/dfs.c b/src/ap/dfs.c index 590a03acf..71ddc807a 100644 --- a/src/ap/dfs.c +++ b/src/ap/dfs.c @@ -50,9 +50,11 @@ static int dfs_channel_available(struct hostapd_channel_data *chan, /* * When radar detection happens, CSA is performed. However, there's no * time for CAC, so radar channels must be skipped when finding a new - * channel for CSA. + * channel for CSA, unless they are available for immediate use. */ - if (skip_radar && chan->flag & HOSTAPD_CHAN_RADAR) + if (skip_radar && (chan->flag & HOSTAPD_CHAN_RADAR) && + ((chan->flag & HOSTAPD_CHAN_DFS_MASK) != + HOSTAPD_CHAN_DFS_AVAILABLE)) return 0; if (chan->flag & HOSTAPD_CHAN_DISABLED)