#! /bin/sh
#	$Id: hylafax.in,v 1.33 1996/06/26 14:58:03 sam Rel $
#
# Warning, this file was automatically created by the HylaFAX configure script
#
# HylaFAX Facsimile Software
#
# Copyright (c) 1990-1996 Sam Leffler
# Copyright (c) 1991-1996 Silicon Graphics, Inc.
# HylaFAX is a trademark of Silicon Graphics
# 
# Permission to use, copy, modify, distribute, and sell this software and 
# its documentation for any purpose is hereby granted without fee, provided
# that (i) the above copyright notices and this permission notice appear in
# all copies of the software and related documentation, and (ii) the names of
# Sam Leffler and Silicon Graphics may not be used in any advertising or
# publicity relating to the software without the specific, prior written
# permission of Sam Leffler and Silicon Graphics.
# 
# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
# 
# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
# OF THIS SOFTWARE.

#
# VERSION:	v4.0pl1
# DATE:		Fri Aug 15 16:03:03 MEST 1997
# TARGET:	i586-unknown-linux
#

#
# fax server control
#
# NB: This script assumes faxgetty processes are managed by init
#
SPOOL=/var/spool/fax

test -f $SPOOL/etc/setup.cache || {
    cat<<EOF

FATAL ERROR: $SPOOL/etc/setup.cache is missing!

The file $SPOOL/etc/setup.cache is not present.  This
probably means the machine has not been setup using the faxsetup(1M)
command.  Read the documentation on setting up HylaFAX before you
startup a server system.

EOF
    exit 1
}
. $SPOOL/etc/setup.cache

IS_ON=/etc/chkconfig		# NB: chkconfig is IRIX-specific
FAXQ=$SBIN/faxq
HFAXD=$LIBEXEC/hfaxd
FAXQUIT=$SBIN/faxquit
KILLALL=/sbin/killall
FAXPORT=hylafax			# designated port for new protocol
SNPPPORT=444			# official port for SNPP

if test ! -x $IS_ON ; then
    IS_ON=true
fi

if $IS_ON verbose ; then
    ECHO=echo
else		# For a quiet startup and shutdown
    ECHO=:
fi

#
# killall -SIGNAL process-name
#
# Emulate the necessary functionality if the
# killall program doesn't do the expected...
#
if ($KILLALL -l >/dev/null) 2>/dev/null; then
    killall()
    {
	$KILLALL $1 $2
    }
else
    killall()
    {
	# NB: ps ax should give an error on System V, so we try it first!
	pid="`ps ax 2>/dev/null | $AWK \"\
		/[\/ (]$2[ )]/	{print \\$1;}
		/[\/ ]$2\$/	{print \\$1;}\"`"
	test "$pid" ||
	    pid="`ps -e 2>/dev/null | $AWK \"/ $2[ ]*\$/ {print \\$1;}\"`"
	test "$pid" && kill $1 $pid; return
    }
fi

case $1 in
'start')
	if $IS_ON fax && test -x $FAXQ; then
	    killall -15 faxq
	    killall -15 hfaxd
	    $ECHO "HylaFAX:\c"
	    $FAXQ; $ECHO " faxq\c"
	    $HFAXD -i $FAXPORT -o 4557 -s $SNPPPORT
		$ECHO " hfaxd (w/ compatibility & SNPP)\c"
	    $ECHO "."
	fi
	;;
'stop')
	$ECHO "Stopping HylaFAX Servers."
	$FAXQUIT >/dev/null 2>&1
	killall -15 hfaxd
	;;
*)
	echo "usage: /etc/init.d/hylafax {start|stop}"
	;;
esac
