]> git.pld-linux.org Git - packages/hylafax.git/blame - hylafax-init
- fix awk paths
[packages/hylafax.git] / hylafax-init
CommitLineData
ec4247b5
TO
1#! /bin/sh
2#
a5516e51 3# hylafax, v 1.2 2001/01/10 Christian Zoffoli <czoffoli@linux-mandrake.com>
ec4247b5
TO
4#
5# chkconfig: 12345 97 05
6# description: HylaFAX(tm) is a sophisticated enterprise-strength fax \
7# package for class 1 and 2 fax modems on unix systems. \
8# This init script is the preferred way to start HylaFAX,\
9# but does not, by default, activate any modems. Consult \
a5516e51 10# the faxgetty(8) and faxmodem(8) man pages for more info.
ec4247b5
TO
11#
12
13SPOOL=/var/spool/fax
14
15# Source networking configuration.
16. /etc/sysconfig/network
17
18# Check that networking is up.
19[ ${NETWORKING} = "no" ] && exit 0
20
21# Source function library.
a5516e51 22. /etc/rc.d/init.d/functions
ec4247b5
TO
23
24checkvar() {
43bbc9af
ER
25 if [ ! "$1" ]; then
26 echo -n -e "HylaFAX ERROR (old setup.cache) please run faxsetup -server\n"
ec4247b5
TO
27 exit 1
28 fi
29
43bbc9af 30 if [ $1 = "yes" -o $1 = "1" ]; then
ec4247b5
TO
31 return 0
32 fi
33 return 1
34}
35
36check_config() {
37 test -f $SPOOL/etc/setup.cache || {
38 cat<<-EOF
a5516e51 39
ec4247b5 40 HylaFAX FATAL ERROR: $SPOOL/etc/setup.cache is missing!
a5516e51
ER
41
42 The file $SPOOL/etc/setup.cache is not present.
43 This probably means the machine has not been setup using the
43bbc9af 44 faxsetup(1M) command. Read the documentation on setting up
ec4247b5 45 HylaFAX before you startup a server system.
a5516e51 46
ec4247b5 47 EOF
a5516e51
ER
48
49 return 1
ec4247b5
TO
50 }
51
52 # Loading Config
53 PATH_SAVE=$PATH
54 . $SPOOL/etc/setup.cache
55 PATH=$PATH_SAVE:$PATH
56
57 return 0
58}
59
60start() {
ec4247b5
TO
61 local RETVAL2=0
62
63 OPTS="-i hylafax"
43bbc9af 64 if checkvar "$HFAXD_OLD_PROTOCOL"; then
ec4247b5
TO
65 OPTS="$OPTS -o 4557"
66 OUT=" OLD Protocol"
67 fi
68
43bbc9af 69 if checkvar "$HFAXD_SNPP_SERVER"; then
ec4247b5 70 OPTS="$OPTS -s snpp"
43bbc9af 71 if [ "$OUT" ]; then
ec4247b5
TO
72 OUT="$OUT - "
73 fi
74 OUT="$OUT SNPP"
75 fi
76
43bbc9af 77 if [ "$OUT" ]; then
ec4247b5
TO
78 OUT="( $OUT )"
79 fi
80
43bbc9af 81 if checkvar "$FAXQ_SERVER"; then
621586c3 82 msg_starting "HylaFAX queue manager"
ec4247b5
TO
83 daemon faxq
84 RETVAL=$?
ec4247b5
TO
85 fi
86
43bbc9af 87 if checkvar "$HFAXD_SERVER"; then
a5516e51 88 msg="HylaFAX server"
621586c3
AM
89 [ -n "$OUT" ] && msg="$msg $OUT"
90 msg_starting "HylaFAX server"
ec4247b5
TO
91 daemon hfaxd $OPTS
92 RETVAL2=$?
ec4247b5
TO
93 fi
94
621586c3 95 [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && touch /var/lock/subsys/hylafax || RETVAL=1
ec4247b5
TO
96}
97
98stop() {
43bbc9af 99 # stop can't return failure by LSB. so make these vars local
ec4247b5
TO
100 local RETVAL=0
101 local RETVAL2=0
102
a5516e51 103 msg_stopping "HylaFAX queue manager"
621586c3 104 daemon /usr/sbin/faxquit
ec4247b5 105 RETVAL=$?
ec4247b5 106
621586c3 107 msg_stopping "HylaFAX server"
ec4247b5
TO
108 killproc hfaxd
109 RETVAL2=$?
a5516e51 110
43bbc9af 111 [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/hylafax
ec4247b5
TO
112}
113
114faxgettyreset() {
a5516e51
ER
115 if pidofproc faxgetty > /dev/null; then
116 msg_starting "FaxGetty restart process"
621586c3
AM
117 killproc faxgetty
118 msg_starting "FaxGetty restart process (init reload)"
119 daemon init q
ec4247b5
TO
120 fi
121
122 return 0
123}
124
125restart() {
126 stop
127 start
ec4247b5
TO
128 faxgettyreset
129}
130
c79d82c1 131hstatus() {
ec4247b5 132 status hfaxd
a5516e51 133 RETVAL=$?
ec4247b5 134 status faxq
a5516e51 135 return $(($RETVAL + $?))
ec4247b5
TO
136}
137
ec4247b5
TO
138check_config || exit 1
139
a5516e51 140RETVAL=0
ec4247b5
TO
141case "$1" in
142 start)
143 start
144 ;;
145 stop)
146 stop
147 ;;
148 restart|reload)
149 restart
150 ;;
151 status)
c79d82c1 152 hstatus
a5516e51 153 exit $?
ec4247b5
TO
154 ;;
155 condrestart)
156 [ -f /var/lock/subsys/hylafax ] && restart
157 ;;
158 faxgettyreset)
159 faxgettyreset
160 ;;
161 *)
162 echo "Usage: $0 { start | stop | status | restart | condrestart | faxgettyreset }"
163 exit 1
164 ;;
165esac
166
167exit 0
This page took 0.149559 seconds and 4 git commands to generate.