#!/bin/sh # vim: set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 : name=$0 basename="$(basename $0)" _log() { logger -p daemon.info -t "${basename}" "$@" } _ping_server() { local host=$1 ret=$(ping \ -w "$OMR_TRACKER_TIMEOUT" \ -c 1 \ -q \ "${host}" 2>/dev/null ) && echo "$ret" | grep -sq " 0% packet loss" && { server_ping=true } } _ping_tunnel() { local name=$1 config_get gateway $1 gateway config_get ifname $1 ifname config_get disabled $1 disabled [ "$(echo $ifname | grep oip)" != "" ] && [ -n "$gateway" ] && [ "$disabled" != "1" ] && { _ping_server $gateway } } . /lib/functions.sh timeout=${OMR_TRACKER_TIMEOUT:-5} interval=${OMR_TRACKER_INTERVAL:-10} intervaltries=${OMR_TRACKER_INTERVAL_TRIES:-2} retry=${OMR_TRACKER_TRIES:-4} waittest=${OMR_TRACKER_WAIT_TEST:-0} while true; do server_ping=false config_load network config_foreach _ping_tunnel interface if [ "$server_ping" = false ]; then /etc/init.d/openmptcprouter-vps set_gre_tunnel 2>&1 >/dev/null fi sleep "${interval}" done