PREFERRED_VERSION_busybox = "1.13.2"
PREFERRED_VERSION_cairo = "1.12.16"
PREFERRED_VERSION_dbus = "1.2.22"
-PREFERRED_VERSION_dropbear = "0.51"
+PREFERRED_VERSION_dropbear = "0.53.1"
PREFERRED_VERSION_fontconfig = "2.8.0"
PREFERRED_VERSION_glib-2.0 = "2.42.0"
PREFERRED_VERSION_glib-2.0-native = "2.42.0"
--- /dev/null
+Index: dropbear-0.51/svr-auth.c
+===================================================================
+--- dropbear-0.51.orig/svr-auth.c
++++ dropbear-0.51/svr-auth.c
+@@ -270,7 +270,7 @@ static int checkusername(unsigned char *
+ send_msg_userauth_failure(0, 1);
+ return DROPBEAR_FAILURE;
+ }
+-
++#ifdef DISALLOW_EMPTY_PW
+ /* check for an empty password */
+ if (ses.authstate.pw_passwd[0] == '\0') {
+ TRACE(("leave checkusername: empty pword"))
+@@ -279,7 +279,7 @@ static int checkusername(unsigned char *
+ send_msg_userauth_failure(0, 1);
+ return DROPBEAR_FAILURE;
+ }
+-
++#endif
+ TRACE(("shell is %s", ses.authstate.pw_shell))
+
+ /* check that the shell is set */
+Index: dropbear-0.51/svr-authpasswd.c
+===================================================================
+--- dropbear-0.51.orig/svr-authpasswd.c
++++ dropbear-0.51/svr-authpasswd.c
+@@ -64,9 +64,13 @@ void svr_auth_password() {
+ * since the shadow password may differ to that tested
+ * in auth.c */
+ if (passwdcrypt[0] == '\0') {
++#ifdef DISALLOW_EMPTY_PW
+ dropbear_log(LOG_WARNING, "user '%s' has blank password, rejected",
+ ses.authstate.pw_name);
+ send_msg_userauth_failure(0, 1);
++#else
++ send_msg_userauth_success();
++#endif
+ return;
+ }
+
--- /dev/null
+Index: dropbear-0.50/configure.in
+===================================================================
+--- dropbear-0.50.orig/configure.in
++++ dropbear-0.50/configure.in
+@@ -164,14 +164,20 @@ AC_ARG_ENABLE(openpty,
+ AC_MSG_NOTICE(Not using openpty)
+ else
+ AC_MSG_NOTICE(Using openpty if available)
+- AC_SEARCH_LIBS(openpty, util, [AC_DEFINE(HAVE_OPENPTY,,Have openpty() function)])
++ AC_SEARCH_LIBS(openpty, util, [dropbear_cv_func_have_openpty=yes])
+ fi
+ ],
+ [
+ AC_MSG_NOTICE(Using openpty if available)
+- AC_SEARCH_LIBS(openpty, util, [AC_DEFINE(HAVE_OPENPTY)])
++ AC_SEARCH_LIBS(openpty, util, [dropbear_cv_func_have_openpty=yes])
+ ]
+ )
++
++if test "x$dropbear_cv_func_have_openpty" = "xyes"; then
++ AC_DEFINE(HAVE_OPENPTY,,Have openpty() function)
++ no_ptc_check=yes
++ no_ptmx_check=yes
++fi
+
+
+ AC_ARG_ENABLE(syslog,
--- /dev/null
+Index: dropbear-0.50/kex.h
+===================================================================
+--- dropbear-0.50.orig/kex.h
++++ dropbear-0.50/kex.h
+@@ -59,6 +59,6 @@ struct KEXState {
+
+ };
+
+-#define MAX_KEXHASHBUF 2000
++#define MAX_KEXHASHBUF 3000
+
+ #endif /* _KEX_H_ */
--- /dev/null
+diff -urN dropbear-0.51/options.h dropbear-0.51.new/options.h
+--- dropbear-0.51/options.h 2008-03-27 14:34:39.000000000 +0100
++++ dropbear-0.51.new/options.h 2008-06-22 00:22:09.000000000 +0200
+@@ -112,7 +112,7 @@
+ /* #define DSS_PROTOK */
+
+ /* Whether to do reverse DNS lookups. */
+-#define DO_HOST_LOOKUP
++/* #define DO_HOST_LOOKUP */
+
+ /* Whether to print the message of the day (MOTD). This doesn't add much code
+ * size */
--- /dev/null
+diff --git a/options.h b/options.h
+index d309ab4..7fbe97b 100644
+--- a/options.h
++++ b/options.h
+@@ -236,7 +236,7 @@ much traffic. */
+ /* The command to invoke for xauth when using X11 forwarding.
+ * "-q" for quiet */
+ #ifndef XAUTH_COMMAND
+-#define XAUTH_COMMAND "/usr/bin/X11/xauth -q"
++#define XAUTH_COMMAND "xauth -q"
+ #endif
+
+ /* if you want to enable running an sftp server (such as the one included with
LICENSE = "MIT"
DEPENDS = "zlib"
PROVIDES = "ssh sshd"
-RPROVIDES = "ssh sshd"
+RPROVIDES_${PN} = "ssh sshd"
+
+INC_PR = "r7"
SRC_URI = "\
- http://matt.ucc.asn.au/dropbear/dropbear-${PV}.tar.bz2 \
+ http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
file://urandom-xauth-changes-to-options.h.patch;patch=1 \
file://configure.patch;patch=1 \
file://fix-2kb-keys.patch;patch=1 \
- file://allow-nopw.patch \
+ file://allow-nopw.patch;apply=no \
file://init \
-"
-SRC_URI_append_openmoko = "\
file://default \
"
update-alternatives --remove scp ${bindir}/dropbearmulti
}
-CONFFILES_${PN}_openmoko += "${sysconfdir}/default/dropbear"
+CONFFILES_${PN} += "${sysconfdir}/default/dropbear"
--- /dev/null
+# DROPBEAR_BANNER=""
+# DROPBEAR_RSAKEY="/etc/dropbear/dropbear_rsa_host_key"
+# DROPBEAR_DSSKEY="/etc/dropbear/dropbear_dss_host_key"
+# DROPBEAR_KEYTYPES="rsa"
DAEMON=/usr/sbin/dropbear
NAME=dropbear
DESC="Dropbear SSH server"
+PIDFILE=/var/run/dropbear.pid
DROPBEAR_PORT=22
DROPBEAR_EXTRA_ARGS=
NO_START=0
-set -e
-
test ! -r /etc/default/dropbear || . /etc/default/dropbear
test "$NO_START" = "0" || exit 0
test -x "$DAEMON" || exit 0
test ! -h /var/service/dropbear || exit 0
+# Allows comma-separated list of addresses/ports
+DROPBEAR_PORT=`echo $DROPBEAR_PORT | sed "s/,/ -p /g"`
+
readonly_rootfs=0
for flag in `awk '{ if ($2 == "/") { split($4,FLAGS,",") } }; END { for (f in FLAGS) print FLAGS[f] }' </proc/mounts`; do
case $flag in
KEY_ARGS=""
test -f $DROPBEAR_DSSKEY && KEY_ARGS="$KEY_ARGS -d $DROPBEAR_DSSKEY"
test -f $DROPBEAR_RSAKEY && KEY_ARGS="$KEY_ARGS -r $DROPBEAR_RSAKEY"
- start-stop-daemon -S \
+ start-stop-daemon -S -p $PIDFILE \
-x "$DAEMON" -- $KEY_ARGS \
- -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
+ -p $DROPBEAR_PORT $DROPBEAR_EXTRA_ARGS
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
- start-stop-daemon -K -x "$DAEMON"
+ start-stop-daemon -K -x "$DAEMON" -p $PIDFILE
echo "$NAME."
;;
restart|force-reload)
echo -n "Restarting $DESC: "
- start-stop-daemon -K -x "$DAEMON"
+ start-stop-daemon -K -x "$DAEMON" -p $PIDFILE
sleep 1
KEY_ARGS=""
test -f $DROPBEAR_DSSKEY && KEY_ARGS="$KEY_ARGS -d $DROPBEAR_DSSKEY"
test -f $DROPBEAR_RSAKEY && KEY_ARGS="$KEY_ARGS -r $DROPBEAR_RSAKEY"
- start-stop-daemon -S \
+ start-stop-daemon -S -p $PIDFILE \
-x "$DAEMON" -- $KEY_ARGS \
- -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
+ -p $DROPBEAR_PORT $DROPBEAR_EXTRA_ARGS
echo "$NAME."
;;
*)
--- /dev/null
+require dropbear.inc
+PR = "${INC_PR}.0"
+
+SRC_URI += "file://no-host-lookup.patch"
+
+do_configure_prepend() {
+ echo "#define DROPBEAR_SMALL_CODE" >>${S}/options.h
+}
+
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI[md5sum] = "0284ea239083f04c8b874e08e1aca243"
+SRC_URI[sha256sum] = "e24d3cbecd3bc850b2b336b8eb50c845a285ceef8e22544938a582e163d36393"