cleanup & fix logic not to depend on dropbearkey if keys exist

SVN-Revision: 537
This commit is contained in:
Mike Baker 2005-04-03 06:35:36 +00:00
parent 4bd5b26a90
commit bd2e7a5f5e

View file

@ -1,31 +1,17 @@
#!/bin/sh
# Make sure the dropbearkey progam exists
[ -f /usr/bin/dropbearkey ] || exit 0
# Check for the Dropbear RSA key
if [ ! -f /etc/dropbear/dropbear_rsa_host_key ] ; then
(
echo Generating RSA Key...
mkdir -p /etc/dropbear
/usr/bin/dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
[ -f /etc/dropbear/dropbear_rsa_host_key ] && exec $0 $*
) > /dev/null 2> /dev/null &
exit 0
fi
# Check for the Dropbear DSS key
if [ ! -f /etc/dropbear/dropbear_dss_host_key ] ; then
(
echo Generating DSS Key...
mkdir -p /etc/dropbear
/usr/bin/dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key
[ -f /etc/dropbear/dropbear_dss_host_key ] && exec $0 $*
) > /dev/null 2> /dev/null &
exit 0
fi
for type in rsa dss; do {
# check for keys
key=/tmp/dropbear/dropbear_${type}_host_key
[ ! -f $key ] && {
# generate missing keys
mkdir -p /tmp/dropbear
[ -x /usr/bin/dropbearkey ] && {
/usr/bin/dropbearkey -t $type -f $key 2>&- >&- && exec $0 $*
} &
exit 0
}
}; done
umask 077
/usr/sbin/dropbear