sshd revision 1.28
11.1Slukem#!/bin/sh 21.1Slukem# 31.28Sjmcneill# $NetBSD: sshd,v 1.28 2018/05/26 00:17:54 jmcneill Exp $ 41.5Sjwise# 51.1Slukem 61.6Slukem# PROVIDE: sshd 71.6Slukem# REQUIRE: LOGIN 81.1Slukem 91.20Smycroft$_rc_subr_loaded . /etc/rc.subr 101.1Slukem 111.1Slukemname="sshd" 121.8Slukemrcvar=$name 131.6Slukemcommand="/usr/sbin/${name}" 141.7Slukempidfile="/var/run/${name}.pid" 151.18Slukemrequired_files="/etc/ssh/sshd_config" 161.7Slukemextra_commands="keygen reload" 171.3Sjwise 181.6Slukemsshd_keygen() 191.6Slukem{ 201.23Schristos( 211.23Schristos keygen="/usr/bin/ssh-keygen" 221.11Slukem umask 022 231.23Schristos while read type bits filename version name; do 241.23Schristos f="/etc/ssh/$filename" 251.23Schristos if [ -f "$f" ]; then 261.27Schristos continue 271.23Schristos fi 281.27Schristos case "${bits}" in 291.27Schristos -1) bitarg=;; 301.27Schristos 0) bitarg="${ssh_keygen_flags}";; 311.27Schristos *) bitarg="-b ${bits}";; 321.27Schristos esac 331.28Sjmcneill "${keygen}" -t "${type}" ${bitarg} -f "${f}" -N '' -q && \ 341.28Sjmcneill printf "ssh-keygen: " && "${keygen}" -f "${f}" -l 351.23Schristos done << _EOF 361.23Schristosdsa 1024 ssh_host_dsa_key 2 DSA 371.23Schristosecdsa 521 ssh_host_ecdsa_key 1 ECDSA 381.23Schristosed25519 -1 ssh_host_ed25519_key 1 ED25519 391.23Schristosrsa 0 ssh_host_rsa_key 2 RSA 401.26Schristosxmss 0 ssh_host_xmss_key 1 XMSS 411.23Schristos_EOF 421.23Schristos) 431.3Sjwise} 441.3Sjwise 451.6Slukemsshd_precmd() 461.6Slukem{ 471.27Schristos run_rc_command keygen 481.3Sjwise} 491.3Sjwise 501.3Sjwisekeygen_cmd=sshd_keygen 511.5Sjwisestart_precmd=sshd_precmd 521.3Sjwise 531.3Sjwiseload_rc_config $name 541.3Sjwiserun_rc_command "$1" 55