#!/bin/sh
#
# SSH server start
#

DAEMON=/usr/sbin/sshd
KEYGEN=/usr/bin/ssh-keygen

CONF=/etc/ssh/ssh_host_key
CONFR=/etc/ssh/ssh_host_rsa_key
CONFD=/etc/ssh/ssh_host_dsa_key

CONF_FILE=/mnt/conf/ssh.conf
SCONFDIR=/mnt/conf/ssh/
SCONF=/mnt/conf/ssh/ssh_host_key
SCONFR=/mnt/conf/ssh/ssh_host_rsa_key
SCONFD=/mnt/conf/ssh/ssh_host_dsa_key

DESC="Secure Shell server"

test -f $DAEMON || exit 0

test -f $CONF_FILE || exit 0
ssh_enable=`cat $CONF_FILE | awk '/ssh_server/ { print $2 }' `;
if [ $ssh_enable == "disable" ]; then
    exit 0
fi

if [ $ssh_enable == "enable" ]; then
    [ -e $SCONF ] && cp $SCONF $CONF
    [ -e $SCONFR ] && cp $SCONFR $CONFR
    [ -e $SCONFD ] && cp $SCONFD $CONFD

    if [ -e /etc/init.d/ssh ]; then
        /etc/init.d/ssh $1 
    else
        [ -s $CONF ] || $KEYGEN -b 1024 -f $CONF -N "" -t rsa1
        [ -s $CONFR ] || $KEYGEN -d -f $CONFR -N "" -t rsa
        [ -s $CONFD ] || $KEYGEN -d -f $CONFD -N "" -t dsa

        echo -n "Starting $DESC: "
        $DAEMON
        if [ $? -eq 0 ]; then
            echo "done";
        else
            echo "failed";
        fi
    fi

    [ ! -d $SCONFDIR ] && mkdir $SCONFDIR
    [ ! -s $SCONF ] && cp $CONF $SCONF && cp $CONF.pub $SCONF.pub
    [ ! -s $SCONFR ] && cp $CONFR $SCONFR && cp $CONFR.pub $SCONFR.pub
    [ ! -s $SCONFD ] && cp $CONFD $SCONFD && cp $CONFD.pub $SCONFD.pub

fi

