Files
ocserv/tests/connect-script
Alan Jowett 780fbb89a0 Script needs access to additional client metadata.
Export more information to the script, including client device platform,
type and user agent.

Resolves: #256

Signed-off-by: Alan Jowett <alanjo@microsoft.com>
2020-03-11 09:13:55 +01:00

46 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
#echo $USERNAME : $REASON : $DEVICE
env >/tmp/out.$REASON.tmp
verify_env_set() {
if test -z "${!1}";then
echo "$1 environment variable was not set" > /tmp/out.$REASON.fail.tmp
exit 1
fi
}
verify_env_set "IP_REMOTE"
verify_env_set "REASON"
case "$REASON" in
connect)
verify_env_set "USERNAME"
verify_env_set "USER_AGENT"
verify_env_set "DEVICE"
verify_env_set "DEVICE_PLATFORM"
verify_env_set "DEVICE_TYPE"
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")
echo > host-update.ok
;;
esac
exit 0