[backfire] dropbear: patch possible use after free by authenticated remote users...
[openwrt-10.03/.git] / package / dropbear / Makefile
index 23e125e7cf0e62b58fbc0f71afb3c4b1edb6a4ef..ebb9a65d93a420f0f56cdbbec26f370e3f7072be 100644 (file)
@@ -1,23 +1,23 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2012 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id$
 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=dropbear
-PKG_VERSION:=0.48.1
-PKG_RELEASE:=1
+PKG_VERSION:=0.53.1
+PKG_RELEASE:=6
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://matt.ucc.asn.au/dropbear/releases/
-PKG_MD5SUM:=ca8e53a766faec831882831364568421
-PKG_CAT:=zcat
+PKG_SOURCE_URL:= \
+       http://matt.ucc.asn.au/dropbear/releases/ \
+       http://www.mirrors.wiretapped.net/security/cryptography/apps/ssh/dropbear/
+PKG_MD5SUM:=6b8d901859d9b8a18e2f6bfe0a892a03
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -30,8 +30,16 @@ define Package/dropbear
   SECTION:=net
   CATEGORY:=Base system
   TITLE:=Small SSH2 client/server
-  DESCRIPTION:=\
-       A small SSH2 server/client designed for small memory environments.
+endef
+
+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
@@ -46,7 +54,7 @@ CONFIGURE_ARGS += \
        --disable-pam \
        --enable-openpty \
        --enable-syslog \
-       --disable-shadow \
+       $(if $(CONFIG_SHADOW_PASSWORDS),,--disable-shadow) \
        --disable-lastlog \
        --disable-utmp \
        --disable-utmpx \
@@ -55,7 +63,11 @@ CONFIGURE_ARGS += \
        --disable-loginfunc \
        --disable-pututline \
        --disable-pututxline \
-       --disable-zlib
+       --disable-zlib \
+       --enable-bundled-libtom
+
+TARGET_CFLAGS += -DARGTYPE=3 -ffunction-sections -fdata-sections
+TARGET_LDFLAGS += -Wl,--gc-sections
 
 define Build/Configure
        $(SED) 's,^/\* #define PKG_MULTI.*,#define PKG_MULTI,g' $(PKG_BUILD_DIR)/options.h
@@ -64,21 +76,20 @@ define Build/Configure
 endef
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                LD="$(TARGET_CC)" \
                PROGRAMS="dropbear dbclient dropbearkey scp" \
                MULTI=1 SCPPROGRESS=1
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                LD="$(TARGET_CC)" \
                PROGRAMS="dropbearconvert"
 endef
-       
+
 define Package/dropbear/install
        $(INSTALL_DIR) $(1)/usr/sbin
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/dropbearmulti \
-               $(1)/usr/sbin/dropbear
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/dropbearmulti $(1)/usr/sbin/dropbear
        $(INSTALL_DIR) $(1)/usr/bin
        ln -sf ../sbin/dropbear $(1)/usr/bin/scp
        ln -sf ../sbin/dropbear $(1)/usr/bin/ssh
@@ -88,12 +99,15 @@ define Package/dropbear/install
        $(INSTALL_DATA) ./files/dropbear.config $(1)/etc/config/dropbear
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/dropbear.init $(1)/etc/init.d/dropbear
+       $(INSTALL_DIR) $(1)/usr/lib/opkg/info
+       $(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
        $(INSTALL_DIR) $(1)/usr/bin
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/dropbearconvert \
-               $(1)/usr/bin/dropbearconvert
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/dropbearconvert $(1)/usr/bin/dropbearconvert
 endef
 
 $(eval $(call BuildPackage,dropbear))