summaryrefslogtreecommitdiffstats
path: root/src/globals
diff options
context:
space:
mode:
authorJim Pryor <profjim@jimpryor.net>2009-08-30 01:47:13 +0200
committerJames Rayner <james@archlinux.org>2009-09-07 12:14:08 +0200
commitb15a82d2a97a6041fd7a4ada672d56bb982860be (patch)
tree03057cb867ec9b76d7bf1b38d0bbbc218f8d9294 /src/globals
parent9ddad8ae8d3f093db4474165a9e2d46d8dc08767 (diff)
downloadnetctl-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/globals34
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
+