diff options
author | Felix Fietkau <nbd@openwrt.org> | 2009-08-07 00:07:42 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2009-08-07 00:07:42 +0000 |
commit | 4dbaccf0cd15a80b894baca4659ac38db4cc3ffe (patch) | |
tree | 682dd9c3f173697c93e0f7d61b48ae2c81d95167 /package/base-files/files/etc/functions.sh | |
parent | 36aa20bdab8284c503b5871288f2ffe1b0ea4074 (diff) | |
download | master-31e0f0ae-4dbaccf0cd15a80b894baca4659ac38db4cc3ffe.tar.gz master-31e0f0ae-4dbaccf0cd15a80b894baca4659ac38db4cc3ffe.tar.bz2 master-31e0f0ae-4dbaccf0cd15a80b894baca4659ac38db4cc3ffe.zip |
base-files: allow default value for config_get
Signed-off-by: Malte S. Stretz <mss@apache.org>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 17155
Diffstat (limited to 'package/base-files/files/etc/functions.sh')
-rwxr-xr-x | package/base-files/files/etc/functions.sh | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh index 828e37e404..efa378f006 100755 --- a/package/base-files/files/etc/functions.sh +++ b/package/base-files/files/etc/functions.sh @@ -134,22 +134,25 @@ config_clear() { done } +# config_get <variable> <section> <option> [<default>] +# config_get <section> <option> config_get() { case "$3" in - "") eval "echo \"\${CONFIG_${1}_${2}}\"";; - *) eval "export ${NO_EXPORT:+-n} -- \"$1=\${CONFIG_${2}_${3}}\"";; + "") eval echo "\${CONFIG_${1}_${2}:-\${4}}";; + *) eval export ${NO_EXPORT:+-n} -- "${1}=\${CONFIG_${2}_${3}:-\${4}}";; esac } # config_get_bool <variable> <section> <option> [<default>] config_get_bool() { local _tmp - config_get "_tmp" "$2" "$3" + config_get _tmp "$2" "$3" "$4" case "$_tmp" in - 1|on|true|enabled) export ${NO_EXPORT:+-n} "$1=1";; - 0|off|false|disabled) export ${NO_EXPORT:+-n} "$1=0";; - *) eval "$1=$4";; + 1|on|true|enabled) _tmp=1;; + 0|off|false|disabled) _tmp=0;; + *) _tmp="$4";; esac + export ${NO_EXPORT:+-n} "$1=$_tmp" } config_set() { |