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

SVN-Revision: 537
owl
Mike Baker 2005-04-03 06:35:36 +00:00
parent 4bd5b26a90
commit bd2e7a5f5e
1 changed files with 12 additions and 26 deletions

View File

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