iface.switch_channel() only reports whether a CSA was started, not whether it completed, so a config-driven channel switch that the driver never finishes would leave the AP stuck without recovery. After issuing the CSA, arm a timer and, if the switch has not completed by the deadline (csa_in_progress still set), fall back to a full interface restart. The timer is armed only on the config-initiated path, so ubus- and apsta-triggered channel switches keep their own recovery. Add an iface.csa_in_progress() ucode method wrapping hostapd_csa_in_progress(). Signed-off-by: Felix Fietkau <nbd@nbd.name> |
||
|---|---|---|
| .. | ||
| config | ||
| ipv6 | ||
| services | ||
| utils | ||