3 # pureftpd PureFTPD server
6 # description: PureFTPD is fast, production-quality, standard-conformant FTP server
9 # Source function library
10 . /etc/rc.d/init.d/functions
13 . /etc/sysconfig/network
16 [ -f /etc/sysconfig/pure-ftpd ] && . /etc/sysconfig/pure-ftpd
18 # Check for available parsers
19 if [ -x /usr/sbin/pure-config ] ; then
20 CFG=/usr/sbin/pure-config
21 elif [ -x /usr/sbin/pure-config.pl -a -x /usr/bin/perl ] ; then
22 CFG=/usr/sbin/pure-config.pl
23 elif [ -x /usr/sbin/pure-config.py -a -x /usr/bin/python ] ; then
24 CFG=/usr/sbin/pure-config.py
26 echo 'Error: pure-config{,.pl,.py} not found. Giving up.'
30 # Check that networking is up.
31 if is_yes "${NETWORKING}"; then
32 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
33 msg_network_down pure-ftpd
41 # Check if the service is already running?
42 if [ ! -f /var/lock/subsys/pure-ftpd ]; then
43 msg_starting pure-ftpd
44 rm -f /var/run/pure-ftpd/client*
45 if [ x"$CFG" = "x/usr/sbin/pure-config" ] ; then
46 daemon /usr/sbin/pure-ftpd \
47 $(/usr/sbin/pure-config -f /etc/ftpd/pureftpd.conf) \
51 daemon $CFG /etc/ftpd/pureftpd.conf --daemonize
55 if [ -n "$UPLOADSCRIPT" ]; then
56 msg_starting pure-uploadscript
57 UPLOADSCRIPTOPTS="-B -r $UPLOADSCRIPT"
58 [ -n "$UPLOADSCRIPT_UID" ] && UPLOADSCRIPTOPTS="$UPLOADSCRIPTOPTS -u $UPLOADSCRIPT_UID"
59 [ -n "$UPLOADSCRIPT_GID" ] && UPLOADSCRIPTOPTS="$UPLOADSCRIPTOPTS -g $UPLOADSCRIPT_GID"
60 daemon /usr/sbin/pure-uploadscript $UPLOADSCRIPTOPTS
61 RETVAL=$(($RETVAL+$?))
64 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/pure-ftpd
66 msg_already_running pure-ftpd
72 if [ -f /var/lock/subsys/pure-ftpd ]; then
73 if [ -n "$UPLOADSCRIPT" ]; then
74 msg_stopping pure-uploadscript
75 killproc pure-uploadscript
78 msg_stopping pure-ftpd
81 rm -f /var/lock/subsys/pure-ftpd > /dev/null 2>&1
83 msg_not_running pure-ftpd
88 # See how we were called.
98 status pure-uploadscript
100 if [ $RETVAL -eq 0 ]; then
104 restart|force-reload)
109 msg_usage "$0 {start|stop|restart|force-reload|status}"