X-Git-Url: https://git.grml.org/?p=grml-autoconfig.git;a=blobdiff_plain;f=autoconfig.functions;h=3c594cf8cb1e309261e10ed3906e324418545b77;hp=50fdf81b7418aeea9cd106ee7fd99696c3a98e1c;hb=f53520a5abae26b3e7511777baabf72597a50aa3;hpb=6fbe7e6ff8b7d01dc6aa0fe1df9addca2dfe1e40 diff --git a/autoconfig.functions b/autoconfig.functions index 50fdf81..3c594cf 100755 --- a/autoconfig.functions +++ b/autoconfig.functions @@ -47,10 +47,14 @@ fi # Get a bootoption's parameter: read boot command line and either # echo last parameter's argument or return false. getbootparam(){ - case "$CMDLINE" in - *$1=*) - result="${CMDLINE##* $1=}" - result="${result%%[ ]*}" + local line + local ws + ws=' ' + line=" $CMDLINE " + case "$line" in + *[${ws}]"$1="*) + result="${line##*[$ws]$1=}" + result="${result%%[$ws]*}" echo "$result" return 0 ;; *) # no match? @@ -61,13 +65,16 @@ getbootparam(){ # Check boot commandline for specified option checkbootparam(){ [ -n "$1" ] || ( echo "Error: missing argument to checkbootparam()" ; return 1 ) - # make sure we match beginning and end of line as well - # but don't match 'vg' if we want to check for 'vga' - if echo "$CMDLINE" | grep -qw "$1" ; then - return 0 - else - return 1 - fi + local line + local ws + ws=' ' + line=" $CMDLINE " + case "$line" in + *[${ws}]"$1"=*|*[${ws}]"$1"[${ws}]*) + return 0 ;; + *) + return 1 ;; + esac } # Check wheter a configuration variable (like $CONFIG_TOHD) is @@ -1792,7 +1799,7 @@ config_netconfig(){ CONFIGFILE='/tmp/netconfig.grml' getconfig() { - wget --timeout=10 --dns-timeout=10 --connect-timeout=10 \ + wget --timeout=10 --dns-timeout=10 --connect-timeout=10 --tries=1 \ --read-timeout=10 $CONFIG -O $CONFIGFILE && return 0 || return 1 } einfo "Trying to get ${WHITE}${CONFIG}${NORMAL}" @@ -1951,6 +1958,8 @@ else fi DCSDIR="/mnt/grml" fi + else + DCSDIR="/live/image" fi fi fi