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
15 PURE_AUTH_SCRIPT=/etc/pure-ftpd/auth.script
16 PURE_AUTH_SOCKET=/var/run/pure-authd/socket
19 [ -f /etc/sysconfig/pure-ftpd ] && . /etc/sysconfig/pure-ftpd
21 # Check that networking is up.
22 if is_yes "${NETWORKING}"; then
23 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
24 msg_network_down pure-ftpd
32 # Check if the service is already running?
33 if [ ! -f /var/lock/subsys/pure-ftpd ]; then
35 if [ -x "$PURE_AUTH_SCRIPT" ]; then
37 msg_starting pure-authd
39 # 326/326 - authd/authd
41 mkdir -p /var/run/pure-authd
42 chown ftpauth:root /var/run/pure-authd
43 chmod 750 /var/run/pure-authd
45 daemon /usr/sbin/pure-authd --uid 326 --gid 326 --pid /var/run/pure-authd.pid \
46 --run "$PURE_AUTH_SCRIPT" --socket "$PURE_AUTH_SOCKET" --daemonize
48 [ $RETVAL -eq 0 ] && chown root:root "$PURE_AUTH_SOCKET" && chmod 700 "$PURE_AUTH_SOCKET"
50 if [ $RETVAL -eq 0 ]; then
51 msg_starting pure-ftpd
52 rm -f /var/run/pure-ftpd/client*
53 modprobe -s capability > /dev/null 2>&1
54 daemon /usr/sbin/pure-ftpd /etc/pure-ftpd/pureftpd.conf \
55 $([ "$PURE_AUTH" = "yes" ] && echo "-lextauth:$PURE_AUTH_SOCKET") \
59 if [ -n "$UPLOADSCRIPT" ]; then
60 msg_starting pure-uploadscript
61 UPLOADSCRIPTOPTS="-B -r $UPLOADSCRIPT"
62 [ -n "$UPLOADSCRIPT_UID" ] && UPLOADSCRIPTOPTS="$UPLOADSCRIPTOPTS -u $UPLOADSCRIPT_UID"
63 [ -n "$UPLOADSCRIPT_GID" ] && UPLOADSCRIPTOPTS="$UPLOADSCRIPTOPTS -g $UPLOADSCRIPT_GID"
64 daemon /usr/sbin/pure-uploadscript $UPLOADSCRIPTOPTS
65 RETVAL=$(($RETVAL+$?))
69 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/pure-ftpd
71 msg_already_running pure-ftpd
77 if [ -f /var/lock/subsys/pure-ftpd ]; then
78 if [ -n "$UPLOADSCRIPT" ]; then
79 msg_stopping pure-uploadscript
80 killproc pure-uploadscript
83 if [ -x "$PURE_AUTH_SCRIPT" -o -r /var/run/pure-authd.pid ]; then
84 msg_stopping pure-authd
88 msg_stopping pure-ftpd
91 rm -f /var/lock/subsys/pure-ftpd > /dev/null 2>&1
93 msg_not_running pure-ftpd
98 # See how we were called.
108 status pure-uploadscript
110 if [ $RETVAL -eq 0 ]; then
114 restart|force-reload)
119 msg_usage "$0 {start|stop|restart|force-reload|status}"