/[smecontribs]/rpms/hylafax/contribs9/hylafax_init
ViewVC logotype

Contents of /rpms/hylafax/contribs9/hylafax_init

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations) (download)
Tue May 3 05:30:33 2016 UTC (8 years, 7 months ago) by unnilennium
Branch: MAIN
CVS Tags: HEAD
Initial import

1 #!/bin/sh
2 #
3 # chkconfig: 345 95 5
4 # description: Starts and stops the HylaFAX server and queue manager \
5 # used to provide FAX services
6 #
7
8 ### BEGIN INIT INFO
9 # Provides: hylafax
10 # Required-Start: $local_fs $network $syslog
11 # Should-Start: hfaxd faxd
12 # Required-Stop:
13 # Default-Start: 3 4 5
14 # Default-Stop: 0 1 2 6
15 # Short-Description: Starts and stops the HylaFAX
16 # Description: Starts and stops the HylaFAX server and queue manager \
17 # used to provide FAX services
18 ### END INIT INFO
19
20 return_success=
21 return_failure=
22
23 # Source function library.
24 if [ -f /etc/init.d/functions ] ; then
25 . /etc/init.d/functions
26 alias START_DAEMON=daemon
27 alias STATUS=status
28 alias ACTION=action
29 elif [ -f /etc/rc.d/init.d/functions ] ; then
30 . /etc/rc.d/init.d/functions
31 alias START_DAEMON=daemon
32 alias STATUS=status
33 alias ACTION=action
34 elif [ -f /lib/lsb/init-functions ]; then
35 . /lib/lsb/init-functions
36 alias START_DAEMON=start_daemon
37 alias STATUS=suse_status
38 alias ACTION=suse_action
39 return_success=$rc_done
40 return_failure=$rc_failed
41 else
42 exit 0
43 fi
44
45
46 # HylaFAX spool directory
47 if [ -d /var/spool/hylafax ]; then
48 SPOOL=/var/spool/hylafax
49 else
50 SPOOL=/var/spool/fax
51 fi
52
53 HFAXD_ARGS=
54 FAXQ_ARGS=
55
56 # Source HylaFAX init script configuration
57 if [ -f /etc/sysconfig/hylafax ] ; then
58 . /etc/sysconfig/hylafax
59 fi
60
61 # Put Extra args first as some may be needed before ports parameters
62 if [ -n "$HFAXD_EXTRA_ARGS" ] ; then
63 HFAXD_ARGS=$HFAXD_EXTRA_ARGS
64 fi
65
66 # Bind to a specific address
67 if [ -n "$HFAXD_LISTEN" ] ; then
68 HFAXD_ARGS="$HFAXD_ARGS -l $HFAXD_LISTEN"
69 fi
70
71 if [ "$HFAXD_OLD_PROTOCOL" = "yes" ] ; then
72 HFAXD_ARGS="$HFAXD_ARGS -o 4557"
73 fi
74
75 if [ -f "$SPOOL/etc/pagermap" ] ; then
76 HFAXD_ARGS="$HFAXD_ARGS -s snpp"
77 fi
78
79 HFAXD_ARGS="$HFAXD_ARGS -i hylafax"
80
81 if [ "$SPOOL" != "/var/spool/hylafax" ] ; then
82 HFAXD_ARGS="$HFAXD_ARGS -q $SPOOL"
83 FAXQ_ARGS="$FAXQ_ARGS -q $SPOOL"
84 fi
85
86 start() {
87 check_config || exit 1
88
89 echo -n "Starting HylaFAX queue manager (faxq): "
90 START_DAEMON /usr/sbin/faxq
91 RETVAL=$?
92 if [ $RETVAL -eq 0 ]; then
93 echo -e $return_success
94 else
95 echo -e $return_failure
96 fi
97
98 echo -n "Starting HylaFAX server (hfaxd): "
99 START_DAEMON /usr/sbin/hfaxd $HFAXD_ARGS
100 RETVAL2=$?
101 if [ $RETVAL2 -eq 0 ]; then
102 echo -e $return_success
103 else
104 echo -e $return_failure
105 fi
106
107 reset_faxgetty
108
109 [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && \
110 touch /var/lock/subsys/hylafax || RETVAL=1
111 return $RETVAL
112 }
113
114 stop() {
115 ACTION "Shutting down HylaFAX queue manager (faxq): " /usr/sbin/faxquit
116 RETVAL=$?
117
118 echo -n "Shutting down HylaFAX server (hfaxd): "
119 killproc hfaxd
120 RETVAL2=$?
121 if [ $RETVAL2 -eq 0 ]; then
122 echo -e $return_success
123 else
124 echo -e $return_failure
125 fi
126
127 [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && \
128 rm -f /var/lock/subsys/hylafax || RETVAL=1
129 return $RETVAL
130 }
131
132 restart() {
133 stop
134 start
135 }
136
137 suse_action() {
138 echo -n $1
139 $2
140 RETVAL=$?
141 if [ $RETVAL -eq 0 ]; then
142 echo -e $return_success
143 else
144 echo -e $return_failure
145 fi
146 return $RETVAL
147 }
148
149 suse_status() {
150 checkproc $1
151 rc_status -v
152 }
153
154 hfstatus() {
155 echo -n "HylaFAX client-server protocol server: "
156 STATUS hfaxd
157 echo -n "HylaFAX queue manager process: "
158 STATUS faxq
159 }
160
161 check_config() {
162 test -f $SPOOL/etc/setup.cache || {
163 cat<<-EOF
164
165 HylaFAX FATAL ERROR: $SPOOL/etc/setup.cache is missing!
166
167 The file $SPOOL/etc/setup.cache is not present.
168 This probably means the machine has not been setup using the
169 faxsetup(8C) command. Read the documentation on setting up
170 HylaFAX before you startup a server system.
171
172 EOF
173
174 exit 1
175 }
176 }
177
178 reset_faxgetty () {
179 pids=`pidofproc faxgetty`
180 if [ -n "$pids" ] && ps h $pids >/dev/null 2>&1; then
181 echo -n "Restarting HylaFAX modem manager (faxgetty):"
182 # will be respawned from /etc/inittab
183 killproc faxgetty
184 if [ $? -eq 0 ]; then
185 echo -e $return_success
186 else
187 echo -e $return_failure
188 fi
189 fi
190 }
191
192 case "$1" in
193 start)
194 start
195 ;;
196 stop)
197 stop
198 ;;
199 status)
200 hfstatus
201 ;;
202 restart|reload)
203 restart
204 ;;
205 condrestart)
206 [ -f /var/lock/subsys/hylafax ] && restart
207 ;;
208 *)
209 echo "Usage: $0 {start|stop|status|restart|reload|condrestart}"
210 exit 1
211 ;;
212 esac
213
214 exit $?
215

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed