CHANGES 40.9 KB
Newer Older
Matt Johnston's avatar
Matt Johnston committed
1
2015.70 - 26 November 2015
Matt Johnston's avatar
2015.70    
Matt Johnston committed
2
3
4

- Fix server password authentication on Linux, broke in 2015.69

Matt Johnston's avatar
Matt Johnston committed
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2015.69 - 25 November 2015

- Fix crash when forwarded TCP connections fail to connect (bug introduced in 2015.68)

- Avoid hang on session close when multiple sessions are started, affects Qt Creator
  Patch from Andrzej Szombierski

- Reduce per-channel memory consumption in common case, increase default
  channel limit from 100 to 1000 which should improve SOCKS forwarding for modern
  webpages

- Handle multiple command line arguments in a single flag, thanks to Guilhem Moulin

- Manpage improvements from Guilhem Moulin

- Build fixes for Android from Mike Frysinger

- Don't display the MOTD when an explicit command is run from Guilhem Moulin

- Check curve25519 shared secret isn't zero

Matt Johnston's avatar
Matt Johnston committed
26
27
28
2015.68 - Saturday 8 August 2015

- Reduce local data copying for improved efficiency. Measured 30%
Matt Johnston's avatar
Matt Johnston committed
29
  increase in throughput for connections to localhost
30

Matt Johnston's avatar
Matt Johnston committed
31
32
33
34
35
36
37
38
39
- Forwarded TCP ports connect asynchronously and try all available addresses
  (IPv4, IPv6, round robin DNS)

- Fix all compile warnings, many patches from Gaël Portay
  Note that configure with -Werror may not be successful on some platforms (OS X)
  and some configuration options may still result in unused variable
  warnings.

- Use TCP Fast Open on Linux if available. Saves a round trip at connection
Matt Johnston's avatar
Matt Johnston committed
40
41
  to hosts that have previously been connected. 
  Needs a recent Linux kernel and possibly "sysctl -w net.ipv4.tcp_fastopen=3"
Matt Johnston's avatar
Matt Johnston committed
42
43
  Client side is disabled by default pending further compatibility testing
  with networks and systems.
Matt Johnston's avatar
Matt Johnston committed
44

Matt Johnston's avatar
Matt Johnston committed
45
- Increase maximum command length to 9000 bytes
Matt Johnston's avatar
Matt Johnston committed
46
47
48

- Free memory before exiting, patch from Thorsten Horstmann. Useful for
  Dropbear ports to embedded systems and for checking memory leaks
Matt Johnston's avatar
Matt Johnston committed
49
50
  with valgrind. Only partially implemented for dbclient.
  This is disabled by default, enable with DROPBEAR_CLEANUP in sysoptions.h
Matt Johnston's avatar
Matt Johnston committed
51

