diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-02-03 06:48:15 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-02-03 06:48:15 +0000 |
commit | afa5da1d1bf575000d260e9abe26d47b94e3e117 (patch) | |
tree | 20d8c580675afbba4a8238eaa677d3f0fe438323 /package/base-files/files/bin | |
parent | 007000ead9f2531015d4c2c9f0b14be24d8d4aa1 (diff) |
Here comes the new UCI. Enjoy :)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10367 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/files/bin')
-rwxr-xr-x | package/base-files/files/bin/uci | 190 |
1 files changed, 0 insertions, 190 deletions
diff --git a/package/base-files/files/bin/uci b/package/base-files/files/bin/uci deleted file mode 100755 index f89fe82b7..000000000 --- a/package/base-files/files/bin/uci +++ /dev/null @@ -1,190 +0,0 @@ -#!/bin/sh -# Shell script for interacting with config files -# -# Copyright (C) 2006 Fokus Fraunhofer <carsten.tittel@fokus.fraunhofer.de> -# Copyright (C) 2006,2007 Felix Fietkau <nbd@openwrt.org> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -. $UCI_ROOT/etc/functions.sh -include $UCI_ROOT/lib/config - -SEP="[^0-9A-Za-z_]" - -do_get() { - local PACKAGE - local CONFIG - local OPTION - local DUMMY - - strtok "$*" PACKAGE . CONFIG . OPTION $SEP DUMMY - - [ $? -ne 3 ] && { - uci_usage get - exit 1 - } - - uci_load "$PACKAGE" - config_get "$CONFIG" "$OPTION" -} - -do_set() { - local PACKAGE - local CONFIG - local OPTION - local VALUE - - strtok "$1" PACKAGE . CONFIG = VALUE - [ $? -ne 3 -a $? -ne 2 ] && { - uci_usage set - exit 1 - } - - strtok "$CONFIG" CONFIG . OPTION - - if [ $? -eq 1 ]; then - uci_add "$PACKAGE" "$VALUE" "$CONFIG" - else - uci_set "$PACKAGE" "$CONFIG" "$OPTION" "$VALUE" - fi -} - -do_rename() { - [ $# -ne 3 ] && { - uci_usage rename - exit 1 - } - uci_rename "$@" -} - -do_remove() { - local PACKAGE - local CONFIG - local OPTION - local DUMMY - - strtok "$*" PACKAGE . CONFIG . OPTION $SEP DUMMY - [ $? -ne 3 -a $? -ne 2 ] && { - uci_usage rename - exit 1 - } - uci_remove "$PACKAGE" "$CONFIG" ${OPTION:+"$OPTION"} -} - -do_commit() { - local PACKAGE="$1" - for package in ${PACKAGE:-$(cd /tmp/.uci; ls)}; do - [ lock = "${package##*.}" ] && continue # ignore .lock files - uci_commit "$package" - done -} - -do_show() { - local PACKAGE - local CONFIG - local DUMMY - - strtok "$*" PACKAGE . CONFIG $SEP DUMMY - [ $? -gt 2 ] && { - uci_usage show - exit 1 - } - - for package in ${PACKAGE:-$(cd $UCI_ROOT/etc/config; ls)}; do - SECTION="" - - config_cb() { - if [ -z "$CONFIG" -o ."$CONFIG" = ."$2" ]; then - append SECTION "$2" - option_cb() { - append "${CONFIG_SECTION}_VARS" "$1" - } - else - option_cb() { - return 0 - } - fi - } - - uci_load "$package" - - for section in $SECTION; do - config_get type "$section" TYPE - [ -z "$type" ] && continue - echo "$package.$section=$type" - eval "VARS=\"\${${section}_VARS}\"" - for var in $VARS; do - config_get val "$section" "$var" - [ -n "$val" ] && { - echo "$package.$section.$var=$val" - config_set "$section" "$var" "" - } - done - config_set "$section" TYPE "" - done - done -} - -do_validate() { - [ "$#" -ne 1 ] && { - uci_usage validate - exit 1 - } - uci_validate "$1" || exit "$?" -} - -uci_usage() { - case "$1" in - show) echo "$0 show [<package>[.<config>]]";; - get) echo "$0 get <package>.<config>.<option>";; - set) echo "$0 set <package>.<config>[.<option>]=<value>";; - del) echo "$0 del <package>.<config>[.<option>]";; - rename) echo "$0 rename <package> <config> <name>";; - commit) echo "$0 commit [<package> ... ]";; - validate) echo "$0 validate <package>";; - *) - echo "Syntax: $0 <command> <arguments...>" - echo - uci_usage show - uci_usage get - uci_usage set - uci_usage del - uci_usage rename - uci_usage commit - uci_usage validate - echo - exit 1 - ;; - esac -} - -if [ $# -eq 0 ] ; then - uci_usage - exit 0 -fi - -CMD="$1" -shift -case "$CMD" in - set) do_set "$@";; - del) do_remove "$@";; - rename) do_rename "$@";; - get) do_get "$@";; - show) do_show "$@";; - commit) do_commit "$@";; - validate) do_validate "$@";; - *) uci_usage;; -esac -exit 0 |