|
|
|
|
#!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
|
|
|
|
|
##
|
|
|
|
|
## rc.openssh -- Run-Commands
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
%config
|
|
|
|
|
openssh_enable="$openpkg_rc_def"
|
|
|
|
|
openssh_log_prolog="true"
|
|
|
|
|
openssh_log_epilog="true"
|
|
|
|
|
openssh_log_numfiles="10"
|
|
|
|
|
openssh_log_minsize="1M"
|
|
|
|
|
openssh_log_complevel="9"
|
|
|
|
|
|
|
|
|
|
%common
|
|
|
|
|
openssh_signal () {
|
|
|
|
|
openssh_pidfile="@l_prefix@/var/openssh/sshd.pid"
|
|
|
|
|
[ -f $openssh_pidfile ] && kill -$1 `cat $openssh_pidfile`
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
%status -p 200 -u @l_susr@ -o
|
|
|
|
|
openssh_usable="unknown"
|
|
|
|
|
openssh_active="no"
|
|
|
|
|
opServiceEnabled openssh && \
|
|
|
|
|
openssh_signal 0 && openssh_active="yes"
|
|
|
|
|
echo "openssh_enable=\"$openssh_enable\""
|
|
|
|
|
echo "openssh_usable=\"$openssh_usable\""
|
|
|
|
|
echo "openssh_active=\"$openssh_active\""
|
|
|
|
|
|
|
|
|
|
%start -p 200 -u @l_susr@
|
|
|
|
|
opServiceEnabled openssh || exit 0
|
|
|
|
|
@l_prefix@/bin/sshd
|
|
|
|
|
|
|
|
|
|
%stop -p 200 -u @l_susr@
|
|
|
|
|
opServiceEnabled openssh || exit 0
|
|
|
|
|
openssh_signal TERM
|
|
|
|
|
# sshd removes the pidfile itself
|
|
|
|
|
# rm -f $openssh_pidfile 2>/dev/null || true
|
|
|
|
|
|
|
|
|
|
%restart -u @l_susr@
|
|
|
|
|
opServiceEnabled openssh || exit 0
|
|
|
|
|
openssh_signal TERM
|
|
|
|
|
sleep 2
|
|
|
|
|
@l_prefix@/bin/sshd
|
|
|
|
|
|
|
|
|
|
%daily -u @l_susr@
|
|
|
|
|
opServiceEnabled openssh || exit 0
|
|
|
|
|
opTmpDirGen openssh
|
|
|
|
|
opTmpDirFile openssh hint hintfile
|
|
|
|
|
prolog="true"
|
|
|
|
|
if [ ".$openssh_log_prolog" != . ]; then
|
|
|
|
|
prolog="$prolog; $openssh_log_prolog"
|
|
|
|
|
fi
|
|
|
|
|
epilog="echo 'epilog' >$hintfile"
|
|
|
|
|
if [ ".$openssh_log_epilog" != . ]; then
|
|
|
|
|
epilog="$epilog; $openssh_log_epilog"
|
|
|
|
|
fi
|
|
|
|
|
shtool rotate -f \
|
|
|
|
|
-n${openssh_log_numfiles} -s${openssh_log_minsize} -d \
|
|
|
|
|
-z${openssh_log_complevel} -o@l_susr@ -g@l_sgrp@ -m644 \
|
|
|
|
|
-P "${openssh_log_prolog}" \
|
|
|
|
|
-E "${openssh_log_epilog}" \
|
|
|
|
|
@l_prefix@/var/openssh/openssh.log
|
|
|
|
|
if [ ".`cat $hintfile`" = ".epilog" ]; then
|
|
|
|
|
openssh_signal TERM
|
|
|
|
|
sleep 2
|
|
|
|
|
@l_prefix@/bin/sshd
|
|
|
|
|
fi
|
|
|
|
|
opTmpDirDel openssh
|
|
|
|
|
|