hostapd: DFS for channel switch in repeater mode
In repeater mode remote AP may request channel switch to a new channel. Check if DFS is required for the new channel before proceeding with normal AP operations. Start CAC procedure if radar detection is required and channel is not yet marked as available. Signed-off-by: Sergey Matyukevich <sergey.matyukevich.os@quantenna.com>
This commit is contained in:
parent
c60717f839
commit
91498a1225
1 changed files with 6 additions and 0 deletions
|
@ -945,6 +945,12 @@ void hostapd_event_ch_switch(struct hostapd_data *hapd, int freq, int ht,
|
||||||
} else if (hapd->iface->drv_flags & WPA_DRIVER_FLAGS_DFS_OFFLOAD) {
|
} else if (hapd->iface->drv_flags & WPA_DRIVER_FLAGS_DFS_OFFLOAD) {
|
||||||
wpa_msg(hapd->msg_ctx, MSG_INFO, AP_CSA_FINISHED
|
wpa_msg(hapd->msg_ctx, MSG_INFO, AP_CSA_FINISHED
|
||||||
"freq=%d dfs=%d", freq, is_dfs);
|
"freq=%d dfs=%d", freq, is_dfs);
|
||||||
|
} else if (is_dfs &&
|
||||||
|
hostapd_is_dfs_required(hapd->iface) &&
|
||||||
|
!hostapd_is_dfs_chan_available(hapd->iface) &&
|
||||||
|
!hapd->iface->cac_started) {
|
||||||
|
hostapd_disable_iface(hapd->iface);
|
||||||
|
hostapd_enable_iface(hapd->iface);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < hapd->iface->num_bss; i++)
|
for (i = 0; i < hapd->iface->num_bss; i++)
|
||||||
|
|
Loading…
Reference in a new issue