#!/bin/bash #echo $USERNAME : $REASON : $DEVICE verify_env_set() { if test -z "${!1}";then env >out.$REASON.fail.tmp echo "$1 environment variable was not set" >>out.$REASON.fail.tmp exit 1 fi } # Verify the common environment variables verify_env_set "IP_REMOTE" verify_env_set "REASON" verify_env_set "HOSTNAME" verify_env_set "REMOTE_HOSTNAME" verify_env_set "USERNAME" verify_env_set "USER_AGENT" verify_env_set "DEVICE_PLATFORM" verify_env_set "DEVICE_TYPE" case "$REASON" in connect) verify_env_set "DEVICE" test "${OCSERV_DNS}" = "192.168.1.1 192.168.5.1 " && \ test "${OCSERV_DNS4}" = "192.168.1.1 192.168.5.1 " && \ test "${OCSERV_ROUTES}" = "192.168.1.0/255.255.255.0 192.168.5.0/255.255.255.0 " && \ test "${OCSERV_ROUTES4}" = "192.168.1.0/255.255.255.0 192.168.5.0/255.255.255.0 " && \ echo "${IP_REMOTE}" > connect.ok ;; disconnect) if ! test -z "$DEVICE";then test "${OCSERV_DNS}" = "192.168.1.1 192.168.5.1 " && \ test "${OCSERV_DNS4}" = "192.168.1.1 192.168.5.1 " && \ test "${OCSERV_ROUTES}" = "192.168.1.0/255.255.255.0 192.168.5.0/255.255.255.0 " && \ test "${OCSERV_ROUTES4}" = "192.168.1.0/255.255.255.0 192.168.5.0/255.255.255.0 " && \ echo "${IP_REMOTE}" > disconnect.ok fi ;; "host-update") verify_env_set "HOSTNAME" echo > host-update.ok ;; esac exit 0