#!/bin/bash
### BEGIN INIT INFO
# Provides:          dropbear
# Required-Start:    $syslog network-up
# Default-Start:     3 4 5
### END INIT INFO

. /etc/init.d/template

NAME=dropbear
PIDFILE=/var/run/$NAME.pid
ARGS="--lockfile $LOCKFILE --pidfile $PIDFILE --displayname $NAME"
DROPBEAR_EXTRA_ARGS=

SourceIfNotEmpty /etc/$NAME/$NAME.conf

start() {
	local t n m

	[ -n "$(findmnt -nko TARGET -t devpts 2>/dev/null)" ] ||
		mount -t devpts devpts /dev/pts

	for t in rsa dss ecdsa; do
		n="/etc/dropbear/dropbear_${t}_host_key"
		[ ! -f "$n" ] ||
			continue
		m="Creating $n:"
		echo_msg "$m"
		dropbearkey -t $t -f $n >/dev/null 2>&1 &&
			success "$m" ||
			failure "$m"
		echo
	done

	start_daemon $ARGS -- $NAME $DROPBEAR_EXTRA_ARGS
	RETVAL=$?
	return $RETVAL
}

stop() {
	stop_daemon $ARGS -- $NAME
	RETVAL=$?
	return $RETVAL
}

switch "${1-}"
