A small SSH 2 server designed for small memory environments.
http://matt.ucc.asn.au/dropbear/dropbear.html
-
-config BR2_PACKAGE_DROPBEAR_URANDOM
- bool "Use /dev/urandom (low entropy systems only)?"
- default n
- depends on BR2_PACKAGE_DROPBEAR
- help
- By default, dropbear uses the much more secure /dev/random. If you
- are using a system lacking usable entropy sources, this could cause
- the dropbear ssh daemon to block forever waiting for entropy that
- will never arrive. By making dropbear use /dev/urandom, you can
- prevent Dropbear from blocking while waiting on the random device.
- This could however significantly reduce the security of your ssh
- connections. Make sure you know what you are doing if you enable
- this option -- most people should answer N.
# dropbear
#
#############################################################
-DROPBEAR_VERSION:=0.49
+DROPBEAR_VERSION:=0.50
DROPBEAR_SOURCE:=dropbear-$(DROPBEAR_VERSION).tar.gz
DROPBEAR_SITE:=http://matt.ucc.asn.au/dropbear/releases/
DROPBEAR_DIR:=$(BUILD_DIR)/dropbear-$(DROPBEAR_VERSION)
toolchain/patch-kernel.sh $(DROPBEAR_DIR) package/dropbear/ dropbear\*.patch
$(SED) 's,^/\* #define DROPBEAR_MULTI.*,#define DROPBEAR_MULTI,g' $(DROPBEAR_DIR)/options.h
$(CONFIG_UPDATE) $(DROPBEAR_DIR)
- touch $(DROPBEAR_DIR)/.unpacked
+ touch $@
$(DROPBEAR_DIR)/.configured: $(DROPBEAR_DIR)/.unpacked
(cd $(DROPBEAR_DIR); rm -rf config.cache; \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
- --exec-prefix=/usr \
- --bindir=/usr/bin \
- --sbindir=/usr/sbin \
- --libdir=/lib \
- --libexecdir=/usr/lib \
--sysconfdir=/etc \
- --datadir=/usr/share \
--localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
$(DISABLE_NLS) \
--with-shared \
);
-ifeq ($(strip $(BR2_PACKAGE_DROPBEAR_URANDOM)),y)
- $(SED) 's,^#define DROPBEAR_RANDOM_DEV.*,#define DROPBEAR_RANDOM_DEV \"/dev/urandom\",' \
- $(DROPBEAR_DIR)/options.h
-endif
- touch $(DROPBEAR_DIR)/.configured
+ touch $@
$(DROPBEAR_DIR)/$(DROPBEAR_BINARY): $(DROPBEAR_DIR)/.configured
$(MAKE) $(TARGET_CONFIGURE_OPTS) LD=$(TARGET_CC) \
MULTI=1 SCPPROGRESS=1 -C $(DROPBEAR_DIR)
$(TARGET_DIR)/$(DROPBEAR_TARGET_BINARY): $(DROPBEAR_DIR)/$(DROPBEAR_BINARY)
- #$(MAKE) DESTDIR=$(TARGET_DIR) $(TARGET_CONFIGURE_OPTS) \
- # LD=$(TARGET_CC) -C $(DROPBEAR_DIR) install
- #rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
- # $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
- install -d -m 755 $(TARGET_DIR)/usr/sbin
- install -d -m 755 $(TARGET_DIR)/usr/bin
- install -m 755 $(DROPBEAR_DIR)/$(DROPBEAR_BINARY) \
+ $(INSTALL) -d -m 755 $(TARGET_DIR)/usr/sbin
+ $(INSTALL) -d -m 755 $(TARGET_DIR)/usr/bin
+ $(INSTALL) -m 755 $(DROPBEAR_DIR)/$(DROPBEAR_BINARY) \
$(TARGET_DIR)/$(DROPBEAR_TARGET_BINARY)
- $(STRIP) $(TARGET_DIR)/$(DROPBEAR_TARGET_BINARY)
+ $(STRIP) --strip-unneeded $(TARGET_DIR)/$(DROPBEAR_TARGET_BINARY)
ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/scp
ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/ssh
ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/dbclient
ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/dropbearkey
ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/dropbearconvert
- cp $(DROPBEAR_DIR)/S50dropbear $(TARGET_DIR)/etc/init.d/
+ cp -dpf $(DROPBEAR_DIR)/S50dropbear $(TARGET_DIR)/etc/init.d/
chmod a+x $(TARGET_DIR)/etc/init.d/S50dropbear
dropbear: uclibc zlib $(TARGET_DIR)/$(DROPBEAR_TARGET_BINARY)