Add.
[gsasl.git] / NEWS
blobcd4e35b15056c1e215d30bebf42f41d619cd19d0
1 GNU SASL NEWS -- History of user-visible changes.
2 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Simon Josefsson
3 See the end for copying conditions.
5 Note that changes to the GNU SASL Library is documented in lib/NEWS.
6 This file track changes to the remaining, non-library, parts of GNU
7 SASL.  That include the manual, the command line tool, and self tests.
9 * Version 0.2.22 (unreleased)
11 ** Fix warnings when building the tool 'gsasl'.
13 ** Update gnulib files.
15 * Version 0.2.21 (released 2007-08-22)
17 ** Fix typos in manual.
18 Tiny patch from Brad Hards <bradh@frogmouth.net>.
20 ** Update gnulib files.
22 * Version 0.2.20 (released 2007-08-11)
24 ** Update gnulib files.
26 * Version 0.2.19 (released 2007-08-09)
28 ** Command-line tools, examples, etc are now licensed under the
29 ** GPL version 3 (or later).
30 The library remains licensed under LGPL version 2.1 (or later).
32 ** Updated documentation as per license change.
34 ** Update gnulib files.
36 ** Update translations.
38 * Version 0.2.18 (released 2007-06-07)
40 ** Update gnulib files.
41 Fixes cross-compilation to uClinux.
43 * Version 0.2.17 (released 2007-06-01)
45 ** GNU SASL is now developed using Git instead of CVS.
46 A public git mirror is available from <http://repo.or.cz/w/gsasl.git>.
48 ** Update gnulib files.
50 ** Polish, Swedish and Vietnamese translations updated.
51 Thanks to Jakub Bogusz, Daniel Nylander, and Clytie Siddall.
53 * Version 0.2.16 (released 2007-04-20)
55 ** Fix IMAP protocol usage in the 'gsasl' command-line tool server.
57 ** Support GSSAPI server in 'gsasl' command-line tool.
59 ** Add self-test of the gsasl_check_version API.
61 ** Translation updates.
63 ** Update of gnulib files.
65 ** Now uses autoconf 2.61, automake 1.10, gettext 0.16.1.
67 * Version 0.2.15 (released 2006-08-22)
69 ** Changed libgsasl shared library version.
70 The shared library version was not incremented correctly in the last
71 release, even though new APIs were added.
73 * Version 0.2.14 (released 2006-08-19)
75 ** New section "Requirements" in the manual, lists the external components.
76 Suggested by James Mansion.
78 ** Update of gnulib files.
80 * Version 0.2.13 (released 2006-06-14)
82 ** Update of gnulib files.
83 Further improves portability to MinGW.
85 ** Various improvements in the manuals.
87 ** The tests are run under valgrind, if it is installed.
88 Use --disable-valgrind-tests to unconditionally disable this.  It is
89 disabled by default for cross compiles.
91 ** Various minor fixes.
93 * Version 0.2.12 (released 2006-03-08)
95 ** Update of gnulib files.
96 Improves portability to Mingw32.
98 * Version 0.2.11 (released 2006-02-07)
100 ** Ported to Windows by cross-compiling using Mingw32.
101 Using Debian's mingw32 compiler, you can build it for Windows by invoking
102 `./configure --host=i586-mingw32msvc --disable-gssapi'.
104 ** Update of gnulib files.
106 * Version 0.2.10 (released 2005-10-23)
108 ** Work around bug in GnuTLS that made the command line tool exit after
109 ** failing to write a zero length message to the peer.
111 ** Don't use GnuTLS if gnutls_certificate_verify_peers2 isn't present.
113 ** Update of gnulib files.
115 * Version 0.2.9 (released 2005-10-07)
117 ** Update of gnulib files.
119 * Version 0.2.8 (released 2005-09-08)
121 ** The gsasl tool now support STARTTLS for IMAP and SMTP using GnuTLS.
123 ** The --client and --server parameters for the gsasl tool now work properly.
125 ** The --client and --server stdin/stdout modes now use the readline library.
127 ** Fixed build problems in getpass on uClibc and Mingw32 platforms.
129 ** Kinyarwanda translation added.
131 * Version 0.2.7 (released 2005-08-25)
133 ** Fix build problems when cross-compiling to uClibc and Mingw32 platforms.
135 ** Detecting and using the readline library has been improved.
137 * Version 0.2.6 (released 2005-08-08)
139 ** The gsasl tool now try to connect to all addresses for a server name.
141 ** The help-gsasl@gnu.org mailing list is now mentioned in documentation.
143 ** The license template in files were updated with the new FSF address.
145 ** Update of gnulib files.
147 * Version 0.2.5 (released 2005-02-08)
149 ** Added self test of EXTERNAL mechanism.
151 ** Vietnamese translation added, thanks to Clytie Siddall.
153 * Version 0.2.4 (released 2005-01-01)
155 ** The CRAM-MD5 mechanism is now preferred over DIGEST-MD5.
156 This decision was based on recent public research that suggest MD5 is
157 broken, while HMAC-MD5 not immediately compromised, and the lack of
158 public analysis on what consequences the MD5 break have for
159 DIGEST-MD5.  Support for CRAM-SHA1 is under investigation, to enable
160 users to avoid MD5 completely
162 ** Fixed a bug that prevented SMTP client from working.
164 ** New configure option --disable-obsolete to remove backwards compatibility.
165 This is mostly intended to be used when compiling for platforms with
166 constrained memory/space resources.
168 ** DIGEST-MD5 rewritten and enabled by default (see lib/NEWS for details).
170 ** Command line tool now query for realm, hostname and service name properly.
172 ** Documentation updates and improvements.
174 ** Self test improvements.
176 ** Update of gnulib files.
178 * Version 0.2.3 (released 2004-12-15)
180 ** Fix example code to handle base64 encoded data properly.
182 ** DIGEST-MD5 is disabled by default, pending a rewrite for the new API.
184 ** Command line tool uses new callback interface to the library.
186 ** Command line tool uses "iconvme" from gnulib for UTF-8 string conversion.
188 ** Server mode in the command line tool does not work currently.
189 It is unclear if this feature was ever that useful.  If there are no
190 objections, it will be removed completely in future versions.
192 ** Documentation fixes.
194 ** Fix self test bugs.
196 * Version 0.2.2 (released 2004-11-29)
198 ** Update of gnulib files.
200 * Version 0.2.1 (released 2004-11-19)
202 ** Documentation fixes; the old callback API functions are marked as obsolete.
204 * Version 0.2.0 (released 2004-11-07)
206 ** Added new directory examples/ with complete examples for new API.
208 ** Documentation improvements.
209 For example, you can now browse the GNU SASL API manual using DevHelp.
211 ** Update of gnulib files.
213 ** More self tests.
215 ** Translation fixes.
217 * Version 0.1.4 (released 2004-08-08)
219 ** Revamp of gnulib compatibility files.
221 ** More translations.
222 German (by Roland Illig), Basque (by Mikel Olasagasti), French (by
223 Michel Robitaille), Irish (by Kevin Patrick Scannell), Dutch (by Elros
224 Cyriatan), Polish (by Jakub Bogusz), Romanian (by Laurentiu Buzdugan),
225 and Serbian (by Aleksandar Jelenak).
227 * Version 0.1.3 (released 2004-08-04)
229 ** Command line tool support IPv6 (and other protocol families).
230 Requires that your system has `getaddrinfo'.
232 ** Command line behaviour for gsasl tool improved.
233 The --client and --imap parameters are now the default.  The --connect
234 host and port can now be specified directly.  If --authentication-id
235 is not specified, the username of the user invoking gsasl is used
236 (i.e., getpwuid(getuid)->pw_name).  Alltogether, this allows simple
237 usage, as in `gsasl mail.example.com' to connect, via IMAP, to
238 mail.example.com.
240 * Version 0.1.2 (released 2004-07-16)
242 ** The SMTP mode in `gsasl' should now work.
244 ** Cross compile builds should work.
245 It should work for any sane cross compile target, but the only tested
246 platform is uClibc/uClinux on Motorola Coldfire.
248 ** The GNU Readline library is used to read data, if available.
250 ** Passwords read from stdin are not echoed to the terminal.
252 * Version 0.1.1 (released 2004-06-26)
254 ** In the command line client, the default quality of protection is now none.
256 * Version 0.1.0 (released 2004-04-16)
258 ** The library re-licensed to LGPL and distributed as a separate package.
259 This means a fork of this NEWS file, all the entries below relate to
260 the combined work of earlier versions.  New entries above does not
261 document user visible changes for the library ("libgsasl"), for that
262 see NEWS in the lib/ sub-directory, which is also distributed as a
263 stand-alone package.
265 * Version 0.0.14 (released 2004-01-22)
267 ** Moved all mechanism specific code into sub-directories of lib/.
268 Each backend is built into its own library (e.g., libgsasl-plain.so),
269 to facilitate future possible use of dlopen to dynamically load
270 backends.
272 ** Moved compatibility files (getopt*) to gl/, and added more (strdup*).
274 * Version 0.0.13 (released 2004-01-17)
276 ** Nettle (the crypto functionality, crypto/) has been updated.
277 This fixes two portability issues, the new code should work on
278 platforms that doesn't have inttypes.h and alloca.
280 * Version 0.0.12 (released 2004-01-15)
282 ** Protocol line parser in 'gsasl' tool more reliable.
283 Earlier it assumed two lines were sent in one packet in one place, and
284 sent as two packets in another place.
286 ** Various bugfixes.
288 * Version 0.0.11 (released 2004-01-06)
290 ** The client part of CRAM-MD5 now uses SASLprep instead of NFKC.
291 This aligns with draft-ietf-sasl-crammd5-01.
293 ** The CRAM-MD5 challenge string now conform to the proper syntax.
295 ** The string preparation (SASLprep and trace) functions now work correctly.
297 ** DocBook manuals no longer included.
298 The reason is that recent DocBook tools from the distribution I use
299 (Debian) fails with an error.  DocBook manuals may be included in the
300 future, if I can get the tools to work.
302 ** API and ABI modifications.
303 GSASL_SASLPREP_ERROR: ADD.
305 * Version 0.0.10 (released 2003-11-22)
307 ** The CRAM-MD5 server now reject invalid passwords.
308 The logic flaw was introduced in 0.0.9, after blindly making code
309 changes to shut up valgrind just before the release.
311 ** Various build improvements.
312 Pkg-config is no longer needed.  GTK-DOC is only used if present.
314 * Version 0.0.9 (released 2003-11-21)
316 ** Command line client can talk to SMTP servers with --smtp.
318 ** DocBook manuals in XML, PDF, PostScript, ASCII and HTML formats included.
320 ** Token parser in DIGEST-MD5 fixed, improve interoperability of DIGEST-MD5.
322 ** Libgcrypt >= 1.1.42 is used if available (for CRAM-MD5 and DIGEST-MD5).
323 The previous libgcrypt API is no longer supported.
325 ** CRAM-MD5 and DIGEST-MD5 no longer require libgcrypt (but can still use it).
326 If libgcrypt 1.1.42 or later is not found, it uses a minimalistic
327 cryptographic library based on Nettle, from crypto/.  Currently only
328 MD5 and HMAC-MD5 is needed, making a dependence on libgcrypt overkill.
330 ** Listing supported server mechanisms with gsasl_server_mechlist work.
332 ** Autoconf 2.59, Automake 1.8 beta, Libtool CVS used.
334 ** Source code for each SASL mechanism moved to its own sub-directory in lib/.
336 ** The command line interface now uses getopt instead of argp.
337 The reason is portability, this also means we no longer use gnulib.
339 ** API and ABI modifications.
340 gsasl_randomize: ADD.
341 gsasl_md5: ADD.
342 gsasl_hmac_md5: ADD.
344 gsasl_hexdump: REMOVED.  Never intended to be exported.
346 gsasl_step: ADD.
347 gsasl_step64: ADD.
348 gsasl_client_step: DEPRECATED: use gsasl_step instead.
349 gsasl_server_step: DEPRECATED: use gsasl_step instead.
350 gsasl_client_step_base64: DEPRECATED: use gsasl_step64 instead.
351 gsasl_server_step_base64: DEPRECATED: use gsasl_step64 instead.
353 gsasl_finish: ADD.
354 gsasl_client_finish: DEPRECATED: use gsasl_finish instead.
355 gsasl_server_finish: DEPRECATED: use gsasl_finish instead.
357 gsasl_ctx_get: ADD.
358 gsasl_client_ctx_get: DEPRECATED: use gsasl_ctx_get instead.
359 gsasl_server_ctx_get: DEPRECATED: use gsasl_ctx_get instead.
361 gsasl_appinfo_get: ADD.
362 gsasl_appinfo_set: ADD.
363 gsasl_client_application_data_get: DEPRECATED: use gsasl_appinfo_get instead.
364 gsasl_client_application_data_set: DEPRECATED: use gsasl_appinfo_set instead.
365 gsasl_server_application_data_get: DEPRECATED: use gsasl_appinfo_get instead.
366 gsasl_server_application_data_set: DEPRECATED: use gsasl_appinfo_set instead.
368 Gsasl: ADD.
369 Gsasl_ctx: DEPRECATED: use Gsasl instead.
370 Gsasl_session: ADD.
371 Gsasl_session_ctx: DEPRECATED: use Gsasl_session instead.
373 GSASL_CRYPTO_ERROR: ADD, replaces deprecated GSASL_LIBGCRYPT_ERROR.
374 GSASL_LIBGCRYPT_ERROR: DEPRECATED: use GSASL_CRYPTO_ERROR instead.
376 GSASL_KERBEROS_V5_INTERNAL_ERROR: ADD, replaces deprecated GSASL_SHISHI_ERROR.
377 GSASL_SHISHI_ERROR: DEPRECATED: use GSASL_KERBEROS_V5_INTERNAL_ERROR instead.
379 GSASL_INVALID_HANDLE: ADD.
381 * Version 0.0.8 (released 2003-10-11)
383 ** Improved GSSAPI implementation detection.
384 Auto detection should work, unless you have both MIT and Heimdal, or
385 wish to override the default that prefer GSS over Heimdal over MIT.
386 In that case, use --enable-gssapi=mit or --enable-gssapi=heimdal.
388 ** GNU SASL contain APIs for internationalized string processing via SASLprep.
389 You no longer have to use Libidn directly.
391 ** Man pages for all public functions are included.
393 ** GNULib is used for compatibility functions.
394 The directory gl/ is dedicated for GNULib functions, and replace the
395 earlier ad-hoc usage of argp, memset, etc.
397 ** GNU SASL will be C89 compatible.
398 The library itself (lib/*) only use C89.  The remaining parts (src/
399 and tests/) can use C89 and any functionality from GNULib.  This
400 decision may be revised in the future, if it turns out there are
401 problems with this.
403 ** Improvements for embedded or otherwise limited systems.
404 The math library (-lm) is no longer required.  All client code can be
405 disabled by --disable-client, and all server code can be disabled by
406 --disable-server.  The internationalized string processing library can
407 be disabled by --without-stringprep.
409 ** Gettext 0.12.1 and Libtool 1.5 is used.
411 ** Libgcrypt from CVS (1.1.42) is not supported.
412 Recent libgcrypt is API incompatible with earlier released versions.
413 If a too recent version is installed, it will not be used.
415 ** Fix command line tool '--connect --imap' on Solaris.
417 ** Bug fixes.
419 ** API and ABI modifications.
420 Gsasl_client_callback_maxbuf: CHANGED: 'int' was replaced with 'size_t'.
421 Gsasl_server_callback_maxbuf: CHANGED: 'int' was replaced with 'size_t'.
422 gsasl_client_mechlist: NEW.
423 gsasl_server_mechlist: NEW.
424 gsasl_client_listmech: DEPRECATED: use gsasl_client_mechlist instead.
425 gsasl_server_listmech: DEPRECATED: use gsasl_server_mechlist instead.
426 gsasl_stringprep_nfkc: NEW.
427 gsasl_stringprep_saslprep: NEW.
428 gsasl_stringprep_trace: NEW.
430 * Version 0.0.7 (released 2003-06-02)
432 ** Two new GSS libraries supported for the GSS-API mechanism.
433 See http://josefsson.org/gss/ for GSS, which uses Shishi for Kerberos 5.
434 See http://www.pdc.kth.se/heimdal/ for Heimdal (Kerberos 5).
436 ** Bug fixes.
438 * Version 0.0.6 (released 2003-03-17)
440 ** Gettext not included.
441 Due to some conflicts between libtool and gettext, if you want i18n on
442 platforms that does not already have a useful gettext implementation,
443 you must install GNU gettext before building this package.  If you
444 don't care about i18n, this package should work fine (except for i18n,
445 of course).
447 ** Rudimentary support for KERBEROS_V5.
448 Only enable if you want to write code.  This adds two new API errors;
449 GSASL_KERBEROS_V5_INIT_ERROR, GSASL_SHISHI_ERROR.
451 ** Added API function: gsasl_client_callback_realm_set.
452 Specifies which realm the client belongs to.
454 ** Bugfixes.
455 User visible aspects includes not building the API Reference Manual
456 with GTK-DOC by default, if you want it use configure parameter
457 --enable-gtk-doc.
459 * Version 0.0.5 (released 2003-01-27)
461 ** Command line application "gsasl" now supports --imap and --connect.
462 The --imap parameter makes it use a IMAP-like negotiation on
463 stdin/stdout.  The --connect parameter makes it connect to a host over
464 TCP, and talk to it instead of stdin/stdout.  This allows it to be
465 used as a simple test tool to connect to IMAP servers.  Currently
466 integrity and confidentiality is not working properly, so if you use
467 DIGEST-MD5 you currently have to specify --quality-of-protection=auth.
469 ** Texinfo documentation added for command line tool.
471 ** Libgcrypt initialization no longer causes a warning to be printed.
473 ** Added API reference manual in HTML format, generated using GTK-DOC.
474 See doc/reference/, in particular doc/reference/html/index.html.
476 ** GNU Libidn replaces Libstringprep.
477 Although it is still stored in the libstringprep/ directory for CVS
478 reasons.
480 ** Bug fixes for DIGEST-MD5 and GSSAPI.
482 * Version 0.0.4 (released 2002-12-13)
484 ** License changed to GPL.
486 ** Official GNU project.
488 * Version 0.0.3 (released 2002-12-05)
490 ** New gsasl arguments --application-data and --no-client-first.
492 ** Bug fixes (client sends first, memory leaks, compiler warnings, more).
494 * Version 0.0.2 (released 2002-11-07)
496 ** Includes a copy of libstringprep 0.0.2 for Unicode NFKC
497 normalization and locale charset to UTF-8 string conversion, and
498 preparation for the future if a SASL Stringprep profile is created.
499 If libstringprep is already installed, it is used by default.  You can
500 force the use of the internal version with
501 --without-system-libstringprep.
503 ** Uses pkg-config instead of libgsasl.m4 + libgsasl-config.in, and
504 for finding libntlm (requires libntlm 0.3.1 or later).
506 ** Self tests for several mechanisms.
508 ** The API now allows mechanisms to return data even when returning
509 GSASL_OK (earlier only on GSASL_NEEDS_MORE).
511 ** Bug fixes.
513 * Version 0.0.1 (released 2002-10-12)
515 ** APIs for integrity and confidentiality protection of application
516 payload data.
518 ** DIGEST-MD5 support for integrity protection.
520 * Version 0.0.0 (released 2002-10-07)
522 ** Initial release.
524 ----------------------------------------------------------------------
525 Copying and distribution of this file, with or without modification,
526 are permitted in any medium without royalty provided the copyright
527 notice and this notice are preserved.
529 ;;; Local Variables: ***
530 ;;; mode:outline ***
531 ;;; mode:flyspell ***
532 ;;; End: ***