aboutsummaryrefslogtreecommitdiff
path: root/net/openssh/files/sshd.init
diff options
context:
space:
mode:
Diffstat (limited to 'net/openssh/files/sshd.init')
-rw-r--r--net/openssh/files/sshd.init16
1 files changed, 7 insertions, 9 deletions
diff --git a/net/openssh/files/sshd.init b/net/openssh/files/sshd.init
index a75daae4c..f9292d954 100644
--- a/net/openssh/files/sshd.init
+++ b/net/openssh/files/sshd.init
@@ -8,7 +8,8 @@ USE_PROCD=1
PROG=/usr/sbin/sshd
start_service() {
- for type in rsa ecdsa ed25519; do {
+ for type in rsa ecdsa ed25519
+ do
# check for keys
key=/etc/ssh/ssh_host_${type}_key
[ ! -f $key ] && {
@@ -17,10 +18,10 @@ start_service() {
/usr/bin/ssh-keygen -N '' -t $type -f $key 2>&- >&-
}
}
- }; done
+ done
mkdir -m 0700 -p /var/empty
- local lport=`grep ^Port /etc/ssh/sshd_config | cut -d " " -f 2`
+ local lport=$(awk '/^Port / { print $2; exit }' /etc/ssh/sshd_config)
[ -z $lport ] && lport=22
procd_open_instance
@@ -31,16 +32,13 @@ start_service() {
shutdown() {
local pid
- local pids
- local pid_mine
stop
# kill active clients
- pid_mine="$$"
- pids="$(pidof sshd)"
- for pid in $pids; do
- [ "$pid" = "$pid_mine" ] && continue
+ for pid in $(pidof sshd)
+ do
+ [ "$pid" == "$$" ] && continue
[ -e "/proc/$pid/stat" ] && kill $pid
done
}