diff options
Diffstat (limited to 'testing/tinyssh/tinyssh.initd')
-rw-r--r-- | testing/tinyssh/tinyssh.initd | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/testing/tinyssh/tinyssh.initd b/testing/tinyssh/tinyssh.initd new file mode 100644 index 0000000000..364ffb21c5 --- /dev/null +++ b/testing/tinyssh/tinyssh.initd @@ -0,0 +1,43 @@ +#!/sbin/openrc-run +# Alpine Linux init.d for TinySSH +# Copyright 2015 Stuart Cardall (developer@it-offshore.co.uk) +# Distributed under the terms of the GNU General Public License, v2 or later # + +name=tinysshd +daemon=/usr/sbin/$name +keygen=$daemon-makekey +CONFDIR=${CONFDIR:-/etc/tinyssh} +keydir=${CONFDIR}/sshkeys +OPTIONS=${OPTIONS:-\-v -l} +PORT=${PORT:-22} +pidfile=/var/run/$name.pid +server_opts="-HRDl0 0.0.0.0 ${PORT} $daemon ${OPTIONS} $keydir" + +depend() { + use net + after logger firewall +} + +checkconfig() { + checkpath --directory ${CONFDIR} + eval $keygen $keydir 2>/dev/null + # tinyssh also runs from inetd without tcpserver + if [ ! -f /usr/bin/tcpserver ]; then + apk add --quiet ucspi-tcp + fi +} + +start() { + checkconfig + ebegin "Starting ${name}" + start-stop-daemon --start --make-pidfile --background --pidfile $pidfile \ + --exec tcpserver -- $server_opts + eend $? +} + +stop() { + ebegin "Stopping ${name}" + start-stop-daemon --stop --quiet \ + --pidfile $pidfile + eend $? +} |