Matt Johnston's avatar
Matt Johnston committed
52
53
- DROPBEAR_DEFAULT_CLI_AUTHKEY setting now always prepends home directory unless
  there is a leading slash (~ isn't treated specially)
Matt Johnston's avatar
Matt Johnston committed
54

Matt Johnston's avatar
Matt Johnston committed
55
56
- Fix small ECC memory leaks

Matt Johnston's avatar
Matt Johnston committed
57
- Tighten validation of Diffie-Hellman parameters, from Florent Daigniere of
Matt Johnston's avatar
Matt Johnston committed
58
  Matta Consulting. Odds of bad values are around 2**-512 -- improbable.
Matt Johnston's avatar
Matt Johnston committed
59
60
61

- Twofish-ctr cipher is supported though disabled by default

Matt Johnston's avatar
Matt Johnston committed
62
63
64
- Fix pre-authentication timeout when waiting for client SSH-2.0 banner, thanks
  to CL Ouyang

Matt Johnston's avatar
Matt Johnston committed
65
66
- Fix null pointer crash with restrictions in authorized_keys without a command, patch from
  Guilhem Moulin
Matt Johnston's avatar
Matt Johnston committed
67

Matt Johnston's avatar
Matt Johnston committed
68
69
70
71
- Ensure authentication timeout is handled while reading the initial banner,
  thanks to CL Ouyang for finding it.

- Fix null pointer crash when handling bad ECC keys. Found by afl-fuzz
Matt Johnston's avatar
Matt Johnston committed
72

Matt Johnston's avatar
Matt Johnston committed
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
2015.67 - Wednesday 28 January 2015

- Call fsync() after generating private keys to ensure they aren't lost if a
  reboot occurs. Thanks to Peter Korsgaard

- Disable non-delayed zlib compression by default on the server. Can be
  enabled if required for old clients with DROPBEAR_SERVER_DELAY_ZLIB

- Default client key path ~/.ssh/id_dropbear

- Prefer stronger algorithms by default, from Fedor Brunner. 
  AES256 over 3DES
  Diffie-hellman group14 over group1

- Add option to disable CBC ciphers.

- Disable twofish in default options.h

- Enable sha2 HMAC algorithms by default, the code was already required
  for ECC key exchange. sha1 is the first preference still for performance. 

- Fix installing dropbear.8 in a separate build directory, from Like Ma

- Allow configure to succeed if libtomcrypt/libtommath are missing, from Elan Ruusamäe

- Don't crash if ssh-agent provides an unknown type of key. From Catalin Patulea

- Minor bug fixes, a few issues found by Coverity scan

Matt Johnston's avatar
Matt Johnston committed
102
103
104
105
106
107
108
109
110
111
112
113
114
2014.66 - Thursday 23 October 2014

- Use the same keepalive handling behaviour as OpenSSH. This will work better 
  with some SSH implementations that have different behaviour with unknown 
  message types.

- Don't reply with SSH_MSG_UNIMPLEMENTED when we receive a reply to our own 
  keepalive message

- Set $SSH_CLIENT to keep bash happy, patch from Ryan Cleere

- Fix wtmp which broke since 2013.62, patch from Whoopie

Matt Johnston's avatar
2014.64    
Matt Johnston committed
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
2014.65 - Friday 8 August 2014

- Fix 2014.64 regression, server session hang on exit with scp (and probably
  others), thanks to NiLuJe for tracking it down

- Fix 2014.64 regression, clock_gettime() error handling which broke on older
  Linux kernels, reported by NiLuJe

- Fix 2014.64 regression, writev() could occassionally fail with EAGAIN which
  wasn't caught

- Avoid error message when trying to set QoS on proxycommand or multihop pipes

- Use /usr/bin/xauth, thanks to Mike Frysinger

- Don't exit the client if the local user entry can't be found, thanks to iquaba

Matt Johnston's avatar
Matt Johnston committed
132
2014.64 - Sunday 27 July 2014
Matt Johnston's avatar
Matt Johnston committed
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157

- Fix compiling with ECDSA and DSS disabled

- Don't exit abruptly if too many outgoing packets are queued for writev(). Patch
  thanks to Ronny Meeus

- The -K keepalive option now behaves more like OpenSSH's "ServerAliveInterval". 
  If no response is received after 3 keepalives then the session is terminated. This
  will close connections faster than waiting for a TCP timeout.

- Rework TCP priority setting. New settings are
	if (connecting || ptys || x11) tos = LOWDELAY
	else if (tcp_forwards) tos = 0
	else tos = BULK
  Thanks to Catalin Patulea for the suggestion.

- Improve handling of many concurrent new TCP forwarded connections, should now
  be able to handle as many as MAX_CHANNELS. Thanks to Eduardo Silva for reporting
  and investigating it.

- Make sure that exit messages from the client are printed, regression in 2013.57

- Use monotonic clock where available, timeouts won't be affected by system time
  changes

Matt Johnston's avatar
Matt Johnston committed
158
159
- Add -V for version

Matt Johnston's avatar
Matt Johnston committed
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
2014.63 - Wednesday 19 February 2014

- Fix ~. to terminate a client interactive session after waking a laptop
  from sleep.

- Changed port separator syntax again, now using host^port. This is because
  IPv6 link-local addresses use %. Reported by Gui Iribarren

- Avoid constantly relinking dropbearmulti target, fix "make install"
  for multi target, thanks to Mike Frysinger

- Avoid getting stuck in a loop writing huge key files, reported by Bruno
  Thomsen

- Don't link dropbearkey or dropbearconvert to libz or libutil, 
  thanks to Nicolas Boos

- Fix linking -lcrypt on systems without /usr/lib, thanks to Nicolas Boos

- Avoid crash on exit due to cleaned up keys before last packets are sent,
  debugged by Ronald Wahl

- Fix a race condition in rekeying where Dropbear would exit if it received a
  still-in-flight packet after initiating rekeying. Reported by Oliver Metz.
  This is a longstanding bug but is triggered more easily since 2013.57

Matt Johnston's avatar
Matt Johnston committed
186
- Fix README for ecdsa keys, from Catalin Patulea
Matt Johnston's avatar
Matt Johnston committed
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203

- Ensure that generated RSA keys are always exactly the length
  requested. Previously Dropbear always generated N+16 or N+15 bit keys.
  Thanks to Unit 193

- Fix DROPBEAR_CLI_IMMEDIATE_AUTH mode which saves a network round trip if the
  first public key succeeds. Still not enabled by default, needs more
  compatibility testing with other implementations.

- Fix for port 0 forwarding in the client and port forwarding with Apache MINA SSHD. Thanks to 

- Fix for bad system linux/pkt-sched.h header file with older Linux
kernels, from Steve Dover

- Fix signal handlers so that errno is saved, thanks to Erik Ahlén for a patch
  and Mark Wickham for independently spotting the same problem.

Matt Johnston's avatar
2013.62    
Matt Johnston committed
204
205
206
207
208
209
210
211
212
213
214
215
2013.62 - Tuesday 3 December 2013

- Disable "interactive" QoS connection options when a connection doesn't
  have a PTY (eg scp, rsync). Thanks to Catalin Patulea for the patch.

- Log when a hostkey is generated with -R, fix some bugs in handling server
  hostkey commandline options

- Fix crash in Dropbearconvert and 521 bit key, reported by NiLuJe

- Update config.guess and config.sub again

Matt Johnston's avatar
Matt Johnston committed
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
2013.61test - Thursday 14 November 2013

- ECC (elliptic curve) support. Supports ECDSA hostkeys (requires new keys to
  be generated) and ECDH for setting up encryption keys (no intervention
  required). This is significantly faster.

- [email protected] support for setting up encryption keys. This is
  another elliptic curve mode with less potential of NSA interference in
  algorithm parameters. curve25519-donna code thanks to Adam Langley

- -R option to automatically generate hostkeys. This is recommended for
  embedded platforms since it allows the system random number device
  /dev/urandom a longer startup time to generate a secure seed before the
  hostkey is required.

- Compile fixes for old vendor compilers like Tru64 from Daniel Richard G.

Matt Johnston's avatar
2013.62    
Matt Johnston committed
233
234
235
- Make authorized_keys handling more robust, don't exit encountering
  malformed lines. Thanks to Lorin Hochstein and Mark Stillwell 

Matt Johnston's avatar
Matt Johnston committed
236
237
238
239
240
241
242
243
244
245
2013.60 - Wednesday 16 October 2013

- Fix "make install" so that it doesn't always install to /bin and /sbin

- Fix "make install MULTI=1", installing manpages failed

- Fix "make install" when scp is included since it has no manpage

- Make --disable-bundled-libtom work

Matt Johnston's avatar
Matt Johnston committed
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
2013.59 - Friday 4 October 2013

- Fix crash from -J command 
  Thanks to Lluís Batlle i Rossell and Arnaud Mouiche for patches

- Avoid reading too much from /proc/net/rt_cache since that causes
  system slowness. 

- Improve EOF handling for half-closed connections
  Thanks to Catalin Patulea

- Send a banner message to report PAM error messages intended for the user
  Patch from Martin Donnelly

- Limit the size of decompressed payloads, avoids memory exhaustion denial
  of service 
Matt Johnston's avatar
Matt Johnston committed
262
  Thanks to Logan Lamb for reporting and investigating it. CVE-2013-4421
Matt Johnston's avatar
Matt Johnston committed
263
264

- Avoid disclosing existence of valid users through inconsistent delays
Matt Johnston's avatar
Matt Johnston committed
265
  Thanks to Logan Lamb for reporting. CVE-2013-4434
Matt Johnston's avatar
Matt Johnston committed
266
267
268
269
270
271
272
273
274
275
276
277

- Update config.guess and config.sub for newer architectures

- Avoid segfault in server for locked accounts

- "make install" now installs manpages
  dropbearkey.8 has been renamed to dropbearkey.1
  manpage added for dropbearconvert

- Get rid of one second delay when running non-interactive commands


Matt Johnston's avatar
2013.58    
Matt Johnston committed
278
279
280
281
282
283
284
285
286
287
288
2013.58 - Thursday 18 April 2013

- Fix building with Zlib disabled, thanks to Hans Harder and [email protected]

- Use % as a separator for ports, fixes scp in multihop mode, from Hans Harder

- Reject logins for other users when running as non-root, from Hans Harder

- Disable client immediate authentication request by default, it prevents
  passwordless logins from working

Matt Johnston's avatar
Matt Johnston committed
289
2013.57 - Monday 15 April 2013
290

Matt Johnston's avatar
Matt Johnston committed
291
292
- Decreased connection setup time particularly with high latency connections,
  the number of round trips has been reduced for both client and server. 
293
294
  CPU time hasn't been changed.

Matt Johnston's avatar
Matt Johnston committed
295
296
297
298
- Client will send an initial key exchange guess to save a round trip.
  Dropbear implements an extension [email protected] to allow the first
  packet guess to succeed in wider circumstances than the standard behaviour.
  When communicating with other implementations the standard behaviour is used.
299
300

- Client side: when public key or password authentication with
Matt Johnston's avatar
Matt Johnston committed
301
  $DROPBEAR_PASSWORD is used an initial authentication request will
302
303
304
305
306
307
308
309
  be sent immediately rather than querying the list of available methods.
  This behaviour is enabled by CLI_IMMEDIATE_AUTH option (on by default),
  please let the Dropbear author know if it causes any interoperability
  problems.

- Implement client escape characters ~. (terminate session) and 
  ~^Z (background session)

Matt Johnston's avatar
Matt Johnston committed
310
- Server will more reliably clean up utmp when connection is closed, reported by
Matt Johnston's avatar
Matt Johnston committed
311
  Mattias Walström
312
313
314
315
316
317
318

- Don't crash if /dev/urandom isn't writable (RHEL5), thanks to Scott Case

- Add "-y -y" client option to skip host key checking, thanks to Hans Harder

- scp didn't work properly on systems using vfork(), thanks to Frank Van Uffelen

Matt Johnston's avatar
Matt Johnston committed
319
320
- Added IUTF8 terminal mode support (Linux and Mac OS). Not standardised yet
though probably will be soon
321
322

- Some verbose DROPBEAR_TRACE output is now hidden unless $DROPBEAR_TRACE2
Matt Johnston's avatar
Matt Johnston committed
323
324
325
326
327
  enviroment variable is set

- Fix using asymmetric MAC algorithms (broke in )

- Renamed configure.in to configure.ac to quieten autoconf, from Mike Frysinger
328

Matt Johnston's avatar
Matt Johnston committed
329
2013.56 - Thursday 21 March 2013
Matt Johnston's avatar
Matt Johnston committed
330

Matt Johnston's avatar
Matt Johnston committed
331
332
- Allow specifying cipher (-c) and MAC (-m) lists for dbclient

Matt Johnston's avatar
Matt Johnston committed
333
334
- Allow using 'none' cipher or MAC (off by default, use options.h). Encryption
  is used during authentication then disabled, similar to OpenSSH HPN mode
Matt Johnston's avatar
Matt Johnston committed
335
336
337
338
339

- Allow a user in immediately if the account has a blank password and blank
  passwords are enabled

- Include a few extra sources of entropy from /proc on Linux, hash private keys
Matt Johnston's avatar
Matt Johnston committed
340
  as well. Dropbear will also write gathered entropy back into /dev/urandom
Matt Johnston's avatar
Matt Johnston committed
341

Matt Johnston's avatar
Matt Johnston committed
342
- Added hmac-sha2-256 and hmac-sha2-512 support (off by default, use options.h)
Matt Johnston's avatar
Matt Johnston committed
343

Matt Johnston's avatar
Matt Johnston committed
344
345
- Don't sent bad address "localhost" for -R forward connections, 
  reported by Denis Bider
Matt Johnston's avatar
Matt Johnston committed
346
347
348

- Add "-B" runtime option to allow blank passwords

Matt Johnston's avatar
Matt Johnston committed
349
350
- Allow using IPv6 bracket notation for addresses in server "-p" option, from Ben Jencks

Matt Johnston's avatar
Matt Johnston committed
351
- A few improvements for Android from Reimar Döffinger
Matt Johnston's avatar
Matt Johnston committed
352
353

- Fix memory leak for TCP forwarded connections to hosts that timed out,
Matt Johnston's avatar
Matt Johnston committed
354
  reported by Norbert Benczúr. Appears to be a very long-standing bug.
Matt Johnston's avatar
Matt Johnston committed
355

Matt Johnston's avatar
Matt Johnston committed
356
357
358
359
- Fix "make clean" for out of tree builds

- Fix compilation when ENABLE_{SVR,CLI}_AGENTFWD are unset

Matt Johnston's avatar
2012.55    
Matt Johnston committed
360
361
2012.55 - Wednesday 22 February 2012

Matt Johnston's avatar
Matt Johnston committed
362
363
364
365
366
367
- Security: Fix use-after-free bug that could be triggered if command="..."
  authorized_keys restrictions are used.  Could allow arbitrary code execution
  or bypass of the command="..." restriction to an authenticated user.
  This bug affects releases 0.52 onwards. Ref CVE-2012-0920.
  Thanks to Danny Fullerton of Mantor Organization for reporting
  the bug.
Matt Johnston's avatar
2012.55    
Matt Johnston committed
368
369
370
371

- Compile fix, only apply IPV6 socket options if they are available in headers
  Thanks to Gustavo Zacarias for the patch

Matt Johnston's avatar
Matt Johnston committed
372
- Overwrite session key memory on exit
Matt Johnston's avatar
2012.55    
Matt Johnston committed
373
374
375
376
377
378

- Fix minor memory leak in unusual PAM authentication configurations.
  Thanks to Stathis Voukelatos

- Other small code cleanups

379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
2011.54 - Tuesday 8 November 2011

- Building statically works again, broke in 0.53 and 0.53.1

- Fix crash when forwarding with -R

- Fixed various leaks found by Klocwork analysis software, thanks to them for
  running it

- Set IPTOS_LOWDELAY for IPv6, thanks to Dave Taht

- Bind to sockets with IPV6_V6ONLY so that it works properly on systems
  regardless of the system-wide setting

- Added ALLOW_BLANK_PASSWORD option. Dropbear also now allows public key logins
  to accounts with a blank password. Thanks to Rob Landley

- Fixed case where "-K 1" keepalive for dbclient would cause a SSH_MSG_IGNORE
  packet to be sent

- Avoid some memory allocations in big number maths routines, improves
  performance slightly

- Fix symlink target for installdropbearmulti with DESTDIR set, thanks to
  Scottie Shore

- When requesting server allocated remote ports (-R 0:host:port) print a
  message informing what the port is, thanks to Ali Onur Uyar.

- New version numbering scheme.

Source repository has now migrated to Mercurial at 
https://secure.ucc.asn.au/hg/dropbear/graph/default

Matt Johnston's avatar
Matt Johnston committed
413
0.53.1 - Wednesday 2 March 2011
414
415
416

- -lcrypt needs to be before object files for static linking

Matt Johnston's avatar
Matt Johnston committed
417
418
419
420
421
422
- Compile fix when both client and agent forwarding are disabled

- Fix DROPBEAR_PRNGD_SOCKET mode

- Don't allow setting zlib memLevel since it seems buggy

423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
0.53 - Thurs 24 February 2011

- Various performance/memory use improvements

- Client agent forwarding now works, using OpenSSH's ssh-agent

- Improve robustness of client multihop mode

- Fix a prime generation bug in bundled libtommath. This is unlikely to have
  generated any bad keys in the wild.
  See 
  https://bugzilla.redhat.com/show_bug.cgi?id=615088
  http://bugs.gentoo.org/show_bug.cgi?id=328383
  http://bugs.gentoo.org/show_bug.cgi?id=328409

- Attempt to build against system libtomcrypt/libtommath if available. This
  can be disabled with ./configure --enable-bundled-libtom

- Make -K (keepalive) and -I (idle timeout) work together sensibly in the client.
  The idle timeout is no longer reset by SSH_MSG_IGNORE packets.

444
445
- Add diffie-hellman-group14-sha1 key exchange method

446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
- Compile fix if ENABLE_CLI_PROXYCMD is disabled

- /usr/bin/X11/xauth is now the default path

- Client remote forward (-L/-R) arguments now accept a listen address

- In uClinux avoid trashing the parent process when a session exits

- Blowfish is now disabled by default since it has large memory usage

- Add option to change zlib windowbits/memlevel. Use less memory by default

- DROPBEAR_SMALL_CODE is now disabled by default

- SSH_ORIGINAL_COMMAND environment variable is set by the server when an
  authorized_keys command is specified.

- Set SSH_TTY and SSH_CONNECTION environment variables in the server

- Client banner is now printed to standard error rather than standard output

- Capitalisation in many log messages has been made consistent. This may affect
  scripts that parse logfiles.

Matt Johnston's avatar
Matt Johnston committed
470
0.52 - Wed 12 November 2008
471
472
473
474
475
476
477
478
479
480
481
482
483

- Add "netcat-alike" option (-B) to dbclient, allowing Dropbear to tunnel
  standard input/output to a TCP port-forwarded remote host.

- Add "proxy command" support to dbclient, to allow using a spawned process for
  IO rather than a direct TCP connection. eg
	  dbclient remotehost
  is equivalent to
	  dbclient -J 'nc remotehost 22' remotehost
  (the hostname is still provided purely for looking up saved host keys)

- Combine netcat-alike and proxy support to allow "multihop" connections, with
  comma-separated host syntax.  Allows running
Matt Johnston's avatar
Matt Johnston committed
484

485
	  dbclient [email protected],[email protected],[email protected]
Matt Johnston's avatar
Matt Johnston committed
486

487
488
489
  to end up at host3 via the other two, using SSH TCP forwarding. It's a bit
  like onion-routing. All connections are established from the local machine.
  The comma-separated syntax can also be used for scp/rsync, eg
Matt Johnston's avatar
Matt Johnston committed
490

491
	  rsync -a -e dbclient [email protected],[email protected],martello:/home/matt/ ~/backup/
Matt Johnston's avatar
Matt Johnston committed
492

493
494
  to bounce through a few hosts.

Matt Johnston's avatar
Matt Johnston committed
495
496
- Add -I "idle timeout" option (contributed by Farrell Aultman)

497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
- Allow restrictions on authorized_keys logins such as restricting commands
  to be run etc. This is a subset of those allowed by OpenSSH, doesn't
  yet allow restricting source host.

- Use vfork() for scp on uClinux

- Default to PATH=/usr/bin:/bin for shells.

- Report errors if -R forwarding fails

- Add counter mode cipher support, which avoids some security problems with the
  standard CBC mode.

- Support [email protected] delayed compression for client/server. It can be
  required for the Dropbear server with the '-Z' option. This is useful for
  security as it avoids exposing the server to attacks on zlib by
  unauthenticated remote users, though requires client side support.

- options.h has been split into options.h (user-changable) and sysoptions.h
  (less commonly changed)

- Support "dbclient -s sftp" to specify a subsystem

- Fix a bug in replies to channel requests that could be triggered by recent
  versions of PuTTY

Matt Johnston's avatar
0.51    
Matt Johnston committed
523
0.51 - Thu 27 March 2008
Matt Johnston's avatar
Matt Johnston committed
524
525
526
527
528
529
530
531

- Make a copy of password fields rather erroneously relying on getwpnam()
  to be safe to call multiple times

- If $SSH_ASKPASS_ALWAYS environment variable is set (and $SSH_ASKPASS is
  as well) always use that program, ignoring isatty() and $DISPLAY

- Wait until a process exits before the server closes a connection, so
Matt Johnston's avatar
0.51    
Matt Johnston committed
532
533
  that an exit code can be sent. This fixes problems with exit codes not
  being returned, which could cause scp to fail.
Matt Johnston's avatar
Matt Johnston committed
534

Matt Johnston's avatar
Matt Johnston committed
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
0.50 - Wed 8 August 2007

- Add DROPBEAR_PASSWORD environment variable to specify a dbclient password

- Use /dev/urandom by default, since that's what everyone does anyway

- Correct vfork() use for uClinux in scp
  (thanks to Alex Landau)

- Exit with an exit code of 1 if dropbear can't bind to any ports
  (thanks to Nicolai Ehemann)

- Improve network performance and add a -W <receive_window> argument for
  adjusting the tradeoff between network performance and memory consumption.

- Fix a problem where reply packets could be sent during key exchange,
  in violation of the SSH spec. This could manifest itself with connections
  being terminated after 8 hours with new TCP-forward connections being
  established.

- Add -K <keepalive_time> argument, ensuring that data is transmitted
  over the connection at least every N seconds.

558
559
560
561
- dropbearkey will no longer generate DSS keys of sizes other than 1024
  bits, as required by the DSS specification. (Other sizes are still
  accepted for use to provide backwards compatibility).

Matt Johnston's avatar
Matt Johnston committed
562
563
564
565
0.49 - Fri 23 February 2007

- Security: dbclient previously would prompt to confirm a 
  mismatching hostkey but wouldn't warn loudly. It will now
Matt Johnston's avatar
Matt Johnston committed
566
  exit upon a mismatch. CVE-2007-1099
Matt Johnston's avatar
Matt Johnston committed
567
568
569
570

- Compile fixes, make sure that all variable definitions are at the start
  of a scope.

Matt Johnston's avatar
Matt Johnston committed
571
- Added -P pidfile argument to the server (from Swen Schillig)
Matt Johnston's avatar
Matt Johnston committed
572
573
574
575
576

- Add -N dbclient option for "no command"

- Add -f dbclient option for "background after auth"

Matt Johnston's avatar
Matt Johnston committed
577
578
579
- Add ability to limit binding to particular addresses, use 
  -p [address:]port, patch from Max-Gerd Retzlaff.

Matt Johnston's avatar
Matt Johnston committed
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
- Try to finally fix ss_family compilation problems (for old
  glibc systems)

- Fix finding relative-path server hostkeys when running daemonized

- Use $HOME in preference to that from /etc/passwd, so that
  dbclient can still work on broken systems.

- Fix various issues found by Klocwork defect analysis, mostly memory leaks
  and error-handling. Thanks to Klocwork for their service.

- Improve building in a separate directory

- Add compile-time LOG_COMMANDS option to log user commands

- Add '-y' flag to dbclient to unconditionally accept host keys,
  patch from Luciano Miguel Ferreira Rocha

- Return immediately for "sleep 10 & echo foo", rather than waiting
  for the sleep to return (pointed out by Rob Landley).
  
- Avoid hanging after exit in certain cases (such as scp)

- Various minor fixes, in particular various leaks reported by
  Erik Hovland
  
- Disable core dumps on startup

- Don't erase over every single buffer, since it was a bottleneck.
  On systems where it really matters, encrypted swap should be utilised.

- Read /dev/[u]random only once at startup to conserve kernel entropy

- Upgrade to LibTomCrypt 1.16 and LibTomMath 0.40

- Upgrade config.status and config.guess 
Matt Johnston's avatar
Matt Johnston committed
616

Matt Johnston's avatar
0.48.1    
Matt Johnston committed
617
618
619
620
0.48.1 - Sat 11 March 2006

- Compile fix for scp

Matt Johnston's avatar
Matt Johnston committed
621
0.48 - Thurs 9 March 2006
Matt Johnston's avatar
Matt Johnston committed
622
623
624
625
626
627

- Check that the circular buffer is properly empty before
  closing a channel, which could cause truncated transfers
  (thanks to Tomas Vanek for helping track it down)

- Implement per-IP pre-authentication connection limits 
Matt Johnston's avatar
Matt Johnston committed
628
  (after some poking from Pablo Fernandez) CVE-2006-1206
Matt Johnston's avatar
Matt Johnston committed
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643

- Exit gracefully if trying to connect to as SSH v1 server 
  (reported by Rushi Lala)

- Only read /dev/random once at startup when in non-inetd mode

- Allow ctrl-c to close a dbclient password prompt (may
  still have to press enter on some platforms)

- Merged in uClinux patch for inetd mode

- Updated to scp from OpenSSH 4.3p2 - fixes a security issue
  where use of system() could cause users to execute arbitrary
  code through malformed filenames, ref CVE-2006-0225

644
645
646
647
648
0.47 - Thurs Dec 8 2005

- SECURITY: fix for buffer allocation error in server code, could potentially
  allow authenticated users to gain elevated privileges. All multi-user systems
  running the server should upgrade (or apply the patch available on the
Matt Johnston's avatar
Matt Johnston committed
649
  Dropbear webpage). CVE-2005-4178
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679

- Fix channel handling code so that redirecting to /dev/null doesn't use
  100% CPU.

- Turn on zlib compression for dbclient.

- Set "low delay" TOS bit, can significantly improve interactivity
  over some links.

- Added client keyboard-interactive mode support, allows operation with
  newer OpenSSH servers in default config.

- Log when pubkey auth fails because of bad ~/.ssh/authorized_keys permissions

- Improve logging of assertions

- Added aes-256 cipher and sha1-96 hmac.

- Fix twofish so that it actually works.

- Improve PAM prompt comparison.

- Added -g (dbclient) and -a (dropbear server) options to allow
  connections to listening forwarded ports from remote machines.

- Various other minor fixes

- Compile fixes for glibc 2.1 (ss_family vs __ss_family) and NetBSD
  (netinet/in_systm.h needs to be included).

Matt Johnston's avatar
Matt Johnston committed
680
0.46 - Sat July 9 2005
Matt Johnston's avatar
Matt Johnston committed
681
682
683
684

- Fix long-standing bug which caused connections to be closed if an ssh-agent
  socket was no longer available

Matt Johnston's avatar
Matt Johnston committed
685
- Print a warning if we seem to be blocking on /dev/random 
Matt Johnston's avatar
Matt Johnston committed
686
687
  (suggested by Paul Fox)

Matt Johnston's avatar
Matt Johnston committed
688
- Fixed a memory leak in DSS code (thanks to Boris Berezovsky for the patch)
Matt Johnston's avatar
Matt Johnston committed
689
690

- dbclient -L no longer segfaults, allocate correct buffer size (thanks
Matt Johnston's avatar
Matt Johnston committed
691
692
  to David Cook for reporting it, and Christopher Faylor for independently
  sending in a patch)
Matt Johnston's avatar
Matt Johnston committed
693

Matt Johnston's avatar
Matt Johnston committed
694
- Added RSA blinding to signing code (suggested by Dan Kaminsky)
Matt Johnston's avatar
Matt Johnston committed
695

Matt Johnston's avatar
Matt Johnston committed
696
- Rearranged bignum reading/random generation code
Matt Johnston's avatar
Matt Johnston committed
697
698
699
700
701

- Reset the non-blocking status on stderr and stdout as well as stdin,
  fixes a problem where the shell running dbclient will exit (thanks to 
  Brent Roman for reporting it)

Matt Johnston's avatar
Matt Johnston committed
702
- Fix so that all file descriptors are closed so the child shell doesn't
Matt Johnston's avatar
Matt Johnston committed
703
704
  inherit descriptors (thanks to Linden May for the patch)

Matt Johnston's avatar
Matt Johnston committed
705
- Change signkey.c to avoid gcc 4 generating incorrect code
Matt Johnston's avatar
Matt Johnston committed
706

707
708
709
- After both sides of a file descriptor have been shutdown(), close()
  it to avoid leaking descriptors (thanks to Ari Hyttinen for a patch)

Matt Johnston's avatar
Matt Johnston committed
710
711
- Update to LibTomCrypt 1.05 and LibTomMath 0.35

Matt Johnston's avatar
Matt Johnston committed
712
713
714
715
716
717
718
719
720
721
722
723
724
0.45 - Mon March 7 2005

- Makefile no longer appends 'static' to statically linked binaries

- Add optional SSH_ASKPASS support to the client

- Respect HOST_LOOKUP option

- Fix accidentally removed "return;" statement which was removed in 0.44
  (causing clients which sent an empty terminal-modes string to fail to
  connect - including pssh, ssh.com, danger hiptop). (patches
  independently from Paul Fox, David Horwitt and Sven-Ola Tuecke)

725
726
727
- Read "y/n" response for fingerprints from /dev/tty directly so that dbclient
  will work with scp.

Matt Johnston's avatar
Matt Johnston committed
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
0.44 - Mon Jan 3 2005

- SECURITY: Fix for PAM auth so that usernames are logged and conversation
  function responses are allocated correctly - all 0.44test4 users with PAM
  compiled in (not default) are advised to upgrade.

- Fix calls to getnameinfo() for compatibility with Solaris

- Pristine compilation works (run 'configure' from a fresh dir and make it
  there)

- Fixes for compiling with most options disabled.

- Upgraded to LibTomCrypt 0.99 and LibTomMath 0.32

- Make sure that zeroing out of values in LTM and LTC won't get optimised away

- Removed unused functions from loginrec.c

- /dev/random is now the default entropy source rather than /dev/urandom

- Logging of IPs in auth success/failure messages for improved greppability
Matt Johnston's avatar
Matt Johnston committed
750
751
752
753
754

- Fix dbclient so that "scp -i keyfile" works. (It can handle "-ikeyfile
  properly)

- Avoid a race in server shell-handling code which prevents the exit-code
Matt Johnston's avatar
Matt Johnston committed
755
  from being returned to the client in some circumstances.
Matt Johnston's avatar
Matt Johnston committed
756
757
758
759

- Makefile modified so that install target works correctly (doesn't try
  to install "all" binary) - patch from Juergen Daubert

Matt Johnston's avatar
Matt Johnston committed
760
761
762
- Various minor fixes and compile warnings.

0.44test4 - Tue Sept 14 2004 21:15:54 +0800
Matt Johnston's avatar
Matt Johnston committed
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780

- Fix inetd mode so it actually loads the hostkeys (oops)

- Changed DROPBEAR_DEFPORT properly everywhere

- Fix a small memory leak in the auth code

- WCOREDUMP is only used on systems which support it (ie not cygwin or AIX)

- Check (and fail for) cases when we can't negotiate algorithms with the
  remote side successfully (rather than bombing out ungracefully)

- Handle authorized_keys files without a terminating newline

- Fiddle the channel receive window size for possibly better performance

- Added in the PAM authentication code (finally! thanks to Martin Carlsson)

781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
0.44test3 - Fri Aug 27 22:20:54 +0800

- Fixed a bunch of warnings.

- scp works correctly when passed a username (fix for the dbclient program
  itself as well, "-lmatt" works as well as "-l matt").

- Remove unrequired debian files

- Exit with the remote process's return code for dbclient

- Display stderr messages from the server in the client

- Add circular buffering to the channel code. This should dramatically reduce
  the amount of backtraffic sent in response to traffic incoming to the
  Dropbear end - improves high-latency performance (ie dialup).

- Various other related channel-handling fixups.

- Allow leading lines in the banner when connecting to servers

- Fixed printing out errors onto the network socket with stderr (for inetd
  mode when using xinetd)

- Remove obselete documentation

- Fix a null-pointer exception when trying to free non-existant listeners
  at cleanup.

- DEBUG_TRACE now only works if you add "-v" to the program commandline

- Don't leave stdin non-blocking on exit - this caused the parent shell
  of dbclient to close when dbclient exited, for some shells in BusyBox

- Server connections no longer timeout after 5 minutes

- Fixed stupid DSS hostkey typo (server couldn't load host keys)

819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
0.44test2 - Tues Aug 17 2004 17:43:54 +0800

- Fix up dropbearmulti targets in the Makefile - symlinks are now created

- Compile fake-rfc2553 even with dropbearconvert/dropbearkey - this 
  allows them to work on platforms without a native getaddrinfo()

- Create ~/.ssh/known_hosts properly if it doesn't exist

- Fix basename() function prototype

- Backport some local changes (more #ifdefs for termcodes.c, a fix for missing
  defines on AIX).

- Let dbclient be run as "ssh"

- Initialise mp_ints by default

0.44test1 - Sun Aug 16 2005 17:43:54 +0800
Matt Johnston's avatar
Matt Johnston committed
838
839
840
841
842
843
844
845
846
847
848
849
850

- TESTING RELEASE - this is the first public release of the client codebase,
  so there are sure to be bugs to be found. In addition, if you're just using
  the server portion, the final binary size probably will increase - I'll
  be trying to get it back down in future releases.

- Dropbear client added - lots of changes to the server code as well to 
  generalise things

- IPv6 support added for client, server, and forwarding

- New makefile with more generic support for multiple-program binaries

Matt Johnston's avatar
Matt Johnston committed
851
852
853
854
855
0.43 - Fri Jul 16 2004 17:44:54 +0800

- SECURITY: Don't try to free() uninitialised variables in DSS verification
  code. Thanks to Arne Bernin for pointing out this bug. This is possibly
  exploitable, all users with DSS and pubkey-auth compiled in are advised to
Matt Johnston's avatar
Matt Johnston committed
856
  upgrade. CVE-2004-2486
Matt Johnston's avatar
Matt Johnston committed
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910

- Clean up agent forwarding socket files correctly, patch from Gerrit Pape.

- Don't go into an infinite loop when portforwarding to servers which don't
  send any initial data/banner. Patch from Nikola Vladov

- Fix for network vs. host byte order in logging remote TCP ports, also
  from Gerrit Pape.

- Initialise many pointers to NULL, for general safety. Also checked cleanup
  code for mp_ints (related to security issues above).

0.42 - Wed Jun 16 2004 12:44:54 +0800

- Updated to Gerrit Pape's official Debian subdirectory

- Fixed bad check when opening /dev/urandom - thanks to Danny Sung.

- Added -i inetd mode flag, and associated options in options.h . Dropbear
  can be compiled with either normal mode, inetd, or both modes. Thanks
  to Gerrit Pape for basic patch and motivation.

- Use <dirent.h> rather than <sys/dir.h> for POSIX compliance. Thanks to Bill
  Sommerfield.

- Fixed a TCP forwarding (client-local, -L style) bug which caused the whole
  session to close if the TCP connection failed. Thanks to Andrew Braund for
  reporting it and helping track it down.

- Re-enable sigpipe for child processes. Thanks to Gerrit Pape for some
  suggestions, and BSD manpages for a clearer explanation of the behaviour.

- Added manpages, thanks to Gerrit Pape.

- Changed license text for LibTomCrypt and LibTomMath.

- Added strip-static target

- Fixed a bug in agent-forwarding cleanup handler - would segfault
  (dereferencing a null pointer) if agent forwarding had failed.

- Fix behaviour of authorized_keys parsing, so larger (>1024 bit) DSA keys will
  work. Thanks to Dr. Markus Waldeck for the report. 

- Fixed local port forwarding code so that the "-j" option will make forwarding
  attempts fail more gracefully.

- 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
  isn't available. Thanks to Stirling Westrup for the report.

- Updated to LibTomCrypt 0.96 and LibTomMath 0.30. The AES code now uses
  smaller non-precomputed tables if DROPBEAR_SMALL_CODE is defined in
  options.h, leading to a significant reduction in the binary size.

911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
0.41 - Mon Jan 19 2004 22:40:19 +0800

- Fix in configure so that cross-compiling works, thanks to numerous people for
  reporting and testing

- Terminal mode parsing now handles empty terminal mode strings (sent by
  Windows ssh.com clients), thanks to Ricardo Derbes for the report

- Handling is improved for users with no shell specified in /etc/passwd,
  thanks again to Ricardo Derbes

- Fix for compiling with --disable-syslog, thanks to gordonfh

- Various minor fixes allow scp to work with irix, thanks to Paul Marinceu for
  fixing it up

- Use <stropts.h> not <sys/stropts.h>, since the former seems more common

0.40 - Tue Jan 13 2004 21:05:19 +0800

- Remote TCP forwarding (-R) style implemented

- Local and remote TCP forwarding can each be disabled at runtime (-k and -j
  switches)

- Fix for problems detecting openpty() with uClibc - many thanks to various
  people for reporting and testing fixes, including (in random order) Cristian
  Ionescu-Idbohrn, James Ewing, Steve Dover, Thomas Lundquist and Frederic
  Lavernhe

- Improved portability for IRIX, thanks to Paul Marinceu

- AIX and HPUX portability fixes, thanks to Darren Tucker for patches

- prngd should now work correctly, thanks to Darren Tucker for the patch

- scp compilation on systems without strlcpy() is fixed, thanks to Peter
  Jannesen and David Muse for reporting it (independently and simultaneously :)

- Merged in new LibTomCrypt 0.92 and LibTomMath 0.28

0.39 - Tue Dec 16 2003 15:19:19 +0800

- Better checking of key lengths and parameters for DSS and RSA auth

- Print fingerprint of keys used for pubkey auth

- More consistent logging of usernames and IPs

- Added option to disable password auth (or just for root) at runtime

- Avoid including bignum functions which don't give much speed benefit but
  take up binary size

- Added a stripped down version of OpenSSH's scp binary

- Added additional supporting functions for Irix, thanks to Paul Marinceu

- Don't check for unused libraries in configure script

- Removed trailing comma in algorithm lists (thanks to Mihnea Stoenescu)

- Fixed up channel close handling, always send close packet in response
  (also thanks to Mihnea Stoenescu)

- Various makefile improvements for cross-compiling, thanks to Friedrich
  Lobenstock and Mihnea Stoenescu

- Use daemon() function if available (or our own copy) rather than separate
Matt Johnston's avatar
Matt Johnston committed
980
  code (thanks to Frédéric Lavernhe for the report and debugging, and Bernard
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
  Blackham for his suggestion on what to look at)

- Fixed up support for first_kex_packet_follows, required to talk to ssh.com
  clients. Thanks to Marian Stagarescu for the bug report.

- Avoid using MAXPATHLEN, pointer from Ian Morris

- Improved input sanity checking

0.38 - Sat Oct 11 2003 16:28:13 +0800

- Default hostkey path changed to /etc/dropbear/dropbear_{rsa,dss}_host_key
  rather than /etc/dropbear_{rsa,dss}_host_key

- Added SMALL and MULTI text files which have info on compiling for multiple
  binaries or small binaries

- Allow for commandline definition of some options.h settings
  (without warnings)

- Be more careful handling EINTR

- More fixes for channel closing

- Added multi-binary support

- Improved logging of IPs, now get logged in all cases

- Don't chew cpu when waiting for version identification string, also
  make sure that we kick off people if they don't auth within 5 minutes.

- Various small fixes, warnings etc

- Display MOTD if requested - suggested by
  Trent Lloyd <lathiat at sixlabs.org> and
  Zach White <zwhite at darkstar.frop.org>

- sftp support works (relies on OpenSSH sftp binary or similar)

- Added --disable-shadow option (requested by the floppyfw guys)

0.37 - Wed Sept 24 2003 19:42:12 +0800

- Various portability fixes, fixes for Solaris 9, Tru64 5.1, Mac OS X 10.2,
  AIX, BSDs

- Updated LibTomMath to 0.27 and LibTomCrypt to 0.90

- Renamed util.{c,h} to dbutil.{c,h} to avoid conflicts with system util.h

- Added some small changes so it'll work with AIX (plus Linux Affinity).
  Thanks to Shig for them.

- Improved the closing messages, so a clean exit is "Exited normally"

- Added some more robust integer/size checking in buffer.c as a backstop for
  integer overflows

- X11 forwarding fixed for OSX, path for xauth changed to /usr/X11R6/bin/xauth

- Channel code handles closing more nicely, doesn't sit waiting for an extra
  keystroke on BSD/OSX platforms, and data is flushed fully before closing
  child processes (thanks to 
  Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com> for
  pointing that out).

- Changed "DISABLE_TCPFWD" to "ENABLE_TCPFWD" (and for x11/auth) so
  "disable DISABLE_TCPWD" isn't so confusing.

- Fix authorized_keys handling (don't crash on too-long keys, and
  use fgetc not getc to avoid strange macro-related issues), thanks to
  Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com> 
  and Steve Rodgers <hwstar at cox.net> for reporting and testing.

- Fixes to the README with regard to uClibc systems, thanks to 
  Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>,
  as well as general improvements to documentation (split README/INSTALL)

- Fixed up some compilation problems with dropbearconvert/dropbearkey if
  DSS or RSA were disabled, reported by Patrik Karlsson <patrik at cqure.net>

- Fix double-free bug for hostkeys, reported by
  Vincent Sanders <vince at kyllikki.org>

- Fix up missing \ns from dropbearconvert help message,
  thanks to Mordy Ovits <movits at bloomberg.com> for the patch

0.36 - Tue August 19 2003 12:16:23 +0800

- Fix uninitialised temporary variable in DSS signing code
  (thanks to Matthew Franz <mdfranz at io.com> for reporting, and the authors
  of Valgrind for making it easy to track down)
- Fix remote version-string parsing error
  (thanks to Bernard Blackham <bernard at blackham.com.au> for noticing)
- Improved host-algorithm-matching algorithm in algo.c
- Decreased MAX_STRING_LEN to a more realistic value
- Fix incorrect version (0.34) in this CHANGES file for the previous release.

0.35 - Sun August 17 2003 05:37:47 +0800

- Fix for remotely exploitable format string buffer overflow.
  (thanks to Joel Eriksson <je at bitnux.com>)

0.34 - Fri August 15 2003 15:10:00 +0800

- Made syslog optional, both at compile time and as a compile option
  (suggested by Laurent Bercot <ska at skarnet.org>)
- Fixup for bad base64 parsing in authorized_keys
  (noticed by Davyd Madeley <davyd at zdlcomputing.com>)
- Added initial tcp forwarding code, only -L (local) at this stage
- Improved "make install" with DESTDIR and changing ownership seperately,
  don't check for setpgrp on Linux for crosscompiling.
  (from Erik Andersen <andersen at codepoet.org>)
- More commenting, fix minor compile warnings, make return values more
  consistent etc
- Various signedness fixes
- Can listen on multiple ports
- added option to disable openpty with configure script,
Matt Johnston's avatar
Matt Johnston committed
1099
  (from K.-P. Kirchdörfer <kapeka at epost.de>)
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
- Various cleanups to bignum code
  (thanks to Tom St Denis <tomstdenis at iahu.ca>)
- Fix compile error when disabling RSA
  (from Marc Kleine-Budde <kleine-budde at gmx.de>)
- Other cleanups, splitting large functions for packet and kex handling etc

0.33 - Sun June 22 2003 22:24:12 +0800

- Fixed some invalid assertions in the channel code, fixing the server dying
  when forwarding X11 connections.
- Add dropbearconvert to convert to/from OpenSSH host keys and Dropbear keys
- RSA keys now keep p and q parameters for compatibility -- old Dropbear keys
  still work, but can't be converted to OpenSSH etc.
- Debian packaging directory added, thanks to 
  Grahame (grahame at angrygoats.net)
- 'install' target added to the makefile
- general tidying, improve consistency of functions etc
- If RSA or DSS hostkeys don't exist, that algorithm won't be used.
- Improved RSA and DSS key generation, more efficient and fixed some minor bugs
  (thanks to Tom St Denis for the advice)
- Merged new versions of LibTomCrypt (0.86) and LibTomMath (0.21)

0.32 - Sat May 24 2003 12:44:11 +0800

- Don't compile unused code from libtomcrypt (test vectors etc)
- Updated to libtommath 0.17 and libtomcrypt 0.83. New libtommath results
  in smaller binary size, due to not linking unrequired code
- X11 forwarding added
- Agent forwarding added (for OpenSSH.com ssh client/agent)
- Fix incorrect buffer freeing when banners are used
- Hostname resolution works
- Various minor bugfixes/code size improvements etc

0.31 - Fri May 9 2003 17:57:16 +0800

- Improved syslog messages - IP logging etc
- Strip control characters from log messages (specified username currently)
- Login recording (utmp/wtmp) support, so last/w/who work - taken from OpenSSH
- Shell is started as a proper login shell, so /etc/profile etc is sourced
- Ptys work on Solaris (2.8 x86 tested) now
- Fixed bug in specifying the rsa hostkey
- Fixed bug in compression code, could trigger if compression resulted in
  larger output than input (uncommon but possible).

0.30 - Thu Apr 17 2003 18:46:15 +0800

- SECURITY: buffer.c had bad checking for buffer increment length - fixed
- channel code now closes properly on EOF - scp processes don't hang around
- syslog support added - improved auth/login/failure messages
- general code tidying, made return codes more consistent
- Makefile fixed for dependencies and makes libtomcrypt as well
- Implemented sending SSH_MSG_UNIMPLEMENTED :)

0.29 - Wed Apr 9 2003

- Fixed a stupid bug in 0.28 release, 'newstr = strdup(oldstr)',
  not 'newstr=oldstr'

0.28 - Sun Apr 6 2003

- Initial public release

Development was started in October 2002