diff options
Diffstat (limited to 'debian/openssh-server.ssh.runscript')
-rw-r--r-- | debian/openssh-server.ssh.runscript/finish | 16 | ||||
-rw-r--r-- | debian/openssh-server.ssh.runscript/run | 20 |
2 files changed, 36 insertions, 0 deletions
diff --git a/debian/openssh-server.ssh.runscript/finish b/debian/openssh-server.ssh.runscript/finish new file mode 100644 index 000000000..7e29ef1db --- /dev/null +++ b/debian/openssh-server.ssh.runscript/finish | |||
@@ -0,0 +1,16 @@ | |||
1 | #!/bin/sh | ||
2 | set -e | ||
3 | |||
4 | NAME=ssh | ||
5 | |||
6 | [ $1 = -1 ] && echo "runsv: ERROR in $NAME: unexpected error or wrong sh syntax" | ||
7 | # no need to stop the service here, runsv will stop trying after the first attempt | ||
8 | |||
9 | [ $1 = 161 ] && echo "runsv: ERROR $1 in $NAME: disabled by local settings" \ | ||
10 | && sv d $(dirname $0) && exit 0 | ||
11 | |||
12 | [ $1 = 162 ] && echo "runsv: ERROR $1 in $NAME: configtest or early setup failed" \ | ||
13 | && sv d $(dirname $0) && exit 0 | ||
14 | |||
15 | echo "$NAME Stopped" | ||
16 | |||
diff --git a/debian/openssh-server.ssh.runscript/run b/debian/openssh-server.ssh.runscript/run new file mode 100644 index 000000000..1d0524502 --- /dev/null +++ b/debian/openssh-server.ssh.runscript/run | |||
@@ -0,0 +1,20 @@ | |||
1 | #!/usr/bin/env /lib/runit/invoke-run | ||
2 | set -e | ||
3 | |||
4 | NAME="ssh" | ||
5 | |||
6 | sv start auditd || sv check auditd || true | ||
7 | |||
8 | # don't start if 'sshd_not_to_be_run' exists | ||
9 | test -e /etc/ssh/sshd_not_to_be_run && exit 161 | ||
10 | |||
11 | #Create /run/sshd | ||
12 | test -d /run/sshd || mkdir /run/sshd && chmod 0755 /run/sshd | ||
13 | |||
14 | exec 2>&1 | ||
15 | |||
16 | #Config test | ||
17 | /usr/sbin/sshd -t || exit 162 | ||
18 | |||
19 | echo "Starting $NAME..." | ||
20 | exec /usr/sbin/sshd -D -e $SSHD_OPTS | ||