diff options
author | Felix Fietkau <nbd@openwrt.org> | 2006-10-09 05:59:26 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2006-10-09 05:59:26 +0000 |
commit | 5797c34cf477d45cf842bbb32a5f70ddbde6d37c (patch) | |
tree | a06ccf30559687bbee6a348cf9f81d23b4dd1bf5 /package/base-files/default/etc | |
parent | d30dc59b745b1a3d0c455ef7fe388750abb5c9ab (diff) | |
download | upstream-5797c34cf477d45cf842bbb32a5f70ddbde6d37c.tar.gz upstream-5797c34cf477d45cf842bbb32a5f70ddbde6d37c.tar.bz2 upstream-5797c34cf477d45cf842bbb32a5f70ddbde6d37c.zip |
add new /bin/uci script and api for manipulating buildroot-ng config files
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4982 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/default/etc')
-rwxr-xr-x | package/base-files/default/etc/functions.sh | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/package/base-files/default/etc/functions.sh b/package/base-files/default/etc/functions.sh index 2ce172eb35..9c3057ed00 100755 --- a/package/base-files/default/etc/functions.sh +++ b/package/base-files/default/etc/functions.sh @@ -54,6 +54,26 @@ option () { option_cb "$varname" "$*" } +config_rename() { + local OLD="$1" + local NEW="$2" + local oldsetting + local newvar + + [ -z "$OLD" -o -z "$NEW" ] && return + for oldsetting in `set | grep ^CONFIG_${OLD}_ | \ + sed -e 's/\(.*\)=.*$/\1/'` ; do + newvar="CONFIG_${NEW}_${oldsetting##CONFIG_${OLD}_}" + eval "${newvar}=\${$oldsetting}" + unset "$oldsetting" + done + [ "$CONFIG_SECTION" = "$OLD" ] && CONFIG_SECTION="$NEW" +} + +config_unset() { + config_set "$1" "$2" "" +} + config_clear() { [ -z "$CONFIG_SECTION" ] && return for oldsetting in `set | grep ^CONFIG_${CONFIG_SECTION}_ | \ @@ -79,7 +99,7 @@ config_load() { config_get() { case "$3" in - "") eval "echo \${CONFIG_${1}_${2}}";; + "") eval "echo \"\${CONFIG_${1}_${2}}\"";; *) eval "$1=\"\${CONFIG_${2}_${3}}\"";; esac } |