X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/87d2c422466c7f3e783f9a430c2824e5619868ba..a6ff6c1f36b886b61a08ac89996ee15340e6fc64:/package/uci/files/lib/config/uci.sh diff --git a/package/uci/files/lib/config/uci.sh b/package/uci/files/lib/config/uci.sh index d759615bd..db84c8343 100644 --- a/package/uci/files/lib/config/uci.sh +++ b/package/uci/files/lib/config/uci.sh @@ -23,9 +23,15 @@ uci_load() { local PACKAGE="$1" local DATA local RET + local VAR _C=0 if [ -z "$CONFIG_APPEND" ]; then + for VAR in $CONFIG_LIST_STATE; do + export ${NO_EXPORT:+-n} CONFIG_${VAR}= + export ${NO_EXPORT:+-n} CONFIG_${VAR}_LENGTH= + done + export ${NO_EXPORT:+-n} CONFIG_LIST_STATE= export ${NO_EXPORT:+-n} CONFIG_SECTIONS= export ${NO_EXPORT:+-n} CONFIG_NUM_SECTIONS=0 export ${NO_EXPORT:+-n} CONFIG_SECTION= @@ -65,6 +71,11 @@ uci_set_state() { /sbin/uci ${UCI_CONFIG_DIR:+-c $UCI_CONFIG_DIR} -P /var/state set "$PACKAGE.$CONFIG${OPTION:+.$OPTION}=$VALUE" } +uci_toggle_state() { + uci_revert_state "$1" "$2" "$3" + uci_set_state "$1" "$2" "$3" "$4" +} + uci_set() { local PACKAGE="$1" local CONFIG="$2"