mirror of
				https://github.com/PowerShell/Win32-OpenSSH.git
				synced 2025-10-31 19:53:55 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			93 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #!@STARTUP_SCRIPT_SHELL@
 | |
| # Donated code that was put under PD license.
 | |
| #
 | |
| # Stripped PRNGd out of it for the time being.
 | |
| 
 | |
| umask 022
 | |
| 
 | |
| CAT=@CAT@
 | |
| KILL=@KILL@
 | |
| 
 | |
| prefix=@prefix@
 | |
| sysconfdir=@sysconfdir@
 | |
| piddir=@piddir@
 | |
| 
 | |
| SSHD=$prefix/sbin/sshd
 | |
| PIDFILE=$piddir/sshd.pid
 | |
| PidFile=`grep "^PidFile" ${sysconfdir}/sshd_config | tr "=" " " | awk '{print $2}'`
 | |
| [ X$PidFile = X ]  ||  PIDFILE=$PidFile
 | |
| SSH_KEYGEN=$prefix/bin/ssh-keygen
 | |
| HOST_KEY_RSA1=$sysconfdir/ssh_host_key
 | |
| HOST_KEY_DSA=$sysconfdir/ssh_host_dsa_key
 | |
| HOST_KEY_RSA=$sysconfdir/ssh_host_rsa_key
 | |
| @COMMENT_OUT_ECC@HOST_KEY_ECDSA=$sysconfdir/ssh_host_ecdsa_key
 | |
| HOST_KEY_ED25519=$sysconfdir/ssh_host_ed25519_key
 | |
| 
 | |
| 
 | |
| checkkeys() {
 | |
|     if [ ! -f $HOST_KEY_RSA1 ]; then
 | |
| 	${SSH_KEYGEN} -t rsa1 -f ${HOST_KEY_RSA1} -N ""
 | |
|     fi
 | |
|     if [ ! -f $HOST_KEY_DSA ]; then
 | |
| 	${SSH_KEYGEN} -t dsa -f ${HOST_KEY_DSA} -N ""
 | |
|     fi
 | |
|     if [ ! -f $HOST_KEY_RSA ]; then
 | |
| 	${SSH_KEYGEN} -t rsa -f ${HOST_KEY_RSA} -N ""
 | |
|     fi
 | |
| @COMMENT_OUT_ECC@    if [ ! -f $HOST_KEY_ECDSA ]; then
 | |
| @COMMENT_OUT_ECC@	${SSH_KEYGEN} -t ecdsa -f ${HOST_KEY_ECDSA} -N ""
 | |
| @COMMENT_OUT_ECC@    fi
 | |
|     if [ ! -f $HOST_KEY_ED25519 ]; then
 | |
| 	${SSH_KEYGEN} -t ed25519 -f ${HOST_KEY_ED25519} -N ""
 | |
|     fi
 | |
| }
 | |
| 
 | |
| stop_service() {
 | |
|     if [  -r $PIDFILE  -a  ! -z ${PIDFILE}  ]; then
 | |
| 	PID=`${CAT} ${PIDFILE}`
 | |
|     fi
 | |
|     if [  ${PID:=0} -gt 1 -a  ! "X$PID" = "X "  ]; then
 | |
| 	${KILL} ${PID}
 | |
|     else
 | |
| 	echo "Unable to read PID file"
 | |
|     fi
 | |
| }
 | |
| 
 | |
| start_service() {
 | |
|     # XXX We really should check if the service is already going, but
 | |
|     # XXX we will opt out at this time. - Bal
 | |
| 
 | |
|     # Check to see if we have keys that need to be made
 | |
|     checkkeys
 | |
| 
 | |
|     # Start SSHD
 | |
|     echo "starting $SSHD... \c"         ; $SSHD
 | |
| 
 | |
|     sshd_rc=$?
 | |
|     if [ $sshd_rc -ne 0 ]; then
 | |
| 	echo "$0: Error ${sshd_rc} starting ${SSHD}... bailing."
 | |
| 	exit $sshd_rc
 | |
|     fi
 | |
|     echo done.
 | |
| }
 | |
| 
 | |
| case $1 in
 | |
| 
 | |
| 'start')
 | |
|     start_service
 | |
|     ;;
 | |
| 
 | |
| 'stop')
 | |
|     stop_service
 | |
|     ;;
 | |
| 
 | |
| 'restart')
 | |
|     stop_service
 | |
|     start_service
 | |
|     ;;
 | |
| 
 | |
| *)
 | |
|     echo "$0:  usage:  $0 {start|stop|restart}"
 | |
|     ;;
 | |
| esac
 |