#!/bin/sh -e
#
# Test if the xfs server is working.

if test -r /etc/debian-edu/config ; then
    . /etc/debian-edu/config
fi

# Standalone Main-Server do not install xfs
if [ "$PROFILE" = Main-Server ] ; then
    exit 0
fi

# Check if a deb package is installed.  Return true if it is, and
# false if it isn't.
deb_installed() {
    RET=$( dpkg -s $1 2>/dev/null | awk '/Status\:/ {print $4}' )
    if [ "$RET" = "installed" ] ; then
        true
    else
        false
    fi
}

# Only test if xfs is installed
if  deb_installed xfs ; then
    :
else
    echo "info: $0: xfs is not installed"
    exit 0
fi

if pidof xfs > /dev/null ; then
    echo "success: $0: xfs is running."
else
    echo "error: $0: xfs is not running."
    exit 1
fi

if echo "$PROFILE" | egrep -q 'Thin-Client-Server' ; then
    port=font-service
    proto=tcp

    if netstat -a 2>&1 | grep ":$port " | grep -q "^$proto" ; then
        echo "success: $0: xfs server is listening on $port/$proto."
    else
        echo "error: $0: xfs server is not listening on $port/$proto."
        exit 1
    fi
fi

exit 0
