diff --git a/src/script/multiap b/src/script/multiap index 99545456c6ec8e4431eb345f9c72ad2fbc63904c..bdba288222c82c6e84d15a292cf11a78016a4983 100755 --- a/src/script/multiap +++ b/src/script/multiap @@ -1498,6 +1498,45 @@ advertise_cce() { hostapd_cli -i $ifname set dpp_configurator_connectivity $enable > /dev/null 2>&1 } +reset() { + teardown_ts() { + local section="$1" + local vid + + config_get vid "$section" vid + [ -n "$vid" ] && ts_sub cleanup "$vid" + } + + config_load mapagent + config_foreach teardown_ts ap + + /etc/init.d/mapagent stop + /etc/init.d/ieee1905 stop + /etc/init.d/wifimngr stop + wifi down + rm /etc/config/wireless + wifi config > /dev/null 2>&1 + rm /etc/config/mapagent + cp /rom/etc/config/mapagent /etc/config/mapagent + cp /rom/etc/config/ieee1905 /etc/config/ieee1905 + . /rom/etc/uci-defaults/30-set-ieee1905-al-macaddr + uci commit ieee1905 + + if [ -x /usr/sbin/mapcontroller ]; then + /etc/init.d/mapcontroller stop + rm /etc/config/mapcontroller + cp /rom/etc/config/mapcontroller /etc/config/mapcontroller + . /rom/etc/uci-defaults/99-mapcntlr > /dev/null 2>&1 + /etc/init.d/mapcontroller start + fi + + setup_conf > /dev/null 2>&1 + /etc/init.d/ieee1905 start + /etc/init.d/wifimngr start + wireless_reload + /etc/init.d/mapagent start > /dev/null 2>&1 +} + func=$1 shift @@ -1540,6 +1579,7 @@ case "$func" in set_ap_ssid) set_ap_ssid $@;; set_ap_psk) set_ap_psk $@;; config_reorder) config_reorder $@;; + reset) reset $@;; --help|help) usage;; *) usage; exit 1;; esac