+
+
+restore_factory_defaults() {
+ echo "+ Restore default config as requested with cleanup=1"
+ cp -f /rom/etc/config/* /etc/config/
+ rm /etc/config/wireless
+ wifi detect > /etc/config/wireless
+ rm /etc/config/network
+ if [ -f /etc/init.d/defconfig ]; then
+ # legacy (AA)
+ /etc/init.d/defconfig start
+ [ -f /rom/etc/uci-defaults/network ] && sh /rom/etc/uci-defaults/network
+ else
+ sh /rom/etc/uci-defaults/02_network
+ fi
+}
+
+is_in_list() {
+ # checks if an item is in a list
+ local list="$1"
+ local item="$2"
+ for word in $list; do
+ [ $word = "$item" ] && return 0
+ done
+ return 1
+}
+
+add_to_list() {
+ local list="$1"
+ local item="$2"
+ is_in_list "$list" "$item" && echo $list
+ if [ -z "$list" ]; then
+ echo "$item"
+ else
+ echo "$list $item"
+ fi
+}