]> git.pld-linux.org Git - packages/pure-ftpd.git/blame - pure-ftpd.init
- addes uploadscript feature support
[packages/pure-ftpd.git] / pure-ftpd.init
CommitLineData
e61da7a2
AM
1#!/bin/sh
2#
3# pureftpd PureFTPD server
4#
5# chkconfig: 345 85 15
6# description: PureFTPD is fast, production-quality, standard-conformant FTP server
7#
8
9# Source function library
10. /etc/rc.d/init.d/functions
11
12# Get network config
13. /etc/sysconfig/network
14
15# Get service config
16[ -f /etc/sysconfig/pure-ftpd ] && . /etc/sysconfig/pure-ftpd
17
2b83cc9c 18# Check for available parsers
19if [ -x /usr/sbin/pure-config ] ; then
20 CFG=/usr/sbin/pure-config
81c4c6f8 21elif [ -x /usr/sbin/pure-config.pl -a -x /usr/bin/perl ] ; then
2b83cc9c 22 CFG=/usr/sbin/pure-config.pl
23elif [ -x /usr/sbin/pure-config.py -a -x /usr/bin/python ] ; then
24 CFG=/usr/sbin/pure-config.py
25else
37028358 26 echo 'Error: pure-config{,.pl,.py} not found. Giving up.'
2b83cc9c 27 exit 1
81c4c6f8 28fi
2b83cc9c 29
e61da7a2 30# Check that networking is up.
8d60cf00 31if is_yes "${NETWORKING}"; then
8e007219 32 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
8d60cf00 33 msg_network_down pure-ftpd
34 exit 1
35 fi
36else
37 exit 0
e61da7a2
AM
38fi
39
40382493 40RETVAL=0
e61da7a2
AM
41# See how we were called.
42case "$1" in
43 start)
44 # Check if the service is already running?
8d60cf00 45 if [ ! -f /var/lock/subsys/pure-ftpd ]; then
e61da7a2 46 msg_starting pure-ftpd
469b4406 47 rm -f /var/run/pure-ftpd/client*
2b83cc9c 48 if [ x"$CFG" = "x/usr/sbin/pure-config" ] ; then
49 daemon /usr/sbin/pure-ftpd \
50 $(/usr/sbin/pure-config -f /etc/ftpd/pureftpd.conf) \
51 --daemonize
52 RETVAL=$?
53 else
54 daemon $CFG /etc/ftpd/pureftpd.conf --daemonize
55 RETVAL=$?
56 fi
b99c8afc 57
58 if [ -n "$UPLOADSCRIPT" ]; then
59 msg_starting pure-uploadscript
60 UPLOADSCRIPTOPTS="-B -r $UPLOADSCRIPT"
61 [ -n "$UPLOADSCRIPT_UID" ] && UPLOADSCRIPTOPTS="$UPLOADSCRIPTOPTS -u $UPLOADSCRIPT_UID"
62 [ -n "$UPLOADSCRIPT_GID" ] && UPLOADSCRIPTOPTS="$UPLOADSCRIPTOPTS -g $UPLOADSCRIPT_GID"
63 daemon /usr/sbin/pure-uploadscript $UPLOADSCRIPTOPTS
64 RETVAL=$(($RETVAL+$?))
65 fi
66
8d60cf00 67 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/pure-ftpd
e61da7a2 68 else
8d60cf00 69 msg_already_running pure-ftpd
e61da7a2
AM
70 fi
71 ;;
72 stop)
8d60cf00 73 # Stop daemons.
e61da7a2 74 if [ -f /var/lock/subsys/pure-ftpd ]; then
b99c8afc 75 if [ -n "$UPLOADSCRIPT" ]; then
76 msg_stopping pure-uploadscript
77 killproc pure-uploadscript
78 fi
79
8d60cf00 80 msg_stopping pure-ftpd
81 killproc pure-ftpd
b99c8afc 82
8d60cf00 83 rm -f /var/lock/subsys/pure-ftpd > /dev/null 2>&1
84 else
85 msg_not_running pure-ftpd
e61da7a2
AM
86 fi
87 ;;
88 status)
89 status pure-ftpd
b99c8afc 90 status pure-uploadscript
e61da7a2
AM
91 RETVAL=$?
92 if [ $RETVAL -eq 0 ]; then
8d60cf00 93 pure-ftpwho
e61da7a2 94 fi
e61da7a2 95 ;;
40382493 96 restart|force-reload)
e61da7a2
AM
97 $0 stop
98 $0 start
40382493 99 exit $?
e61da7a2
AM
100 ;;
101 *)
40382493 102 msg_usage "$0 {start|stop|restart|force-reload|status}"
103 exit 3
e61da7a2
AM
104 ;;
105esac
106
107exit $RETVAL
This page took 0.064094 seconds and 4 git commands to generate.