aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/dropbear/Makefile11
-rwxr-xr-xpackage/dropbear/files/dropbear.init6
2 files changed, 12 insertions, 5 deletions
diff --git a/package/dropbear/Makefile b/package/dropbear/Makefile
index a98c24aa2a..5943fc62c0 100644
--- a/package/dropbear/Makefile
+++ b/package/dropbear/Makefile
@@ -35,6 +35,12 @@ define Package/dropbear/description
A small SSH2 server/client designed for small memory environments.
endef
+define Package/dropbear/conffiles
+/etc/dropbear/dropbear_rsa_host_key
+/etc/dropbear/dropbear_dss_host_key
+/etc/config/dropbear
+endef
+
define Package/dropbearconvert
$(call Package/dropbear/Default)
SECTION:=utils
@@ -89,8 +95,9 @@ define Package/dropbear/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/dropbear.init $(1)/etc/init.d/dropbear
$(INSTALL_DIR) $(1)/usr/lib/opkg/info
- echo /etc/dropbear/dropbear_rsa_host_key > $(1)/usr/lib/opkg/info/dropbear.conffiles
- echo /etc/dropbear/dropbear_dss_host_key >> $(1)/usr/lib/opkg/info/dropbear.conffiles
+ $(INSTALL_DIR) $(1)/etc/dropbear
+ touch $(1)/etc/dropbear/dropbear_rsa_host_key
+ touch $(1)/etc/dropbear/dropbear_dss_host_key
endef
define Package/dropbearconvert/install
diff --git a/package/dropbear/files/dropbear.init b/package/dropbear/files/dropbear.init
index f671df787e..aaa4470432 100755
--- a/package/dropbear/files/dropbear.init
+++ b/package/dropbear/files/dropbear.init
@@ -26,7 +26,7 @@ keygen() {
for keytype in rsa dss; do
# check for keys
key=dropbear/dropbear_${keytype}_host_key
- [ -f /tmp/$key -o -f /etc/$key ] || {
+ [ -f /tmp/$key -o -s /etc/$key ] || {
# generate missing keys
mkdir -p /tmp/dropbear
[ -x /usr/bin/dropbearkey ] && {
@@ -45,8 +45,8 @@ keygen() {
}
start() {
- [ -f /etc/dropbear/dropbear_rsa_host_key -a \
- -f /etc/dropbear/dropbear_dss_host_key ] || keygen
+ [ -s /etc/dropbear/dropbear_rsa_host_key -a \
+ -s /etc/dropbear/dropbear_dss_host_key ] || keygen
config_load dropbear
/usr/sbin/dropbear $DROPBEAR_ARGS