#!/bin/sh

## live-config(7) - System Configuration Components
## 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 [ ! -e /var/lib/dpkg/info/openssh-server.list ] || \
	   [ -e /var/lib/live/config/openssh-server ]
	then
		exit 0
	fi

	/etc/init.d/haveged start
	sleep 3
	echo -n " openssh-server+haveged"
}

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
