|
|
@@ -0,0 +1,105 @@
|
|
|
+#!@l_prefix@/lib/rpm/bash @l_prefix@/etc/rc
|
|
|
+##
|
|
|
+## rc.lmtp2nntp -- Run-Commands for LMTP2NNTP Daemon
|
|
|
+##
|
|
|
+
|
|
|
+%config
|
|
|
+ # public (user-adjustable) options
|
|
|
+ lmtp2nntp_enable="yes"
|
|
|
+
|
|
|
+ lmtp2nntp_nodename=""
|
|
|
+ lmtp2nntp_flags=""
|
|
|
+
|
|
|
+ lmtp2nntp_lmtp_bind="@l_prefix@/var/lmtp2nntp/lmtp2nntp.socket"
|
|
|
+ lmtp2nntp_lmtp_groupmode="envelope"
|
|
|
+ lmtp2nntp_lmtp_acl_connect=""
|
|
|
+ lmtp2nntp_lmtp_acl_mailfrom=""
|
|
|
+ lmtp2nntp_lmtp_acl_mailmaxsize="8388608"
|
|
|
+ lmtp2nntp_lmtp_acl_newsgroups="*"
|
|
|
+ lmtp2nntp_lmtp_timeouts="lmtp:accept=0,lmtp:read=10,lmtp:write=10"
|
|
|
+
|
|
|
+ lmtp2nntp_nntp_bind=""
|
|
|
+ lmtp2nntp_nntp_servers="news"
|
|
|
+ lmtp2nntp_nntp_operationmode="post"
|
|
|
+ lmtp2nntp_nntp_timeouts="nntp:connect=360,nntp:read=60,nntp:write=60"
|
|
|
+
|
|
|
+ lmtp2nntp_log_level="info"
|
|
|
+ lmtp2nntp_log_prolog="true"
|
|
|
+ lmtp2nntp_log_epilog="true"
|
|
|
+ lmtp2nntp_log_numfiles="10"
|
|
|
+ lmtp2nntp_log_minsize="1M"
|
|
|
+ lmtp2nntp_log_complevel="9"
|
|
|
+
|
|
|
+%common
|
|
|
+ # private (not-adjustable) options
|
|
|
+ lmtp2nntp_run_cmd="@l_prefix@/sbin/lmtp2nntp"
|
|
|
+ lmtp2nntp_run_uid="@l_fsusr@"
|
|
|
+ lmtp2nntp_log_file="@l_prefix@/var/lmtp2nntp/lmtp2nntp.log"
|
|
|
+ lmtp2nntp_pid_file="@l_prefix@/var/lmtp2nntp/lmtp2nntp.pid"
|
|
|
+
|
|
|
+ # determine start command
|
|
|
+ cmd_start="$lmtp2nntp_run_cmd"
|
|
|
+ cmd_start="$cmd_start -P $lmtp2nntp_pid_file"
|
|
|
+ cmd_start="$cmd_start -u $lmtp2nntp_run_uid"
|
|
|
+ cmd_start="$cmd_start -D"
|
|
|
+ if [ ".$lmtp2nntp_nodename" != . ]; then
|
|
|
+ cmd_start="$cmd_start -n \"$lmtp2nntp_nodename\""
|
|
|
+ fi
|
|
|
+ if [ ".$lmtp2nntp_lmtp_acl_connect" != . ]; then
|
|
|
+ cmd_start="$cmd_start -a \"$lmtp2nntp_lmtp_acl_connect\""
|
|
|
+ fi
|
|
|
+ if [ ".$lmtp2nntp_lmtp_acl_mailfrom" != . ]; then
|
|
|
+ cmd_start="$cmd_start -m \"$lmtp2nntp_lmtp_acl_mailfrom\""
|
|
|
+ fi
|
|
|
+ cmd_start="$cmd_start -b \"$lmtp2nntp_lmtp_bind\""
|
|
|
+ cmd_start="$cmd_start -g \"$lmtp2nntp_lmtp_groupmode\""
|
|
|
+ cmd_start="$cmd_start -s \"$lmtp2nntp_lmtp_acl_mailmaxsize\""
|
|
|
+ cmd_start="$cmd_start -t \"$lmtp2nntp_lmtp_timeouts\""
|
|
|
+ if [ ".$lmtp2nntp_nntp_bind" != . ]; then
|
|
|
+ cmd_start="$cmd_start -c \"$lmtp2nntp_nntp_bind\""
|
|
|
+ fi
|
|
|
+ cmd_start="$cmd_start -d \"$lmtp2nntp_nntp_servers\""
|
|
|
+ cmd_start="$cmd_start -o \"$lmtp2nntp_nntp_operationmode\""
|
|
|
+ cmd_start="$cmd_start -t \"$lmtp2nntp_nntp_timeouts\""
|
|
|
+ cmd_start="$cmd_start -l \"$lmtp2nntp_log_level:$lmtp2nntp_log_file\""
|
|
|
+ if [ ".$lmtp2nntp_flags" != . ]; then
|
|
|
+ cmd_start="$cmd_start $lmtp2nntp_flags"
|
|
|
+ fi
|
|
|
+ cmd_start="$cmd_start \"$lmtp2nntp_lmtp_acl_newsgroups\""
|
|
|
+
|
|
|
+ # determine stop command
|
|
|
+ cmd_stop="$lmtp2nntp_run_cmd"
|
|
|
+ cmd_stop="$cmd_stop -P $lmtp2nntp_pid_file"
|
|
|
+ cmd_stop="$cmd_stop -K"
|
|
|
+
|
|
|
+%start -p 200 -u root
|
|
|
+ opServiceEnabled lmtp2nntp || exit 0
|
|
|
+ eval $cmd_start
|
|
|
+
|
|
|
+%stop -p 200 -u root
|
|
|
+ opServiceEnabled lmtp2nntp || exit 0
|
|
|
+ eval $cmd_stop
|
|
|
+
|
|
|
+%restart -u root
|
|
|
+ opServiceEnabled lmtp2nntp || exit 0
|
|
|
+ $cmd_stop
|
|
|
+ sleep 1
|
|
|
+ $cmd_start
|
|
|
+
|
|
|
+%daily -u root
|
|
|
+ opServiceEnabled lmtp2nntp || exit 0
|
|
|
+ opTmpDirGen lmtp2nntp
|
|
|
+ opTmpDirFile lmtp2nntp hint hintfile
|
|
|
+ lmtp2nntp_log_epilog="echo 'epilog' >$hintfile; $lmtp2nntp_log_epilog"
|
|
|
+ shtool rotate -f \
|
|
|
+ -n ${lmtp2nntp_log_numfiles} -s ${lmtp2nntp_log_minsize} -d \
|
|
|
+ -z ${lmtp2nntp_log_complevel} -o @l_fsusr@ -o @l_fsgrp@ -m 644 \
|
|
|
+ -P "$lmtp2nntp_log_prolog" -E "$lmtp2nntp_log_epilog" \
|
|
|
+ $lmtp2nntp_logfile
|
|
|
+ if [ ".`cat $hintfile`" = ".epilog" ]; then
|
|
|
+ $cmd_stop
|
|
|
+ sleep 1
|
|
|
+ $cmd_start
|
|
|
+ fi
|
|
|
+ opTmpDirDel lmtp2nntp
|
|
|
+
|