add515264dab34bb87ec508de473d3d4fd4336ad
[libgcrypt.git] / NEWS
1 Noteworthy changes in version 1.5.x (unreleased)
2 ------------------------------------------------
3
4  * New function gcry_kdf_derive implementing OpenPGP S2K algorithms
5    and PBKDF2.
6
7  * Support for WindowsCE.
8
9  * Support ECDH.
10
11  * gcry_sexp_build does now support opaque MPIs with "%m".
12
13  * New functions gcry_pk_get_curve and gcry_pk_get_param to map ECC
14    parameters to a curve name and to retrieve parameter values.
15
16  * gcry_mpi_cmp applied to opaque values has a defined semantic now.
17
18  * Uses the Intel AES-NI instructions if available.
19
20  * The use of the deprecated Alternative Public Key Interface
21    (gcry_ac_*) will now print compile time warnings.
22
23  * The module register subsystem has been deprecated.  This subsystem
24    is not flexible enough and would always require ABI changes to
25    extend the internal interfaces.  It will eventually be removed.
26    Please contact us on the gcrypt-devel mailing list to discuss
27    whether you really need this feature or how it can be replaced by
28    an internal plugin mechanism.
29
30  * New variants of the TIGER algorithm.  [also in 1.4.6]
31
32  * New cipher algorithm mode for AES-WRAP.  [also in 1.4.6]
33
34  * Fixed minor memory leak in DSA key generation.  [also in 1.4.5]
35
36  * No more switching to FIPS mode if /proc/version is not
37    readable. [also in 1.4.5]
38
39  * Fixed sigill during Padlock detection on old CPUs.  [also in 1.4.5]
40
41  * Fixed a hang on some W2000 machines.  [also in 1.4.5]
42
43  * Boosted SHA-512 performance by 30% on ia32 boxes and gcc 4.3;
44    SHA-256 went up by 25%.  [also in 1.4.5]
45
46  * Interface changes relative to the 1.4.6 release:
47  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
48  GCRY_PK_ECDH               NEW.
49  gcry_pk_get_curve          NEW.
50  gcry_pk_get_param          NEW.
51  GCRYCTL_DISABLE_HWF        NEW.
52  gcry_kdf_derive            NEW.
53
54  * Interface changes relative to the 1.4.2 release:
55  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
56  GCRY_CIPHER_MODE_AESWRAP   NEW.
57  GCRY_MD_TIGER1             NEW.
58  GCRY_MD_TIGER2             NEW.
59
60
61 Noteworthy changes in version 1.4.4 (2009-01-22)
62 ------------------------------------------------
63
64  * Publish GCRY_MODULE_ID_USER and GCRY_MODULE_ID_USER_LAST constants.
65    This functionality has been in Libgcrypt since 1.3.0.
66
67  * MD5 may now be used in non-enforced fips mode.
68
69  * Fixed HMAC for SHA-384 and SHA-512 with keys longer than 64 bytes.
70
71  * In fips mode, RSA keys are now generated using the X9.31 algorithm
72    and DSA keys using the FIPS 186-2 algorithm.
73
74  * The transient-key flag is now also supported for DSA key
75    generation.  DSA domain parameters may be given as well.
76
77
78 Noteworthy changes in version 1.4.3 (2008-09-18)
79 ------------------------------------------------
80
81  * Try to auto-initialize Libgcrypt to minimize the effect of
82    applications not doing that correctly.  This is not a perfect
83    solution but given that many applicationion would totally fail
84    without such a hack, we try to help at least with the most common
85    cases.  Folks, please read the manual to learn how to properly
86    initialize Libgcrypt!
87
88  * Auto-initialize the secure memory to 32k instead of aborting the
89    process.
90
91  * Log fatal errors via syslog.
92
93  * Changed the name and the semantics of the fips mode config file.
94
95  * Add convenience macro gcry_fips_mode_active.
96
97  * More self-tests.
98
99  * Documentation cleanups.
100
101
102 Noteworthy changes in version 1.4.2 (2008-09-08)
103 ------------------------------------------------
104
105  * The long missing gcry_mpi_lshift function has been added.
106
107  * RSA key generation now supports a "transient-key" flag.
108
109  * The keygrip computation for ECDSA has been implemented thus ECDSA
110    is now fully supported.
111
112  * A few macros have been replaced by functions for better type
113    checking.
114
115  * The thread initialization structure now carries version
116    information.
117
118  * The manual describes more clearly how to initialize Libgcrypt.
119
120  * The library may now be switched into a FIPS mode.
121
122  * Interface changes relative to the 1.3.0 release:
123  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
124  GCRYCTL_OPERATIONAL_P   NEW.
125  GCRYCTL_FIPS_MODE_P     NEW.
126  GCRYCTL_FORCE_FIPS_MODE NEW.
127  gcry_cipher_setkey      NEW: Replaces macro.
128  gcry_cipher_setiv       NEW: Replaces macro.
129  gcry_cipher_setctr      NEW: Replaces macro.
130  gcry_mpi_lshift         NEW.
131  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
132
133
134 Noteworthy changes in version 1.4.1 (2008-04-25)
135 ------------------------------------------------
136
137  * Fixed a bug introduced by 1.3.1 which led to the comsumption of far
138    too much entropy for the intial seeding.
139
140  * Improved AES performance for CFB and CBC modes.
141
142  * Removed build problems for the Padlock support.
143
144
145 Noteworthy changes in version 1.4.0 (2007-12-10)
146 ------------------------------------------------
147
148  * New configure option --disable-padlock-support which is mostly
149    useful in case of build problems.
150
151
152 Noteworthy changes in version 1.3.2 (2007-12-03)
153 ------------------------------------------------
154
155  * The visibility attribute is now used if supported by the toolchain.
156
157  * The ACE engine of VIA processors is now used for AES-128.
158
159  * The ASN.1 DER template for SHA-224 has been fixed.
160
161
162 Noteworthy changes in version 1.3.1 (2007-10-26)
163 ------------------------------------------------
164
165  * The entire library is now under the LGPL. The helper programs and
166    the manual are under the GPL.  Kudos to Peter Gutmann for giving
167    permissions to relicense the rndw32 and rndunix modules.
168
169  * The Camellia cipher is now under the LGPL and included by default.
170
171  * Fixed a bug in the detection of symbol prefixes which inhibited the
172    build of optimzied assembler code on certain systems.
173
174  * Updated the entropy gatherer for W32.
175
176
177 Noteworthy changes in version 1.3.0 (2007-05-04)
178 ------------------------------------------------
179
180  * Changed the way the RNG gets initialized. This allows to keep it
181    uninitialized as long as no random numbers are used.  To override
182    this, the new macro gcry_fast_random_poll may be used.  It is in
183    general a good idea to spread this macro into the application code
184    to make sure that these polls happen often enough.
185
186  * Made the RNG immune against fork without exec.
187
188  * Reading and writing the random seed file is now protected by a
189    fcntl style file lock on systems that provide this function.
190
191  * Support for SHA-224 and HMAC using SHA-384 and SHA-512.
192
193  * Support for the SEED cipher.
194
195  * Support for the Camellia cipher.  Note that Camellia is disabled by
196    default, and that enabling it changes the license of libgcrypt from
197    LGPL to GPL.
198
199  * Support for OFB encryption mode.
200
201  * gcry_mpi_rshift does not anymore truncate the shift count.
202
203  * Reserved algorithm ranges for use by applications.
204
205  * Support for DSA2.
206
207  * The new function gcry_md_debug should be used instead of the
208    gcry_md_start_debug and gcry_md_stop_debug macros.
209
210  * New configure option --enable-random-daemon to support a system
211    wide random daemon.  The daemon code is experimental and not yet
212    very well working.  It will eventually allow to keep a global
213    random pool for the sake of short living processes.
214
215  * Non executable stack support is now used by default on systems
216    supporting it.
217
218  * Support for Microsoft Windows.
219
220  * Assembler support for the AMD64 architecture.
221
222  * New configure option --enable-mpi-path for optimized builds.
223
224  * Experimental support for ECDSA; should only be used for testing.
225
226  * New control code GCRYCTL_PRINT_CONFIG to print the build
227    configuration.
228
229  * Minor changes to some function declarations.  Buffer arguments are
230    now typed as void pointer.  This should not affect any compilation.
231    Fixed two bugs in return values and clarified documentation.
232
233  * Interface changes relative to the 1.2.0 release:
234  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
235  gcry_fast_random_poll   NEW
236  gcry_md_debug           NEW
237  gcry_sexp_nth_string    NEW
238  GCRY_MD_SHA224          NEW
239  GCRY_PK_USAGE_CERT      NEW
240  GCRY_PK_USAGE_AUTH      NEW
241  GCRY_PK_USAGE_UNKN      NEW
242  GCRY_PK_ECDSA           NEW
243  GCRY_CIPHER_SEED        NEW
244  GCRY_CIPHER_CAMELLIA128 NEW
245  GCRY_CIPHER_CAMELLIA192 NEW
246  GCRY_CIPHER_CAMELLIA256 NEW
247  GCRYCTL_FAKED_RANDOM_P  NEW
248  GCRYCTL_PRINT_CONFIG    NEW
249  GCRYCTL_SET_RNDEGD_SOCKET  NEW.
250  gcry_mpi_scan           CHANGED: Argument BUFFER is now void*.
251  gcry_pk_algo_name       CHANGED: Returns "?" instead of NULL.
252  gcry_cipher_algo_name   CHANGED: Returns "?" instead of "".
253  gcry_pk_spec_t          CHANGED: Element ALIASES is now const ptr.
254  gcry_md_write_t         CHANGED: Argument BUF is now a const void*.
255  gcry_md_ctl             CHANGED: Argument BUFFER is now void*.
256  gcry_cipher_encrypt     CHANGED: Arguments IN and OUT are now void*.
257  gcry_cipher_decrypt     CHANGED: Arguments IN and OUT are now void*.
258  gcry_sexp_sprint        CHANGED: Argument BUFFER is now void*.
259  gcry_create_nonce       CHANGED: Argument BUFFER is now void*.
260  gcry_randomize          CHANGED: Argument BUFFER is now void*.
261  gcry_cipher_register    CHANGED: Argument ALGORITHM_ID is now int*.
262  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
263
264
265 Noteworthy changes in version 1.2.0 (2004-04-15)
266 ------------------------------------------------
267
268  * First stable release.
269
270
271 Noteworthy changes in version 1.1.94 (2004-03-29)
272 -------------------------------------------------
273
274  * The support for multi-threaded users goes into its third
275    incarnation.  We removed compile time support for thread libraries.
276    To support the thread library of your choice, you have to set up
277    callback handlers at initialization time.  New data structures, a
278    new control command, and default initializers are provided for this
279    purpose.
280
281  * Interface changes relative to the 1.1.93 release:
282 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
283 libgcrypt-config --thread       OBSOLETE
284 libgcrypt-pth.la                REMOVED
285 libgcrypt-pthread.la            REMOVED
286 GCRYCTL_SET_THREAD_CBS          NEW
287 struct gcrypt_thread_cbs        NEW
288 enum gcry_thread_option         NEW
289 GCRY_THREAD_OPTION_PTH_IMPL     NEW
290 GCRY_THREAD_OPTION_PTHREAD_IMPL NEW
291 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
292
293 Noteworthy changes in version 1.1.93 (2004-03-06)
294 -------------------------------------------------
295
296  * The automatic thread library detection has finally been removed.
297    From now on, only linking explicitely to libgcrypt, libgcrypt-pth
298    or libgcrypt-pthread is supported.
299
300 Noteworthy changes in version 1.1.92 (2004-02-20)
301 -------------------------------------------------
302
303  * Minor bug fixes.
304
305  * Included a limited implementation of RFC2268.
306
307  * Changed API of the gcry_ac_ functions.  Only a very few programs
308    should be affected by this.
309
310  * Interface changes relative to the 1.1.91 release:
311 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
312 GCRY_CIPHER_RFC2268_40          NEW.
313 gcry_ac_data_set                CHANGED: New argument FLAGS.
314 gcry_ac_data_get_name           CHANGED: New argument FLAGS.
315 gcry_ac_data_get_index          CHANGED: New argument FLAGS.
316 gcry_ac_key_pair_generate       CHANGED: New and reordered arguments.
317 gcry_ac_key_test                CHANGED: New argument HANDLE.
318 gcry_ac_key_get_nbits           CHANGED: New argument HANDLE.
319 gcry_ac_key_get_grip            CHANGED: New argument HANDLE.
320 gcry_ac_data_search             REMOVED.
321 gcry_ac_data_add                REMOVED.
322 GCRY_AC_DATA_FLAG_NO_BLINDING   REMOVED.
323 GCRY_AC_FLAG_NO_BLINDING        NEW: Replaces above.
324
325
326 Noteworthy changes in version 1.1.91 (2003-12-19)
327 -------------------------------------------------
328
329  * Code cleanups and minor bug fixes.
330
331
332 Noteworthy changes in version 1.1.90 (2003-11-14)
333 -------------------------------------------------
334
335  * The use of the GCRY_WEAK_RANDOM level is now deprecated in favor of
336    the new gcry_create_nonce function.
337
338  * gcry_sexp_build now supports a "%b" format to include a memory buffer.
339
340  * Minor configuration fixes.
341
342  * Interface changes relative to the 1.1.44 release:
343 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
344 gcry_create_nonce               NEW
345 gcry_sexp_build                 ENHANCED
346
347
348 Noteworthy changes in version 1.1.44 (2003-10-31)
349 -------------------------------------------------
350
351  * Bug fixes and more code cleanups.
352
353  * Enhanced the prime API.
354
355  * Interface changes relative to the 1.1.43 release:
356 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
357 gcry_prime_group_generator      NEW
358 gcry_prime_release_factors      NEW
359
360
361 Noteworthy changes in version 1.1.43 (2003-09-04)
362 -------------------------------------------------
363
364  * Bug fixes and internal code cleanups.
365
366  * Support for the Serpent cipher algorithm.
367
368  * Interface changes relative to the 1.1.42 release:
369 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
370 gcry_prime_generate             NEW
371 gcry_prime_check                NEW
372
373
374 Noteworthy changes in version 1.1.42 (2003-07-31)
375 -------------------------------------------------
376
377  * Major API cleanup.  Applications need to be converted to the new
378    API.  See README.apichanges for hints on how to do that.  Backward
379    compatibility is provided where it was possible without too much
380    effort and did not collide with the overall sanitization effort.
381    However, this is only for ease of transition.  NO DEPRECATED
382    FUNCTION OR DATA TYPE IS CONSIDERED A PART OF THE API OR ABI AND
383    WILL BE DROPPED IN THE FUTURE WITHOUT CHANGING THE SONAME OF THE
384    LIBRARY.
385
386  * If gcrypt.h is included in sources compiled by GCC 3.1 or later,
387    deprecated attributes will warn about use of obsolete functions and
388    type definitions.  You can suppress these warnings by passing
389    -Wno-deprecated-declarations to the gcc command.
390
391  * gcry_check_version must be called from now on to initialize the
392    library, it is not longer optional.
393
394  * Removed `libgcrypt errno' concept.
395
396  * Libgcrypt depends on libgpg-error, a library that provides error
397    codes and according functions for all GnuPG components.  Functions
398    that used to return error codes asa `int' have been changed to
399    return a code of type `gcry_error_t'.  All GCRYERR_* error symbols
400    have been removed, since they are now contained in libgpg-error
401    (GPG_ERR_*). All functions and types in libgpg-error have also been
402    wrapped in Libgcrypt. The new types are gcry_err_code_t and
403    gcry_err_source_t.  The new functions are gcry_err_code,
404    gcry_err_source, gcry_error, gcry_err_make, gcry_error_from_errno,
405    gcry_err_make_from_errno, gcry_err_code_from_errno,
406    gcry_err_code_to_errno, gcry_strsource.
407
408  * New function gcry_mpi_dump to help in debugging.
409
410  * Added alternative interface for asymmetric cryptography.
411
412  * CRC-32, CRC-32 a'la RFC 1510, CRC-24 a'la RFC 2440 are now
413    supported.
414
415  * SHA-256, SHA-384 and SHA-512 are now supported.
416
417  * 128 bit Twofish is now supported.
418
419  * The random module won't print the "not enough random bytes
420    available" anymore.  A new progress status is issued instead.
421
422  * CBC-MAC for block ciphers is now supported, by using a
423    GCRY_CIPHER_CBC_MAC cipher flag.
424
425  * CTR mode for block ciphers is now supported.
426
427  * The public RSA exponent can now be specified in key generation.
428
429  * RSA blinding is now supported and is used automatically for RSA
430    decryption.  It can be explicitely disabled by using the
431    `no-blinding' symbol in the `flags' S-Expression or by using the
432    GCRY_AC_FLAG_DATA_NO_BLINDING flag when using the ac interface.
433
434  * gcry_sexp_canon_len does not use a `historically encoded' error
435    code anymore.
436
437
438  * Interface changes relative to the 1.1.12 release:
439 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
440 GCRY_MPI                        DEPRECATED; Use: gcry_mpi_t
441 GcryMPI                         DEPRECATED; Use: gcry_mpi_t
442 GCRY_SEXP                       DEPRECATED; Use: gcry_sexp_t
443 GcrySexp                        DEPRECATED; Use: gcry_sexp_t
444 GCRY_CIPHER_HD                  DEPRECATED; Use: gcry_cipher_hd_t
445 GcryCipherHd                    DEPRECATED; Use: gcry_cipher_hd_t
446 GCRY_MD_HD                      DEPRECATED; Use: gcry_md_hd_t
447 GcryMDHd                        DEPRECATED; Use: gcry_md_hd_t
448 gcry_error_t                    NEW
449 gcry_err_code_t                 NEW
450 gcry_err_source_t               NEW
451 gcry_err_make                   NEW
452 gcry_error                      NEW
453 gcry_err_code                   NEW
454 gcry_err_source                 NEW
455 gcry_err_code_from_errno        NEW
456 gcry_err_code_to_errno          NEW
457 gcry_err_make_from_errno        NEW
458 gcry_error_from_errno           NEW
459 gcry_strsource                  NEW
460 GCRYERR_{some error code}       REMOVED; Use GPG_ERR_*
461                                          from libgpg-error instead.
462 gcry_errno                      REMOVED
463 gcry_sexp_canon_len             CHANGED
464 gcry_sexp_build_array           NEW
465 gcry_mpi_scan                   CHANGED: New argument to separate in/out args.
466 gcry_mpi_print                  CHANGED: Ditto.
467 gcry_mpi_dump                   NEW
468 gcry_cipher_open                CHANGED
469 gcry_cipher_reset               NEW
470 gcry_cipher_register            NEW
471 gcry_cipher_unregister          NEW
472 gcry_cipher_list                NEW
473 gcry_cipher_algo_keylen         REPLACED macro with function.
474 gcry_cipher_algo_blklen         REPLACED macro with function.
475 gcry_pk_register                NEW
476 gcry_pk_unregister              NEW
477 gcry_pk_list                    NEW
478 gcry_pk_decrypt                 ENHANCED: Allows flag to return
479                                           complete S-expression.
480 gcry_md_open                    CHANGED
481 gcry_md_copy                    CHANGED
482 gcry_md_is_enabled              NEW
483 gcry_md_is_secure               NEW
484 gcry_md_register                NEW
485 gcry_md_unregister              NEW
486 gcry_md_list                    NEW
487 gcry_ac_data_t                  NEW
488 gcry_ac_key_t                   NEW
489 gcry_ac_key_pair_t              NEW
490 gcry_ac_handle_t                NEW
491 gcry_ac_key_spec_rsa_t          NEW
492 gcry_ac_data_new                NEW
493 gcry_ac_data_destroy            NEW
494 gcry_ac_data_set                NEW
495 gcry_ac_data_copy               NEW
496 gcry_ac_data_length             NEW
497 gcry_ac_data_get_name           NEW
498 gcry_ac_data_get_index          NEW
499 gcry_ac_data_clear              NEW
500 gcry_ac_open                    NEW
501 gcry_ac_close                   NEW
502 gcry_ac_key_init                NEW
503 gcry_ac_key_pair_generate       NEW
504 gcry_ac_key_pair_extract        NEW
505 gcry_ac_key_data_get            NEW
506 gcry_ac_key_test                NEW
507 gcry_ac_key_get_nbits           NEW
508 gcry_ac_key_get_grip            NEW
509 gcry_ac_key_destroy             NEW
510 gcry_ac_key_pair_destroy        NEW
511 gcry_ac_data_encrypt            NEW
512 gcry_ac_data_decrypt            NEW
513 gcry_ac_data_sign               NEW
514 gcry_ac_data_verify             NEW
515 gcry_ac_id_to_name              NEW
516 gcry_ac_name_to_id              NEW
517 gcry_handler_progress_t         NEW
518 gcry_handler_alloc_t            NEW
519 gcry_handler_secure_check_t     NEW
520 gcry_handle_realloc_t           NEW
521 gcry_handler_free_t             NEW
522 gcry_handler_no_mem_t           NEW
523 gcry_handler_error_t            NEW
524 gcry_handler_log_t              NEW
525 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
526
527 Noteworthy changes in version 1.1.12 (2003-01-20)
528 -------------------------------------------------
529
530  * gcry_pk_sign, gcry_pk_verify and gcry_pk_encrypt can now handle an
531    optional pkcs1 flags parameter in the S-expression.  A similar flag
532    may be passed to gcry_pk_decrypt but it is only syntactically
533    implemented.
534
535  * New convenience macro gcry_md_get_asnoid.
536
537  * There is now some real stuff in the manual.
538
539
540 Noteworthy changes in version 1.1.11 (2002-12-21)
541 -------------------------------------------------
542
543  * Don't export internal symbols anymore (currently only for GNU systems)
544
545  * New algorithm: MD4
546
547  * Implemented ciphertext stealing.
548
549  * Smaller bugs fixes and a few new OIDs.
550
551  * Interface changes relative to the 1.1.8 release:
552 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
553 gcry_cipher_cts                   NEW
554 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
555
556
557 Noteworthy changes in version 1.1.10 (2002-09-20)
558 -------------------------------------------------
559
560  * Fixed shared library builds for i386, PPC and Sparc.
561
562  * Added simple benchmark tool.
563
564  * Replaced the internal mutexes by code which automatically adapts to
565    the used threading library.  Currently Pth and Pthread are
566    supported.  For non-ELF systems the GNU toolchain is now required..
567
568  * Added untested support to build Windows DLLs.
569
570 Noteworthy changes in version 1.1.9 (2002-08-23)
571 ------------------------------------------------
572
573  * Support for plain old DES.
574
575
576 Noteworthy changes in version 1.1.8 (2002-06-25)
577 ------------------------------------------------
578
579  * Minor cleanups and exported a few new functions.
580
581  * Interface changes relative to the 1.1.7 release:
582 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
583 gcry_mpi_div                      NEW
584 gcry_mpi_mod                      NEW
585 gcry_mpi_invm                     NEW
586 gcry_mpi_swap                     NEW
587 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
588
589 Noteworthy changes in version 1.1.7 (2002-05-21)
590 ------------------------------------------------
591
592 * Libgcrypt is now distributed under the terms of the GNU Lesser
593   General Public License; see the README file for details.
594
595 * It is possible to use libgcrypt w/o intialized secure memory.
596
597 * Libgcrypt should now be thread safe after the initialization.
598   gcry_control (GCRYCRL_INITIALIZATION_FINISHED,NULL,0) should have
599   been called before creating additional threads.
600
601  * Interface changes relative to the 1.1.6 release:
602 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
603 GCRYCTL_DISABLE_INTERNAL_LOCKING  NEW
604 GCRYCTL_DISABLE_SECMEM            NEW
605 GCRYCTL_INITIALIZATION_FINISHED   NEW
606 GCRYCTL_INITIALIZATION_FINISHED_P NEW
607 GCRYCTL_ANY_INITIALIZATION_P      NEW
608 gcry_strdup                       NEW
609 gcry_sexp_create                  NEW
610 gcry_sexp_new                     NEW
611 gcry_set_progress_handler         NEW
612 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
613
614 Noteworthy changes in version 1.1.6 (2002-02-07)
615 ------------------------------------------------
616
617   * Enhanced the S-expression conversion functions.
618
619 Noteworthy changes in version 1.1.5 (2001-12-18)
620 ------------------------------------------------
621
622   * gcry_{cipher,md}_map_name are now able to map stringified object IDs.
623
624   * New functions gcry_sexp_canon_len and gcry_cipher_mode_from_oid.
625
626   * Closed some memory leaks.
627
628
629 Noteworthy changes in version 1.1.4 (2001-08-03)
630 ------------------------------------------------
631
632   * Arcfour does now work.
633
634   * Some minor fixes.
635
636   * Added a first test program
637
638   * Migrated to autoconf 2.52.
639
640
641 Noteworthy changes in version 1.1.3 (2001-05-31)
642 ------------------------------------------------
643
644   * First release of Libgcrypt which is a result of splitting GnuPG
645     into into libgcrypt and GnuPG.
646
647
648 Copyright 2001, 2002, 2003, 2004, 2007, 2008,
649           2009 Free Software Foundation, Inc.
650
651 This file is free software; as a special exception the author gives
652 unlimited permission to copy and/or distribute it, with or without
653 modifications, as long as this notice is preserved.
654
655 This file is distributed in the hope that it will be useful, but
656 WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
657 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.