Correct PPTP server firewall rules chain.
[tomato/davidwu.git] / release / src / router / dropbear / CHANGES
blobb93a8df04277bf6c5e7d7114d5a2ec00a2808aeb
1 2013.62 - Tuesday 3 December 2013
3 - Disable "interactive" QoS connection options when a connection doesn't
4   have a PTY (eg scp, rsync). Thanks to Catalin Patulea for the patch.
6 - Log when a hostkey is generated with -R, fix some bugs in handling server
7   hostkey commandline options
9 - Fix crash in Dropbearconvert and 521 bit key, reported by NiLuJe
11 - Update config.guess and config.sub again
13 2013.61test - Thursday 14 November 2013
15 - ECC (elliptic curve) support. Supports ECDSA hostkeys (requires new keys to
16   be generated) and ECDH for setting up encryption keys (no intervention
17   required). This is significantly faster.
19 - curve25519-sha256@libssh.org support for setting up encryption keys. This is
20   another elliptic curve mode with less potential of NSA interference in
21   algorithm parameters. curve25519-donna code thanks to Adam Langley
23 - -R option to automatically generate hostkeys. This is recommended for
24   embedded platforms since it allows the system random number device
25   /dev/urandom a longer startup time to generate a secure seed before the
26   hostkey is required.
28 - Compile fixes for old vendor compilers like Tru64 from Daniel Richard G.
30 - Make authorized_keys handling more robust, don't exit encountering
31   malformed lines. Thanks to Lorin Hochstein and Mark Stillwell 
33 2013.60 - Wednesday 16 October 2013
35 - Fix "make install" so that it doesn't always install to /bin and /sbin
37 - Fix "make install MULTI=1", installing manpages failed
39 - Fix "make install" when scp is included since it has no manpage
41 - Make --disable-bundled-libtom work
43 2013.59 - Friday 4 October 2013
45 - Fix crash from -J command 
46   Thanks to Lluís Batlle i Rossell and Arnaud Mouiche for patches
48 - Avoid reading too much from /proc/net/rt_cache since that causes
49   system slowness. 
51 - Improve EOF handling for half-closed connections
52   Thanks to Catalin Patulea
54 - Send a banner message to report PAM error messages intended for the user
55   Patch from Martin Donnelly
57 - Limit the size of decompressed payloads, avoids memory exhaustion denial
58   of service 
59   Thanks to Logan Lamb for reporting and investigating it. CVE-2013-4421
61 - Avoid disclosing existence of valid users through inconsistent delays
62   Thanks to Logan Lamb for reporting. CVE-2013-4434
64 - Update config.guess and config.sub for newer architectures
66 - Avoid segfault in server for locked accounts
68 - "make install" now installs manpages
69   dropbearkey.8 has been renamed to dropbearkey.1
70   manpage added for dropbearconvert
72 - Get rid of one second delay when running non-interactive commands
75 2013.58 - Thursday 18 April 2013
77 - Fix building with Zlib disabled, thanks to Hans Harder and cuma@freetz
79 - Use % as a separator for ports, fixes scp in multihop mode, from Hans Harder
81 - Reject logins for other users when running as non-root, from Hans Harder
83 - Disable client immediate authentication request by default, it prevents
84   passwordless logins from working
86 2013.57 - Monday 15 April 2013
88 - Decreased connection setup time particularly with high latency connections,
89   the number of round trips has been reduced for both client and server. 
90   CPU time hasn't been changed.
92 - Client will send an initial key exchange guess to save a round trip.
93   Dropbear implements an extension kexguess2@matt.ucc.asn.au to allow the first
94   packet guess to succeed in wider circumstances than the standard behaviour.
95   When communicating with other implementations the standard behaviour is used.
97 - Client side: when public key or password authentication with
98   $DROPBEAR_PASSWORD is used an initial authentication request will
99   be sent immediately rather than querying the list of available methods.
100   This behaviour is enabled by CLI_IMMEDIATE_AUTH option (on by default),
101   please let the Dropbear author know if it causes any interoperability
102   problems.
104 - Implement client escape characters ~. (terminate session) and 
105   ~^Z (background session)
107 - Server will more reliably clean up utmp when connection is closed, reported by
108   Mattias Walström
110 - Don't crash if /dev/urandom isn't writable (RHEL5), thanks to Scott Case
112 - Add "-y -y" client option to skip host key checking, thanks to Hans Harder
114 - scp didn't work properly on systems using vfork(), thanks to Frank Van Uffelen
116 - Added IUTF8 terminal mode support (Linux and Mac OS). Not standardised yet
117 though probably will be soon
119 - Some verbose DROPBEAR_TRACE output is now hidden unless $DROPBEAR_TRACE2
120   enviroment variable is set
122 - Fix using asymmetric MAC algorithms (broke in )
124 - Renamed configure.in to configure.ac to quieten autoconf, from Mike Frysinger
126 2013.56 - Thursday 21 March 2013
128 - Allow specifying cipher (-c) and MAC (-m) lists for dbclient
130 - Allow using 'none' cipher or MAC (off by default, use options.h). Encryption
131   is used during authentication then disabled, similar to OpenSSH HPN mode
133 - Allow a user in immediately if the account has a blank password and blank
134   passwords are enabled
136 - Include a few extra sources of entropy from /proc on Linux, hash private keys
137   as well. Dropbear will also write gathered entropy back into /dev/urandom
139 - Added hmac-sha2-256 and hmac-sha2-512 support (off by default, use options.h)
141 - Don't sent bad address "localhost" for -R forward connections, 
142   reported by Denis Bider
144 - Add "-B" runtime option to allow blank passwords
146 - Allow using IPv6 bracket notation for addresses in server "-p" option, from Ben Jencks
148 - A few improvements for Android from Reimar Döffinger
150 - Fix memory leak for TCP forwarded connections to hosts that timed out,
151   reported by Norbert Benczúr. Appears to be a very long-standing bug.
153 - Fix "make clean" for out of tree builds
155 - Fix compilation when ENABLE_{SVR,CLI}_AGENTFWD are unset
157 2012.55 - Wednesday 22 February 2012
159 - Security: Fix use-after-free bug that could be triggered if command="..."
160   authorized_keys restrictions are used.  Could allow arbitrary code execution
161   or bypass of the command="..." restriction to an authenticated user.
162   This bug affects releases 0.52 onwards. Ref CVE-2012-0920.
163   Thanks to Danny Fullerton of Mantor Organization for reporting
164   the bug.
166 - Compile fix, only apply IPV6 socket options if they are available in headers
167   Thanks to Gustavo Zacarias for the patch
169 - Overwrite session key memory on exit
171 - Fix minor memory leak in unusual PAM authentication configurations.
172   Thanks to Stathis Voukelatos
174 - Other small code cleanups
176 2011.54 - Tuesday 8 November 2011
178 - Building statically works again, broke in 0.53 and 0.53.1
180 - Fix crash when forwarding with -R
182 - Fixed various leaks found by Klocwork analysis software, thanks to them for
183   running it
185 - Set IPTOS_LOWDELAY for IPv6, thanks to Dave Taht
187 - Bind to sockets with IPV6_V6ONLY so that it works properly on systems
188   regardless of the system-wide setting
190 - Added ALLOW_BLANK_PASSWORD option. Dropbear also now allows public key logins
191   to accounts with a blank password. Thanks to Rob Landley
193 - Fixed case where "-K 1" keepalive for dbclient would cause a SSH_MSG_IGNORE
194   packet to be sent
196 - Avoid some memory allocations in big number maths routines, improves
197   performance slightly
199 - Fix symlink target for installdropbearmulti with DESTDIR set, thanks to
200   Scottie Shore
202 - When requesting server allocated remote ports (-R 0:host:port) print a
203   message informing what the port is, thanks to Ali Onur Uyar.
205 - New version numbering scheme.
207 Source repository has now migrated to Mercurial at 
208 https://secure.ucc.asn.au/hg/dropbear/graph/default
210 0.53.1 - Wednesday 2 March 2011
212 - -lcrypt needs to be before object files for static linking
214 - Compile fix when both client and agent forwarding are disabled
216 - Fix DROPBEAR_PRNGD_SOCKET mode
218 - Don't allow setting zlib memLevel since it seems buggy
220 0.53 - Thurs 24 February 2011
222 - Various performance/memory use improvements
224 - Client agent forwarding now works, using OpenSSH's ssh-agent
226 - Improve robustness of client multihop mode
228 - Fix a prime generation bug in bundled libtommath. This is unlikely to have
229   generated any bad keys in the wild.
230   See 
231   https://bugzilla.redhat.com/show_bug.cgi?id=615088
232   http://bugs.gentoo.org/show_bug.cgi?id=328383
233   http://bugs.gentoo.org/show_bug.cgi?id=328409
235 - Attempt to build against system libtomcrypt/libtommath if available. This
236   can be disabled with ./configure --enable-bundled-libtom
238 - Make -K (keepalive) and -I (idle timeout) work together sensibly in the client.
239   The idle timeout is no longer reset by SSH_MSG_IGNORE packets.
241 - Add diffie-hellman-group14-sha1 key exchange method
243 - Compile fix if ENABLE_CLI_PROXYCMD is disabled
245 - /usr/bin/X11/xauth is now the default path
247 - Client remote forward (-L/-R) arguments now accept a listen address
249 - In uClinux avoid trashing the parent process when a session exits
251 - Blowfish is now disabled by default since it has large memory usage
253 - Add option to change zlib windowbits/memlevel. Use less memory by default
255 - DROPBEAR_SMALL_CODE is now disabled by default
257 - SSH_ORIGINAL_COMMAND environment variable is set by the server when an
258   authorized_keys command is specified.
260 - Set SSH_TTY and SSH_CONNECTION environment variables in the server
262 - Client banner is now printed to standard error rather than standard output
264 - Capitalisation in many log messages has been made consistent. This may affect
265   scripts that parse logfiles.
267 0.52 - Wed 12 November 2008
269 - Add "netcat-alike" option (-B) to dbclient, allowing Dropbear to tunnel
270   standard input/output to a TCP port-forwarded remote host.
272 - Add "proxy command" support to dbclient, to allow using a spawned process for
273   IO rather than a direct TCP connection. eg
274           dbclient remotehost
275   is equivalent to
276           dbclient -J 'nc remotehost 22' remotehost
277   (the hostname is still provided purely for looking up saved host keys)
279 - Combine netcat-alike and proxy support to allow "multihop" connections, with
280   comma-separated host syntax.  Allows running
282           dbclient user1@host1,user2@host2,user3@host3
284   to end up at host3 via the other two, using SSH TCP forwarding. It's a bit
285   like onion-routing. All connections are established from the local machine.
286   The comma-separated syntax can also be used for scp/rsync, eg
288           rsync -a -e dbclient m@gateway,m2@host,martello:/home/matt/ ~/backup/
290   to bounce through a few hosts.
292 - Add -I "idle timeout" option (contributed by Farrell Aultman)
294 - Allow restrictions on authorized_keys logins such as restricting commands
295   to be run etc. This is a subset of those allowed by OpenSSH, doesn't
296   yet allow restricting source host.
298 - Use vfork() for scp on uClinux
300 - Default to PATH=/usr/bin:/bin for shells.
302 - Report errors if -R forwarding fails
304 - Add counter mode cipher support, which avoids some security problems with the
305   standard CBC mode.
307 - Support zlib@openssh.com delayed compression for client/server. It can be
308   required for the Dropbear server with the '-Z' option. This is useful for
309   security as it avoids exposing the server to attacks on zlib by
310   unauthenticated remote users, though requires client side support.
312 - options.h has been split into options.h (user-changable) and sysoptions.h
313   (less commonly changed)
315 - Support "dbclient -s sftp" to specify a subsystem
317 - Fix a bug in replies to channel requests that could be triggered by recent
318   versions of PuTTY
320 0.51 - Thu 27 March 2008
322 - Make a copy of password fields rather erroneously relying on getwpnam()
323   to be safe to call multiple times
325 - If $SSH_ASKPASS_ALWAYS environment variable is set (and $SSH_ASKPASS is
326   as well) always use that program, ignoring isatty() and $DISPLAY
328 - Wait until a process exits before the server closes a connection, so
329   that an exit code can be sent. This fixes problems with exit codes not
330   being returned, which could cause scp to fail.
332 0.50 - Wed 8 August 2007
334 - Add DROPBEAR_PASSWORD environment variable to specify a dbclient password
336 - Use /dev/urandom by default, since that's what everyone does anyway
338 - Correct vfork() use for uClinux in scp
339   (thanks to Alex Landau)
341 - Exit with an exit code of 1 if dropbear can't bind to any ports
342   (thanks to Nicolai Ehemann)
344 - Improve network performance and add a -W <receive_window> argument for
345   adjusting the tradeoff between network performance and memory consumption.
347 - Fix a problem where reply packets could be sent during key exchange,
348   in violation of the SSH spec. This could manifest itself with connections
349   being terminated after 8 hours with new TCP-forward connections being
350   established.
352 - Add -K <keepalive_time> argument, ensuring that data is transmitted
353   over the connection at least every N seconds.
355 - dropbearkey will no longer generate DSS keys of sizes other than 1024
356   bits, as required by the DSS specification. (Other sizes are still
357   accepted for use to provide backwards compatibility).
359 0.49 - Fri 23 February 2007
361 - Security: dbclient previously would prompt to confirm a 
362   mismatching hostkey but wouldn't warn loudly. It will now
363   exit upon a mismatch. CVE-2007-1099
365 - Compile fixes, make sure that all variable definitions are at the start
366   of a scope.
368 - Added -P pidfile argument to the server (from Swen Schillig)
370 - Add -N dbclient option for "no command"
372 - Add -f dbclient option for "background after auth"
374 - Add ability to limit binding to particular addresses, use 
375   -p [address:]port, patch from Max-Gerd Retzlaff.
377 - Try to finally fix ss_family compilation problems (for old
378   glibc systems)
380 - Fix finding relative-path server hostkeys when running daemonized
382 - Use $HOME in preference to that from /etc/passwd, so that
383   dbclient can still work on broken systems.
385 - Fix various issues found by Klocwork defect analysis, mostly memory leaks
386   and error-handling. Thanks to Klocwork for their service.
388 - Improve building in a separate directory
390 - Add compile-time LOG_COMMANDS option to log user commands
392 - Add '-y' flag to dbclient to unconditionally accept host keys,
393   patch from Luciano Miguel Ferreira Rocha
395 - Return immediately for "sleep 10 & echo foo", rather than waiting
396   for the sleep to return (pointed out by Rob Landley).
397   
398 - Avoid hanging after exit in certain cases (such as scp)
400 - Various minor fixes, in particular various leaks reported by
401   Erik Hovland
402   
403 - Disable core dumps on startup
405 - Don't erase over every single buffer, since it was a bottleneck.
406   On systems where it really matters, encrypted swap should be utilised.
408 - Read /dev/[u]random only once at startup to conserve kernel entropy
410 - Upgrade to LibTomCrypt 1.16 and LibTomMath 0.40
412 - Upgrade config.status and config.guess 
414 0.48.1 - Sat 11 March 2006
416 - Compile fix for scp
418 0.48 - Thurs 9 March 2006
420 - Check that the circular buffer is properly empty before
421   closing a channel, which could cause truncated transfers
422   (thanks to Tomas Vanek for helping track it down)
424 - Implement per-IP pre-authentication connection limits 
425   (after some poking from Pablo Fernandez) CVE-2006-1206
427 - Exit gracefully if trying to connect to as SSH v1 server 
428   (reported by Rushi Lala)
430 - Only read /dev/random once at startup when in non-inetd mode
432 - Allow ctrl-c to close a dbclient password prompt (may
433   still have to press enter on some platforms)
435 - Merged in uClinux patch for inetd mode
437 - Updated to scp from OpenSSH 4.3p2 - fixes a security issue
438   where use of system() could cause users to execute arbitrary
439   code through malformed filenames, ref CVE-2006-0225
441 0.47 - Thurs Dec 8 2005
443 - SECURITY: fix for buffer allocation error in server code, could potentially
444   allow authenticated users to gain elevated privileges. All multi-user systems
445   running the server should upgrade (or apply the patch available on the
446   Dropbear webpage). CVE-2005-4178
448 - Fix channel handling code so that redirecting to /dev/null doesn't use
449   100% CPU.
451 - Turn on zlib compression for dbclient.
453 - Set "low delay" TOS bit, can significantly improve interactivity
454   over some links.
456 - Added client keyboard-interactive mode support, allows operation with
457   newer OpenSSH servers in default config.
459 - Log when pubkey auth fails because of bad ~/.ssh/authorized_keys permissions
461 - Improve logging of assertions
463 - Added aes-256 cipher and sha1-96 hmac.
465 - Fix twofish so that it actually works.
467 - Improve PAM prompt comparison.
469 - Added -g (dbclient) and -a (dropbear server) options to allow
470   connections to listening forwarded ports from remote machines.
472 - Various other minor fixes
474 - Compile fixes for glibc 2.1 (ss_family vs __ss_family) and NetBSD
475   (netinet/in_systm.h needs to be included).
477 0.46 - Sat July 9 2005
479 - Fix long-standing bug which caused connections to be closed if an ssh-agent
480   socket was no longer available
482 - Print a warning if we seem to be blocking on /dev/random 
483   (suggested by Paul Fox)
485 - Fixed a memory leak in DSS code (thanks to Boris Berezovsky for the patch)
487 - dbclient -L no longer segfaults, allocate correct buffer size (thanks
488   to David Cook for reporting it, and Christopher Faylor for independently
489   sending in a patch)
491 - Added RSA blinding to signing code (suggested by Dan Kaminsky)
493 - Rearranged bignum reading/random generation code
495 - Reset the non-blocking status on stderr and stdout as well as stdin,
496   fixes a problem where the shell running dbclient will exit (thanks to 
497   Brent Roman for reporting it)
499 - Fix so that all file descriptors are closed so the child shell doesn't
500   inherit descriptors (thanks to Linden May for the patch)
502 - Change signkey.c to avoid gcc 4 generating incorrect code
504 - After both sides of a file descriptor have been shutdown(), close()
505   it to avoid leaking descriptors (thanks to Ari Hyttinen for a patch)
507 - Update to LibTomCrypt 1.05 and LibTomMath 0.35
509 0.45 - Mon March 7 2005
511 - Makefile no longer appends 'static' to statically linked binaries
513 - Add optional SSH_ASKPASS support to the client
515 - Respect HOST_LOOKUP option
517 - Fix accidentally removed "return;" statement which was removed in 0.44
518   (causing clients which sent an empty terminal-modes string to fail to
519   connect - including pssh, ssh.com, danger hiptop). (patches
520   independently from Paul Fox, David Horwitt and Sven-Ola Tuecke)
522 - Read "y/n" response for fingerprints from /dev/tty directly so that dbclient
523   will work with scp.
525 0.44 - Mon Jan 3 2005
527 - SECURITY: Fix for PAM auth so that usernames are logged and conversation
528   function responses are allocated correctly - all 0.44test4 users with PAM
529   compiled in (not default) are advised to upgrade.
531 - Fix calls to getnameinfo() for compatibility with Solaris
533 - Pristine compilation works (run 'configure' from a fresh dir and make it
534   there)
536 - Fixes for compiling with most options disabled.
538 - Upgraded to LibTomCrypt 0.99 and LibTomMath 0.32
540 - Make sure that zeroing out of values in LTM and LTC won't get optimised away
542 - Removed unused functions from loginrec.c
544 - /dev/random is now the default entropy source rather than /dev/urandom
546 - Logging of IPs in auth success/failure messages for improved greppability
548 - Fix dbclient so that "scp -i keyfile" works. (It can handle "-ikeyfile
549   properly)
551 - Avoid a race in server shell-handling code which prevents the exit-code
552   from being returned to the client in some circumstances.
554 - Makefile modified so that install target works correctly (doesn't try
555   to install "all" binary) - patch from Juergen Daubert
557 - Various minor fixes and compile warnings.
559 0.44test4 - Tue Sept 14 2004 21:15:54 +0800
561 - Fix inetd mode so it actually loads the hostkeys (oops)
563 - Changed DROPBEAR_DEFPORT properly everywhere
565 - Fix a small memory leak in the auth code
567 - WCOREDUMP is only used on systems which support it (ie not cygwin or AIX)
569 - Check (and fail for) cases when we can't negotiate algorithms with the
570   remote side successfully (rather than bombing out ungracefully)
572 - Handle authorized_keys files without a terminating newline
574 - Fiddle the channel receive window size for possibly better performance
576 - Added in the PAM authentication code (finally! thanks to Martin Carlsson)
578 0.44test3 - Fri Aug 27 22:20:54 +0800
580 - Fixed a bunch of warnings.
582 - scp works correctly when passed a username (fix for the dbclient program
583   itself as well, "-lmatt" works as well as "-l matt").
585 - Remove unrequired debian files
587 - Exit with the remote process's return code for dbclient
589 - Display stderr messages from the server in the client
591 - Add circular buffering to the channel code. This should dramatically reduce
592   the amount of backtraffic sent in response to traffic incoming to the
593   Dropbear end - improves high-latency performance (ie dialup).
595 - Various other related channel-handling fixups.
597 - Allow leading lines in the banner when connecting to servers
599 - Fixed printing out errors onto the network socket with stderr (for inetd
600   mode when using xinetd)
602 - Remove obselete documentation
604 - Fix a null-pointer exception when trying to free non-existant listeners
605   at cleanup.
607 - DEBUG_TRACE now only works if you add "-v" to the program commandline
609 - Don't leave stdin non-blocking on exit - this caused the parent shell
610   of dbclient to close when dbclient exited, for some shells in BusyBox
612 - Server connections no longer timeout after 5 minutes
614 - Fixed stupid DSS hostkey typo (server couldn't load host keys)
616 0.44test2 - Tues Aug 17 2004 17:43:54 +0800
618 - Fix up dropbearmulti targets in the Makefile - symlinks are now created
620 - Compile fake-rfc2553 even with dropbearconvert/dropbearkey - this 
621   allows them to work on platforms without a native getaddrinfo()
623 - Create ~/.ssh/known_hosts properly if it doesn't exist
625 - Fix basename() function prototype
627 - Backport some local changes (more #ifdefs for termcodes.c, a fix for missing
628   defines on AIX).
630 - Let dbclient be run as "ssh"
632 - Initialise mp_ints by default
634 0.44test1 - Sun Aug 16 2005 17:43:54 +0800
636 - TESTING RELEASE - this is the first public release of the client codebase,
637   so there are sure to be bugs to be found. In addition, if you're just using
638   the server portion, the final binary size probably will increase - I'll
639   be trying to get it back down in future releases.
641 - Dropbear client added - lots of changes to the server code as well to 
642   generalise things
644 - IPv6 support added for client, server, and forwarding
646 - New makefile with more generic support for multiple-program binaries
648 0.43 - Fri Jul 16 2004 17:44:54 +0800
650 - SECURITY: Don't try to free() uninitialised variables in DSS verification
651   code. Thanks to Arne Bernin for pointing out this bug. This is possibly
652   exploitable, all users with DSS and pubkey-auth compiled in are advised to
653   upgrade. CVE-2004-2486
655 - Clean up agent forwarding socket files correctly, patch from Gerrit Pape.
657 - Don't go into an infinite loop when portforwarding to servers which don't
658   send any initial data/banner. Patch from Nikola Vladov
660 - Fix for network vs. host byte order in logging remote TCP ports, also
661   from Gerrit Pape.
663 - Initialise many pointers to NULL, for general safety. Also checked cleanup
664   code for mp_ints (related to security issues above).
666 0.42 - Wed Jun 16 2004 12:44:54 +0800
668 - Updated to Gerrit Pape's official Debian subdirectory
670 - Fixed bad check when opening /dev/urandom - thanks to Danny Sung.
672 - Added -i inetd mode flag, and associated options in options.h . Dropbear
673   can be compiled with either normal mode, inetd, or both modes. Thanks
674   to Gerrit Pape for basic patch and motivation.
676 - Use <dirent.h> rather than <sys/dir.h> for POSIX compliance. Thanks to Bill
677   Sommerfield.
679 - Fixed a TCP forwarding (client-local, -L style) bug which caused the whole
680   session to close if the TCP connection failed. Thanks to Andrew Braund for
681   reporting it and helping track it down.
683 - Re-enable sigpipe for child processes. Thanks to Gerrit Pape for some
684   suggestions, and BSD manpages for a clearer explanation of the behaviour.
686 - Added manpages, thanks to Gerrit Pape.
688 - Changed license text for LibTomCrypt and LibTomMath.
690 - Added strip-static target
692 - Fixed a bug in agent-forwarding cleanup handler - would segfault
693   (dereferencing a null pointer) if agent forwarding had failed.
695 - Fix behaviour of authorized_keys parsing, so larger (>1024 bit) DSA keys will
696   work. Thanks to Dr. Markus Waldeck for the report. 
698 - Fixed local port forwarding code so that the "-j" option will make forwarding
699   attempts fail more gracefully.
701 - Allow repeated requests in a single session if previous ones fail - this fixes  PuTTY and some other SCP clients, which try SFTP, then fall-back to SCP if it
702   isn't available. Thanks to Stirling Westrup for the report.
704 - Updated to LibTomCrypt 0.96 and LibTomMath 0.30. The AES code now uses
705   smaller non-precomputed tables if DROPBEAR_SMALL_CODE is defined in
706   options.h, leading to a significant reduction in the binary size.
708 0.41 - Mon Jan 19 2004 22:40:19 +0800
710 - Fix in configure so that cross-compiling works, thanks to numerous people for
711   reporting and testing
713 - Terminal mode parsing now handles empty terminal mode strings (sent by
714   Windows ssh.com clients), thanks to Ricardo Derbes for the report
716 - Handling is improved for users with no shell specified in /etc/passwd,
717   thanks again to Ricardo Derbes
719 - Fix for compiling with --disable-syslog, thanks to gordonfh
721 - Various minor fixes allow scp to work with irix, thanks to Paul Marinceu for
722   fixing it up
724 - Use <stropts.h> not <sys/stropts.h>, since the former seems more common
726 0.40 - Tue Jan 13 2004 21:05:19 +0800
728 - Remote TCP forwarding (-R) style implemented
730 - Local and remote TCP forwarding can each be disabled at runtime (-k and -j
731   switches)
733 - Fix for problems detecting openpty() with uClibc - many thanks to various
734   people for reporting and testing fixes, including (in random order) Cristian
735   Ionescu-Idbohrn, James Ewing, Steve Dover, Thomas Lundquist and Frederic
736   Lavernhe
738 - Improved portability for IRIX, thanks to Paul Marinceu
740 - AIX and HPUX portability fixes, thanks to Darren Tucker for patches
742 - prngd should now work correctly, thanks to Darren Tucker for the patch
744 - scp compilation on systems without strlcpy() is fixed, thanks to Peter
745   Jannesen and David Muse for reporting it (independently and simultaneously :)
747 - Merged in new LibTomCrypt 0.92 and LibTomMath 0.28
749 0.39 - Tue Dec 16 2003 15:19:19 +0800
751 - Better checking of key lengths and parameters for DSS and RSA auth
753 - Print fingerprint of keys used for pubkey auth
755 - More consistent logging of usernames and IPs
757 - Added option to disable password auth (or just for root) at runtime
759 - Avoid including bignum functions which don't give much speed benefit but
760   take up binary size
762 - Added a stripped down version of OpenSSH's scp binary
764 - Added additional supporting functions for Irix, thanks to Paul Marinceu
766 - Don't check for unused libraries in configure script
768 - Removed trailing comma in algorithm lists (thanks to Mihnea Stoenescu)
770 - Fixed up channel close handling, always send close packet in response
771   (also thanks to Mihnea Stoenescu)
773 - Various makefile improvements for cross-compiling, thanks to Friedrich
774   Lobenstock and Mihnea Stoenescu
776 - Use daemon() function if available (or our own copy) rather than separate
777   code (thanks to Frédéric Lavernhe for the report and debugging, and Bernard
778   Blackham for his suggestion on what to look at)
780 - Fixed up support for first_kex_packet_follows, required to talk to ssh.com
781   clients. Thanks to Marian Stagarescu for the bug report.
783 - Avoid using MAXPATHLEN, pointer from Ian Morris
785 - Improved input sanity checking
787 0.38 - Sat Oct 11 2003 16:28:13 +0800
789 - Default hostkey path changed to /etc/dropbear/dropbear_{rsa,dss}_host_key
790   rather than /etc/dropbear_{rsa,dss}_host_key
792 - Added SMALL and MULTI text files which have info on compiling for multiple
793   binaries or small binaries
795 - Allow for commandline definition of some options.h settings
796   (without warnings)
798 - Be more careful handling EINTR
800 - More fixes for channel closing
802 - Added multi-binary support
804 - Improved logging of IPs, now get logged in all cases
806 - Don't chew cpu when waiting for version identification string, also
807   make sure that we kick off people if they don't auth within 5 minutes.
809 - Various small fixes, warnings etc
811 - Display MOTD if requested - suggested by
812   Trent Lloyd <lathiat at sixlabs.org> and
813   Zach White <zwhite at darkstar.frop.org>
815 - sftp support works (relies on OpenSSH sftp binary or similar)
817 - Added --disable-shadow option (requested by the floppyfw guys)
819 0.37 - Wed Sept 24 2003 19:42:12 +0800
821 - Various portability fixes, fixes for Solaris 9, Tru64 5.1, Mac OS X 10.2,
822   AIX, BSDs
824 - Updated LibTomMath to 0.27 and LibTomCrypt to 0.90
826 - Renamed util.{c,h} to dbutil.{c,h} to avoid conflicts with system util.h
828 - Added some small changes so it'll work with AIX (plus Linux Affinity).
829   Thanks to Shig for them.
831 - Improved the closing messages, so a clean exit is "Exited normally"
833 - Added some more robust integer/size checking in buffer.c as a backstop for
834   integer overflows
836 - X11 forwarding fixed for OSX, path for xauth changed to /usr/X11R6/bin/xauth
838 - Channel code handles closing more nicely, doesn't sit waiting for an extra
839   keystroke on BSD/OSX platforms, and data is flushed fully before closing
840   child processes (thanks to 
841   Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com> for
842   pointing that out).
844 - Changed "DISABLE_TCPFWD" to "ENABLE_TCPFWD" (and for x11/auth) so
845   "disable DISABLE_TCPWD" isn't so confusing.
847 - Fix authorized_keys handling (don't crash on too-long keys, and
848   use fgetc not getc to avoid strange macro-related issues), thanks to
849   Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com> 
850   and Steve Rodgers <hwstar at cox.net> for reporting and testing.
852 - Fixes to the README with regard to uClibc systems, thanks to 
853   Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>,
854   as well as general improvements to documentation (split README/INSTALL)
856 - Fixed up some compilation problems with dropbearconvert/dropbearkey if
857   DSS or RSA were disabled, reported by Patrik Karlsson <patrik at cqure.net>
859 - Fix double-free bug for hostkeys, reported by
860   Vincent Sanders <vince at kyllikki.org>
862 - Fix up missing \ns from dropbearconvert help message,
863   thanks to Mordy Ovits <movits at bloomberg.com> for the patch
865 0.36 - Tue August 19 2003 12:16:23 +0800
867 - Fix uninitialised temporary variable in DSS signing code
868   (thanks to Matthew Franz <mdfranz at io.com> for reporting, and the authors
869   of Valgrind for making it easy to track down)
870 - Fix remote version-string parsing error
871   (thanks to Bernard Blackham <bernard at blackham.com.au> for noticing)
872 - Improved host-algorithm-matching algorithm in algo.c
873 - Decreased MAX_STRING_LEN to a more realistic value
874 - Fix incorrect version (0.34) in this CHANGES file for the previous release.
876 0.35 - Sun August 17 2003 05:37:47 +0800
878 - Fix for remotely exploitable format string buffer overflow.
879   (thanks to Joel Eriksson <je at bitnux.com>)
881 0.34 - Fri August 15 2003 15:10:00 +0800
883 - Made syslog optional, both at compile time and as a compile option
884   (suggested by Laurent Bercot <ska at skarnet.org>)
885 - Fixup for bad base64 parsing in authorized_keys
886   (noticed by Davyd Madeley <davyd at zdlcomputing.com>)
887 - Added initial tcp forwarding code, only -L (local) at this stage
888 - Improved "make install" with DESTDIR and changing ownership seperately,
889   don't check for setpgrp on Linux for crosscompiling.
890   (from Erik Andersen <andersen at codepoet.org>)
891 - More commenting, fix minor compile warnings, make return values more
892   consistent etc
893 - Various signedness fixes
894 - Can listen on multiple ports
895 - added option to disable openpty with configure script,
896   (from K.-P. Kirchdörfer <kapeka at epost.de>)
897 - Various cleanups to bignum code
898   (thanks to Tom St Denis <tomstdenis at iahu.ca>)
899 - Fix compile error when disabling RSA
900   (from Marc Kleine-Budde <kleine-budde at gmx.de>)
901 - Other cleanups, splitting large functions for packet and kex handling etc
903 0.33 - Sun June 22 2003 22:24:12 +0800
905 - Fixed some invalid assertions in the channel code, fixing the server dying
906   when forwarding X11 connections.
907 - Add dropbearconvert to convert to/from OpenSSH host keys and Dropbear keys
908 - RSA keys now keep p and q parameters for compatibility -- old Dropbear keys
909   still work, but can't be converted to OpenSSH etc.
910 - Debian packaging directory added, thanks to 
911   Grahame (grahame at angrygoats.net)
912 - 'install' target added to the makefile
913 - general tidying, improve consistency of functions etc
914 - If RSA or DSS hostkeys don't exist, that algorithm won't be used.
915 - Improved RSA and DSS key generation, more efficient and fixed some minor bugs
916   (thanks to Tom St Denis for the advice)
917 - Merged new versions of LibTomCrypt (0.86) and LibTomMath (0.21)
919 0.32 - Sat May 24 2003 12:44:11 +0800
921 - Don't compile unused code from libtomcrypt (test vectors etc)
922 - Updated to libtommath 0.17 and libtomcrypt 0.83. New libtommath results
923   in smaller binary size, due to not linking unrequired code
924 - X11 forwarding added
925 - Agent forwarding added (for OpenSSH.com ssh client/agent)
926 - Fix incorrect buffer freeing when banners are used
927 - Hostname resolution works
928 - Various minor bugfixes/code size improvements etc
930 0.31 - Fri May 9 2003 17:57:16 +0800
932 - Improved syslog messages - IP logging etc
933 - Strip control characters from log messages (specified username currently)
934 - Login recording (utmp/wtmp) support, so last/w/who work - taken from OpenSSH
935 - Shell is started as a proper login shell, so /etc/profile etc is sourced
936 - Ptys work on Solaris (2.8 x86 tested) now
937 - Fixed bug in specifying the rsa hostkey
938 - Fixed bug in compression code, could trigger if compression resulted in
939   larger output than input (uncommon but possible).
941 0.30 - Thu Apr 17 2003 18:46:15 +0800
943 - SECURITY: buffer.c had bad checking for buffer increment length - fixed
944 - channel code now closes properly on EOF - scp processes don't hang around
945 - syslog support added - improved auth/login/failure messages
946 - general code tidying, made return codes more consistent
947 - Makefile fixed for dependencies and makes libtomcrypt as well
948 - Implemented sending SSH_MSG_UNIMPLEMENTED :)
950 0.29 - Wed Apr 9 2003
952 - Fixed a stupid bug in 0.28 release, 'newstr = strdup(oldstr)',
953   not 'newstr=oldstr'
955 0.28 - Sun Apr 6 2003
957 - Initial public release
959 Development was started in October 2002