diff options
author | Jim Pryor <profjim@jimpryor.net> | 2009-08-30 01:47:13 +0200 |
---|---|---|
committer | James Rayner <james@archlinux.org> | 2009-09-07 12:14:08 +0200 |
commit | b15a82d2a97a6041fd7a4ada672d56bb982860be (patch) | |
tree | 03057cb867ec9b76d7bf1b38d0bbbc218f8d9294 /src/globals | |
parent | 9ddad8ae8d3f093db4474165a9e2d46d8dc08767 (diff) | |
download | netctl-b15a82d2a97a6041fd7a4ada672d56bb982860be.tar.gz netctl-b15a82d2a97a6041fd7a4ada672d56bb982860be.tar.xz |
move checkyesno to globals, make NETCFG_DEBUG a yes/no setting (default=no)
Signed-off-by: Jim Pryor <profjim@jimpryor.net>
Diffstat (limited to 'src/globals')
-rw-r--r-- | src/globals | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/src/globals b/src/globals index c55d038..ca7030e 100644 --- a/src/globals +++ b/src/globals @@ -43,7 +43,7 @@ function report_notify { } function report_debug { - [[ -n "$NETCFG_DEBUG" ]] && echo "DEBUG: $*" + checkyesno "$NETCFG_DEBUG" && echo "DEBUG: $*" } function report_try { @@ -83,6 +83,37 @@ function exit_err { report_err "$*"; exit 1; } function exit_fail { report_fail "$*"; exit 1; } +### From FreeBSD's /etc/rc.subr +## +# checkyesno var +# Test $1 variable, and warn if not set to YES or NO. +# Return 0 if it's "yes" (et al), nonzero otherwise. +# to make default yes, do "checkyesno ${VAR:-yes}" +# +checkyesno() +{ + local _value="$1" + #debug "checkyesno: $1 is set to $_value." + case "$_value" in + + # "yes", "true", "on", or "1" + [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) + return 0 + ;; + + # "no", "false", "off", or "0" + [Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) + return 1 + ;; + *) + #warn "\$${1} is not set properly - see ${rcvar_manpage}." + return 1 + ;; + esac +} + + + function load_hooks() { ### Load any +x files in $HOOKS_DIR and $USERHOOKS_DIR local hook @@ -98,3 +129,4 @@ function load_hooks() { load_hooks + |