summaryrefslogtreecommitdiff
path: root/package/openssh/files/openssh.init
diff options
context:
space:
mode:
authorThorsten Glaser <tg@mirbsd.org>2014-05-04 00:11:56 +0000
committerWaldemar Brodkorb <wbx@openadk.org>2014-05-04 02:21:31 +0200
commitb7856cc45d5bd5485c805f028722a1961c83a23a (patch)
tree498556c3513f8da6ee9deb79ed1339fb9d44eade /package/openssh/files/openssh.init
parentfbfcdd5f26b463f05f51b5004ff2ded269e57e77 (diff)
rename init scripts so their basename matches their enabler variable
Diffstat (limited to 'package/openssh/files/openssh.init')
-rw-r--r--package/openssh/files/openssh.init50
1 files changed, 50 insertions, 0 deletions
diff --git a/package/openssh/files/openssh.init b/package/openssh/files/openssh.init
new file mode 100644
index 000000000..d9adb5f25
--- /dev/null
+++ b/package/openssh/files/openssh.init
@@ -0,0 +1,50 @@
+#!/bin/sh
+#PKG openssh-server
+#INIT 50
+. /etc/rc.conf
+
+case $1 in
+autostop) ;;
+autostart)
+ test x"${openssh:-NO}" = x"NO" && exit 0
+ grep "^dropbear" /etc/rc.conf >/dev/null 2>&1 || dropbear=NO
+ if [[ $openssh = AUTO && $dropbear != NO ]]; then
+ echo openssh not starting: set to AUTO and dropbear is enabled
+ exit 0
+ fi
+ test x"$openssh" = x"DAEMON" && test -x /bin/mksh && exec mksh -T- $0 start
+ exec sh $0 start
+ ;;
+start)
+ if [[ ! -s /etc/ssh/ssh_host_rsa_key ]]; then
+ mkdir -p /etc/ssh
+ if [[ ! -x /usr/bin/ssh-keygen ]]; then
+ echo "openssh not starting: SSH private key missing"
+ exit 0
+ fi
+ echo "openssh: generating SSH private key (RSA)"
+ /usr/bin/ssh-keygen -N '' -t rsa -f /etc/ssh/ssh_host_rsa_key
+ rv=$?
+ echo openssh: key generation exited with code $rv
+ [[ $rv = 0 && -s /etc/ssh/ssh_host_rsa_key ]] || exit 1
+ fi
+ mkdir -p /var/run/sshd
+ mkdir -p /var/empty
+ touch /var/log/btmp && chmod 600 /var/log/btmp
+ /usr/sbin/sshd
+ ;;
+stop)
+ if [ -e /var/run/sshd.pid ]; then
+ kill $(cat /var/run/sshd.pid)
+ fi
+ ;;
+restart)
+ sh $0 stop
+ sh $0 start
+ ;;
+*)
+ echo "Usage: $0 {start | stop | restart}"
+ exit 1
+ ;;
+esac
+exit $?