diff --git a/packages/mediacenter/xbmc/system.d/xbmc-waitonnetwork.service b/packages/mediacenter/xbmc/system.d/xbmc-waitonnetwork.service index 1ac1e604c3..dc27a793ee 100644 --- a/packages/mediacenter/xbmc/system.d/xbmc-waitonnetwork.service +++ b/packages/mediacenter/xbmc/system.d/xbmc-waitonnetwork.service @@ -9,8 +9,9 @@ ConditionPathExists=/storage/.cache/openelec/network_wait Type=oneshot EnvironmentFile=/storage/.cache/openelec/network_wait ExecStartPre=/bin/sh -c 'echo "waiting on Network to come online ... (max. $WAIT_NETWORK_TIME sec.)" -ExecStart=/usr/bin/cm-online --timeout=${WAIT_NETWORK_TIME} +ExecStart=/usr/bin/cm-online ${WAIT_NETWORK_TIME} StandardOutput=tty +RemainAfterExit=yes [Install] WantedBy=xbmc.service diff --git a/packages/network/connman/scripts/cm-online b/packages/network/connman/scripts/cm-online index 7af1b49d70..7bdff3d87d 100755 --- a/packages/network/connman/scripts/cm-online +++ b/packages/network/connman/scripts/cm-online @@ -20,40 +20,14 @@ ################################################################################ # Wait for the network to come up and exit after timeout or if network is online -# -# Usage: -# cm-online [--timeout=n] [--verbose] -# --timeout : timeout in sec. (default 30) -# --verbose : print status on exit -# -# Exit status: -# (0) Network online -# (1) Network not online -TIMEOUT=30 - -for arg in $@; do - case $arg in - --timeout=*) - TIMEOUT="${arg#*=}" - ;; - --verbose) - VERBOSE=yes - ;; - esac -done +# default 30sec +[ ! -z $1 ] && TIMEOUT=$1 || TIMEOUT=30 LOOP_COUNT=$((TIMEOUT * 4)) for i in $(seq 1 $LOOP_COUNT) ; do STATUS=$(ifconfig | sed -e '/inet addr:/!d' -e '/127.0.0.1/d' |wc -l) - if [ "$STATUS" -gt 0 ]; then - [ "$VERBOSE" = yes ] && echo "Network is online" - exit 0 - fi + [ "$STATUS" -gt 0 ] && break usleep 250000 done - -[ "$VERBOSE" = yes ] && echo "Network is down" - -exit 1