#!/bin/sh

. /usr/lib/live/config.sh

## live-config(7) - System Configuration Components
## Copyright (C) 2016-2020 The Debian Live team
## Copyright (C) 2006-2015 Daniel Baumann <mail@daniel-baumann.ch>
##
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
## This is free software, and you are welcome to redistribute it
## under certain conditions; see COPYING for details.


#set -e

Init ()
{
	# Checking if package is installed or already configured
	if ! pkg_is_installed "openssh-server" || \
	   component_was_executed "openssh-server"
	then
		exit 0
	fi

	echo -n " openssh-server"
}

Config ()
{
	for _PROTOCOL in dsa rsa ecdsa ed25519
	do
		if [ ! -e /etc/ssh/ssh_host_${_PROTOCOL}_key ] &&
		   grep -qs ssh_host_${_PROTOCOL}_key /etc/ssh/sshd_config
		then
			ssh-keygen -q -f /etc/ssh/ssh_host_${_PROTOCOL}_key -N "" -t ${_PROTOCOL}

			_SSH="true"
		fi
	done

	sed -i -e 's|#\(PasswordAuthentication\) yes|\1 no|' /etc/ssh/sshd_config

	case "${_SSH}" in
		true)
			# Creating state file
			touch /var/lib/live/config/openssh-server
			;;
	esac
}

Init
Config
