#!/bin/sh #1.2 # # $FreeBSD: tags/RELEASE_12_0_0/ftp/pure-ftpd/files/pure-ftpd.in 430884 2017-01-08 20:42:47Z sunpoet $ # # PROVIDE: pureftpd # REQUIRE: NETWORKING SERVERS # BEFORE: DAEMON # KEYWORD: shutdown # Add the following lines to /etc/rc.conf to enable pure-ftpd: # # pureftpd_enable="yes" # pureftpd_flags="" # # Add the following lines to /etc/rc.conf to enable pure-authd daemon: # # pureftpd_authd_enable="yes" # pureftpd_authdscript="/full/path/to/auth_script" # pureftpd_authsocket="/var/run/ftpd.sock" # # Add the following lines to /etc/rc.conf to enable uploadscript daemon: # # pureftpd_upload_enable="yes" # pureftpd_uploadscript="/full/path/to/upload_script" . /etc/rc.subr LOG=/var/log/pureftpd.log DB=/etc/pureftpd.pdb OPTIONS="-B -A -C 15 -E -H -k 99 -L 10000:8 -O stats:${LOG} -l puredb:${DB} -p 35000:35999 -u 99 -U 133:022 -w -Z" OPTIONS="${OPTIONS} -Y 1 -J -S:HIGH:MEDIUM:+TLSv1:!SSLv2:+SSLv3 --extcert /var/run/pure-certd.sock" CERTD_PID=/var/run/pure-certd.pid CERTD_SOCK=/var/run/pure-certd.sock UPLOAD_PID=/var/run/pure-uploadscript.pid if [ -e /usr/local/bin/pureftpd_uploadscan.sh ]; then OPTIONS="-o ${OPTIONS}" fi name=pureftpd rcvar=pureftpd_enable load_rc_config $name command=/usr/sbin/pure-ftpd command_args="${OPTIONS}" procname=pure-ftpd pureftpd_enable=${pureftpd_enable:-"yes"} pureftpd_pidfile=${pureftpd_pidfile:-"/var/run/pure-ftpd.pid"} start_postcmd=start_postcmd stop_postcmd=stop_postcmd start_postcmd() { if [ -e /usr/local/bin/pureftpd_uploadscan.sh ]; then /usr/sbin/pure-uploadscript -B -p ${UPLOAD_PID} -r /usr/local/bin/pureftpd_uploadscan.sh > /dev/null 2>&1 fi if [ -e /usr/local/bin/pureftpd_sni.sh ]; then /usr/sbin/pure-certd -B -p ${CERTD_PID} -r /usr/local/bin/pureftpd_sni.sh -s ${CERTD_SOCK} > /dev/null 2>&1 fi } stop_postcmd() { if [ -s /usr/sbin/pure-uploadscript ] && [ -s ${UPLOAD_PID} ]; then kill `cat ${UPLOAD_PID}` > /dev/null 2>&1 fi if [ -s /usr/sbin/pure-certd ]; then kill -9 `cat ${CERTD_PID}` > /dev/null 2>&1 fi } run_rc_command "$1"