Minor changes for MSVC.
[libgcrypt.git] / src / ChangeLog
index e43e58a..26cb5bc 100644 (file)
@@ -1,3 +1,663 @@
+2010-07-09  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in [!__GNUC__ && W32]: Typedef ssize_t and pid_t to
+       help building with MSVC.
+
+2010-06-24  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in [W32]: Include time.h and not sys/time.h.
+
+2010-04-19  Marcus Brinkmann  <marcus@g10code.de>
+
+       * misc.c (write2stderr): Dummy variable to silence gcc warning.
+
+2010-04-16  Marcus Brinkmann  <marcus@g10code.de>
+
+       * sexp.c: (sexp_sscan): Make it variable length, and rename the
+       old version to ...
+       (vsexp_sscan): ... this new function.  Also swap last two arguments.
+       (gcry_sexp_create): Remove dummy va_list.
+       (gcry_sexp_build): Use vsexp_sscan instead of sexp_sscan.
+       (_gcry_sexp_vbuild): Likewise.
+       (gcry_sexp_build_array): Remove dummy va_list.
+       (gcry_sexp_sscan): Likewise.
+
+2010-04-12  Brad Hards  <bradh@frogmouth.net>  (wk)
+
+       Spelling fixes.
+
+2010-03-15  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in: Add autoconf template to set generated file to
+       read-only in an Emacs buffer.
+
+2010-01-21  Werner Koch  <wk@g10code.com>
+
+       * Makefile.am (arch_gpg_error_cflags, arch_gpg_error_libs): New.
+       (dumpsexp_CFLAGS): New.
+       (dumpsexp_LDADD): Add arch_gpg_error_libs.
+       (hmac256_CFLAGS, hmac256_LDADD): Add the arch variables.
+       (libgcrypt_la_DEPENDENCIES): Add libcompat.
+       * secmem.c (lock_pool): Mark unused args.
+       * global.c (do_malloc, gcry_realloc, gcry_free, gcry_calloc)
+       (gcry_calloc_secure, gcry_xcalloc, gcry_xcalloc_secure): Use
+       gpg_err_set_errno.
+       (_gcry_vcontrol): Call _gcry_compat_identification.
+       * hmac256.c [__MINGW32CE__]: Include gpg-error.h.
+       (_gcry_hmac256_file): Use gpg_err_set_errno.
+       (gpg_err_set_errno) [!GPG_ERR_INLINE]: Add macro.
+       * g10lib.h: Include libcompat.h.
+
+2010-01-05  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCRY_PK_ECDH): New.
+
+2009-12-08  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCRY_CIPHER_MODE_AESWRAP): New.
+
+2009-12-08  Marcus Brinkmann  <marcus@g10code.de>
+
+       * Makefile.am (LTRCCOMPILE): Refactor with ...
+       (RCCOMPILE): ... this new macro.  Add $(libgcrypt_la_CPPFLAGS).
+       (SUFFIXES): Add .lo.
+       (.rc.o): Change to ...
+       (.rc.lo): ... this implicit rule.
+       (gcrypt_res_ldflag): Removed.
+       (gcrypt_res): Use libtool object file name here.
+       (libgcrypt_la_LDFLAGS): Remove gcrypt_res_ldflag usage.
+       (libgcrypt_la_LIBADD): Add gcrypt_res.
+
+2009-11-29  Werner Koch  <wk@g10code.com>
+
+       * hwfeatures.c (detect_ia32_gnuc): Repalce "=r" by "+r" so that
+       HAS-CPUDID is always initialized.  Thanks to Ben Hutchings for
+       pointing out this problem.
+
+2009-08-05  Werner Koch  <wk@g10code.com>
+
+       * ath.h: Include sys/msg.h.
+
+2009-07-02  Werner Koch  <wk@g10code.com>
+
+       * fips.c (_gcry_initialize_fips_mode): Do not use FIPS mode if
+       /proc/.../fips_enabled has insufficient permissions.
+
+       * dumpsexp.c (main): Fix handling multiple files.
+       (parse_and_print): Implement hex and octal escaping.
+
+       * sexp.c (unquote_string): Remove superfluous clearing of ESC.
+       * dumpsexp.c (parse_and_print): Add missing break.
+       (main): Fix return value.
+       Reported by Fabian Keil.
+
+2009-02-16  Werner Koch  <wk@g10code.com>
+
+       * ath.h [HAVE_SYS_SELECT_H]: Include <sys/select.h> for fd_set.
+       [!HAVE_SYS_SELECT_H]: Include <sys/time.h>.  Move inclusion of
+       config.h to the top.  The actual configure check was already
+       there.
+
+       * sexp.c: Remove memory.h.
+       * mpi.h: Remove memory.h.  Add string.h.
+
+2009-02-02  Werner Koch  <wk@g10code.com>
+
+       * ath.h: Include sys/time.h.  Fixes bug#993.
+
+2009-01-22  Werner Koch  <wk@g10code.com>
+
+       * fips.c (_gcry_initialize_fips_mode): Remove superfluous const
+       from static string.  Reported by Albert Chin.
+       * hmac256.c (selftest): Ditto and change to unsigned char.
+
+2008-12-10  Werner Koch  <wk@g10code.com>
+
+       * hmac256.c (finalize): Fix for big endian hosts.
+
+2008-12-05  Werner Koch  <wk@g10code.com>
+
+       * global.c (gcry_free): Save and restore ERRNO if set.
+
+2008-11-24  Werner Koch  <wk@g10code.com>
+
+       * sexp.c (get_internal_buffer): New.
+       (sexp_sscan): Add format character S.
+       * cipher-proto.h (pk_ext_generate_t): Add field EXTRAINFO  changed
+       all implementors.
+
+       * cipher-proto.h (pk_ext_generate_t): Simplify. 
+       (pk_get_param): New.
+       (pk_extra_spec_t): Add field GET_PARAM.
+       * cipher.h (PUBKEY_FLAG_TRANSIENT_KEY): Remove.
+       (_gcry_pubkey_extraspec_elg): New.
+
+2008-11-05  Werner Koch  <wk@g10code.com>
+
+       * cipher.h (CIPHER_INFO_NO_WEAK_KEY): New.
+
+       * cipher-proto.h (cipher_set_extra_info_t): New.
+       (cipher_extra_spec): Add field SET_EXTRA_INFO.
+
+2008-10-30  Werner Koch  <wk@g10code.com>
+
+       * g10lib.h (GCC_ATTR_FORMAT_ARG): New.
+       (_gcry_gettext): Use it.
+
+2008-10-24  Werner Koch  <wk@g10code.com>
+
+       * global.c (inactive_fips_mode): Move to fips.c. 
+       (gcry_set_allocation_handler): Factor code out to ...
+       * fips.c (_gcry_inactivate_fips_mode): New.
+       (_gcry_is_fips_mode_inactive): New.
+
+2008-09-29  Werner Koch  <wk@g10code.com>
+
+       * gcrypt-module.h (GCRY_MODULE_ID_USER, GCRY_MODULE_ID_USER_LAST):
+       New.
+       * module.c (MODULE_ID_USER, MODULE_ID_USER_LAST): Define using new
+       macros.
+
+2008-09-20  Werner Koch  <wk@g10code.com>
+
+       * hmac256.c (finalize) [WORDS_BIGENDIAN]: Fix sigbus problem.
+
+2008-09-18  Werner Koch  <wk@g10code.com>
+
+       * cipher-proto.h (pk_ext_generate_t): Add args QBITS, NAME, DOMAIN.
+
+       * fips.c (fips_new_state): Allow Error => Error transition.
+
+2008-09-18  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (gcry_fips_mode_active): New.
+
+       * secmem.c (_gcry_secmem_init): Factor most code out to ..
+       (secmem_init): .. new.
+       (DEFAULT_POOL_SIZE): Rename to MINIMUM_POOL_SIZE.
+       (STANDARD_POOL_SIZE): New.
+       (_gcry_secmem_malloc_internal): Don't abort if the pool is not
+       initialized but try to out intialize it first and only then print
+       an error message and return NULL.  If the pool is not locked while
+       in FIPS mode, return NULL.
+
+       * fips.c (FIPS_FORCE_FILE): New constant.  Change the file name to
+       "/etc/gcrypt/fips_enabled".
+       (enforced_fips_mode): New.
+       (_gcry_initialize_fips_mode): Set that flag.
+       (_gcry_enforced_fips_mode): New.
+       * global.c (inactive_fips_mode): New.
+       (_gcry_vcontrol): Take that flag in account for GCRYCTL_FIPS_MODE_P.
+       (gcry_set_allocation_handler): Take care of the enforced fips mdoe
+       flag.
+       (get_no_secure_memory): New.
+       (do_malloc, gcry_is_secure): Use it.
+
+2008-09-16  Werner Koch  <wk@g10code.com>
+
+       * global.c (print_config): Use y/n for fips mode.
+
+       * fips.c (fips_new_state): Allow transition to Error and
+       Fatal-error from Init.
+
+2008-09-15  Werner Koch  <wk@g10code.com>
+
+       * fips.c [HAVE_SYSLOG]: Include syslog.h.
+       (_gcry_initialize_fips_mode, lock_fsm, unlock_fsm)
+       (_gcry_fips_signal_error, fips_new_state)
+       (_gcry_fips_noreturn) [HAVE_SYSLOG]: Also log via syslog.
+       (check_binary_integrity) [HAVE_SYSLOG]: Log failure.
+       * global.h [HAVE_SYSLOG]: Include syslog.h.
+       (_gcry_global_is_operational) [HAVE_SYSLOG]: Print warning.
+
+       * global.c (_gcry_vcontrol): Use GCRYCTL_INITIALIZATION_FINISHED
+       to run power-up tests.  Add unpublished control commands 58-60.
+
+       * global.c (_gcry_global_is_operational): New.
+       * g10lib.h (fips_is_operational): Change to call this function.
+
+2008-09-12  Werner Koch  <wk@g10code.com>
+
+       * fips.c (_gcry_fips_run_selftests): Add arg EXTENDED.
+       (run_cipher_selftests, run_digest_selftests, run_hmac_selftests) 
+       (run_pubkey_selftests): Ditto.
+       * cipher-proto.h (selftest_func_t): Add arg EXTENDED
+
+2008-09-11  Werner Koch  <wk@g10code.com>
+
+       * fips.c: Include string.h.
+       (loxtoi_1, loxtoi_2, loxdigit_p): New.
+       (check_binary_integrity): Change the format of the expected file.
+
+       * fips.c (_gcry_fips_run_selftests): Run random tests before the
+       pubkey tests.
+
+2008-09-05  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCYRCTL_SELFTEST): New.
+       * global.c (_gcry_vcontrol): Implement.
+       * fips.c (_gcry_fips_run_selftests): Do state transitions only if
+       in fips mode.  Return an error code.
+
+2008-09-01  Werner Koch  <wk@g10code.com>
+
+       * stdmem.c: Re-indented.
+
+2008-08-29  Werner Koch  <wk@g10code.com>
+
+       * fips.c (_gcry_initialize_fips_mode): Changed /proc file to test
+       for FIPS mode.
+
+       * cipher-proto.h (pk_compute_keygrip_t): New.
+       (pk_extra_spec): Add field comp_keygrip.
+
+2008-08-28  Werner Koch  <wk@g10code.com>
+
+       * hwfeatures.c (_gcry_detect_hw_features): Disable hardware
+       detection in FIPS mode.
+
+2008-08-27  Werner Koch  <wk@g10code.com>
+
+       * global.c (_gcry_vcontrol): Allow running selftests from error
+       state.
+       (gcry_set_outofcore_handler): Only print a warning if used in FIPS
+       mode.
+       (gcry_xmalloc, gcry_xrealloc, gcry_xmalloc_secure, gcry_xstrdup):
+       Ignore an outofcore handler in FIPS mode.
+
+       * fips.c (_gcry_fips_test_error_or_operational): New.
+       (fips_new_state): Allow transition from error into selftest.
+       Disallow error to init.
+
+2008-08-26  Werner Koch  <wk@g10code.com>
+
+       * fips.c (fips_new_state): Print state transitions only at
+       verbosity level of 2.
+       (reporter): Likewise.
+
+       * cipher-proto.h (pk_ext_generate_t): New.
+       (pk_extra_spec): Add member ext_generate.
+       * cipher.h (PUBKEY_FLAG_TRANSIENT_KEY): New.
+
+2008-08-22  Werner Koch  <wk@g10code.com>
+
+       * hmac256.c (_gcry_hmac256_file): New.
+       (main): New option --binary.
+       * fips.c (check_binary_integrity): New.
+       (_gcry_fips_run_selftests): Run it.
+
+       * global.c (_gcry_vcontrol) <GCRYCTL_UPDATE_RANDOM_SEED_FILE>:
+       Check for fips operational state.
+       (_gcry_vcontrol) <GCRYCTL_FAST_POLL>: Ditt.
+
+2008-08-21  Werner Koch  <wk@g10code.com>
+
+       * misc.c (_gcry_log_printhex): New.
+
+2008-08-20  Werner Koch  <wk@g10code.com>
+
+       * g10lib.h (gcry_assert): New.  use this at almost all places
+       where we used a plain assert.
+       * misc.c (_gcry_assert_failed): New.
+       (_gcry_bug): Also use func variant for ISO-C99.
+
+2008-08-19  Werner Koch  <wk@g10code.com>
+
+       * visibility.c, visibility.h (gcry_mpi_lshift): New.
+       * libgcrypt.vers, libgcrypt.def, gcrypt.h.in: Ditto.
+
+2008-08-15  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (gcry_cipher_setkey): Replace macro by function.
+       (gcry_cipher_setiv):  Ditto.
+       (gcry_cipher_setctr): Ditto.
+       * visibility.c (gcry_cipher_setkey, gcry_cipher_setiv) 
+       (gcry_cipher_setctr): New.
+       * visibility.h (gcry_cipher_setkey, gcry_cipher_setiv) 
+       (gcry_cipher_setctr): New.
+       * libgcrypt.vers (gcry_cipher_setkey, gcry_cipher_setiv)
+       (gcry_cipher_setctr): New.
+       * libgcrypt.def (gcry_cipher_setkey, gcry_cipher_setiv) 
+       (gcry_cipher_setctr): New.
+
+       * hmac256.h, hmac256.c: New.
+       * Makefile.am (hmac256_SOURCES): New. 
+       * Makefile.am (bin_PROGRAMS): Add hmac256.
+
+       * gcrypt.h.in (struct gcry_thread_cbs): Change type of OPTION to
+       unsigned int.  Although this is a type change it does not make a
+       difference.
+       * ath.c (ath_install): Take the version of the option field in
+       account.
+       
+       * visibility.c (gcry_pk_encrypt, gcry_pk_decrypt, gcry_pk_sign)
+       (gcry_pk_verify, gcry_pk_testkey, gcry_pk_genkey)
+       (gcry_pk_get_nbits, gcry_pk_get_keygrip)
+       (gcry_md_open, gcry_md_copy, gcry_md_enable) 
+       (gcry_md_write, md_final, gcry_md_ctl, gcry_md_setkey) 
+       (gcry_md_hash_buffer, gcry_md_get_algo, gcry_md_info) 
+       (gcry_md_is_enabled)
+       (gcry_cipher_open, gcry_cipher_encrypt)
+       (gcry_cipher_decrypt, gcry_cipher_ctl)
+       (gcry_cipher_algo_info): Check whether the library is operational.
+
+       * cipher-proto.h: New.
+       * cipher.h: Include cipher-proto.h.
+       * visibility.h: Remove duplicate macro definitions.  Remove
+       gcry_cipher_register, gcry_md_register, gcry_pk_register macros.
+       * visibility.c: Include cipher-proto.h. 
+       (gcry_cipher_register): Pass dummy extra args to the internal
+       register function.
+       (gcry_md_register, gcry_pk_register): Ditto.
+       * g10lib.h (struct gcry_module): Add field EXTRASPEC.
+       * module.c (_gcry_module_add): Add arg EXTRASPEC.  Changed all
+       callers to pass NULL.
+
+       * fips.c: New.
+       * gcrypt.h.in (GCRYCTL_FIPS_MODE_P): New.
+       * global.c (global_init): Call fips initialization.
+       (_gcry_vcontrol): Add GCRYCTL_FIPS_MODE_P code.
+       (print_config): Add config item fips-mode.
+       (gcry_set_allocation_handler): Do not allow the use of custom
+       allocation handlers.
+       (gcry_set_outofcore_handler): Ditto.
+       (_gcry_get_debug_flag): Do not return any debug flags in fips mode.
+       * misc.c (_gcry_logv): Signal fips error on BUG or FATAL.
+       (_gcry_fatal_error): Ditto.
+
+2008-07-05  Werner Koch  <wk@g10code.com>
+
+       * Makefile.am: Include librandom.la.
+
+2008-04-18  Werner Koch  <wk@g10code.com>
+
+       * missing-string.c (vasprintf): Remove.  It is not used.  Reported
+       by Simon Josefsson.
+
+2008-03-11  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (gcry_ac_em_t, gcry_ac_scheme_t): Remove trailing
+       comma for full C-89 compatibility.
+       
+2008-01-21  Marcus Brinkmann  <marcus@g10code.de>
+
+       * hwfeatures.c (detect_ia32_gnuc): Fix inline asm.
+
+2007-12-11  Werner Koch  <wk@g10code.com>
+
+       * visibility.c (gcry_md_hash_buffer): Don't use return vor a void
+       function.  Hey, why does gcc not complain about this?
+       (gcry_ac_io_init_va): Ditto.
+
+2007-12-05  Werner Koch  <wk@g10code.com>
+
+       * hwfeatures.c (detect_ia32_gnuc): Depend on ENABLE_PADLOCK_SUPPORT.
+
+2007-12-03  Werner Koch  <wk@g10code.com>
+
+       * misc.c (_gcry_logv): Use abort for error levels fatal and bug as
+       this is more approriate for a library.  Terminate the secmem
+       before doing so.
+       (_gcry_fatal_error): Terminate secmem before abort.
+       * secmem.c (_gcry_secmem_malloc_internal): Use log_bug instead of
+       exit.
+
+2007-11-29  Werner Koch  <wk@g10code.com>
+
+       * hwfeatures.c (detect_ia32_gnuc): Detect Padlock engine.
+
+2007-11-13  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (_GCRY_GCC_ATTR_MALLOC): Fixed gcc version check.
+       Reported by Gabriele Monti.
+
+2007-10-31  Werner Koch  <wk@g10code.com>
+
+       * global.c (gcry_control): Factor most code out to ..
+       (_gcry_vcontrol): .. new.
+       * sexp.c (_gcry_sexp_vbuild): New.
+       * mpi.h (_gcry_mpi_set, _gcry_mpi_set_ui, _gcry_mpi_invm): Remove
+       prototypes as they are already in gcrypt.h.
+
+2007-10-30  Werner Koch  <wk@g10code.com>
+
+       * sexp.c (gcry_sexp_nth_string): Replace by _gcry_sexp_nth_string.
+
+       * visibility.h, visibility.c: New.
+       * g10lib.h: Include visibility.h instead of gcrypt.h.
+       * globals.c (_gcry_malloc): Rename to ..
+       (do_malloc): .. this.
+
+       * hwfeatures.c: New.
+       * global.c (global_init): Detect features.
+       (print_config): Print them.
+
+2007-08-22  Werner Koch  <wk@g10code.com>
+
+       * dumpsexp.c: New.
+       * Makefile.am (bin_PROGRAMS): Install it.
+
+       * getrandom.c (print_version): Use new standard license line.
+       * gcryptrnd.c (print_version): Ditto.
+
+2007-06-06  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCRY_THREAD_OPTION_PTH_IMPL): Factror network
+       related code out so that the prototypes can be adjusted for W32.
+       (_GCRY_THREAD_OPTION_PTH_IMPL_NET): New.
+
+2007-05-09  Werner Koch  <wk@g10code.com>
+
+       * libgcrypt.m4: Print found version on success.
+
+2007-05-09  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gcrypt.h.in (gcry_ac_io_t): Add name for anonymous union, and mark
+       all members as internal (actually: deprecated).
+
+2007-05-04  Werner Koch  <wk@g10code.com>
+
+       * Makefile.am (.rc.lo): New to replace gmake specific suffix rule.
+
+2007-05-03  Werner Koch  <wk@g10code.com>
+
+       * libgcrypt.def (gcry_sexp_nth_string): New.
+       * Makefile.am (EXTRA_DIST): Add libgcrypt.def.
+
+2007-05-02  Werner Koch  <wk@g10code.com>
+
+       * global.c (print_config): Print ciphers, digests and pubkeys.
+
+2007-05-02  David Shaw  <dshaw@jabberwocky.com>
+
+       * cipher.h, gcrypt.h.in: Add Camellia.
+
+2007-04-30  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCRYCTL_PRINT_CONFIG): New.
+       (GCRYCTL_SET_RNDEGD_SOCKET): New.
+       * global.c (gcry_control): Add GCRYCTL_PRINT_CONFIG and
+       GCRYCTL_SET_RNDEGD_SOCKET.
+       (print_config): New.
+       * misc.c (_gcry_log_info_with_dummy_fp): New.
+
+2007-04-18  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (gcry_sexp_nth_string): New.
+
+       * sexp.c (gcry_sexp_nth_data): Factored code out to ...
+       (sexp_nth_data): ... new.
+       (gcry_sexp_nth_string): New.
+       (gcry_sexp_nth_mpi): Reimplemented in terms of sexp_ntd_data.
+
+2007-04-16  Werner Koch  <wk@g10code.com>
+
+       * secmem.c (init_pool): Use sysconf() if available to determine
+       page size.
+       
+2007-03-22  Werner Koch  <wk@g10code.com>
+
+       * mpi.h (mpi_mod): New.
+       (mpi_new, mpi_snew): New.
+
+       * gcrypt.h.in: Add GCRY_PK_ECDSA.
+
+2007-03-16  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCRY_THREAD_OPTION_PTHREAD_IMPL): Fixed typo
+       introduced by me on 2006-10-23.
+
+2007-02-22  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (gcry_ac_id_to_name, gcry_ac_name_to_id): Mark as
+       deprecated.
+
+       * libgcrypt.def (gcry_fast_random_poll): Removed - it is a macro.
+       (gcry_cipher_register, gcry_cipher_unregister): New.
+       (gcry_md_register, gcry_md_unregister): New.
+       (gcry_pk_register, gcry_pk_unregister): New.
+       (gcry_ac_data_from_sexp, gcry_ac_data_to_sexp): New.
+       (gcry_ac_io_init, gcry_ac_io_init_va): New.
+       (gcry_ac_data_encrypt_scheme, gcry_ac_data_decrypt_scheme): New.
+       (gcry_ac_data_sign_scheme, gcry_ac_data_verify_scheme): New.
+
+       * missing-string.c: Include stdio.h for the vsprintf prototype.
+
+       * ath.h (struct ath_ops) [_WIN32]: Use int instead of socklen_t.
+
+2007-02-21  Werner Koch  <wk@g10code.com>
+
+       * libgcrypt.def (gcry_create_nonce, gcry_fast_random_poll)
+       (gcry_md_debug): New.
+
+       * libgcrypt-config.in: Remove duplicates from --cflags and --libs.
+       Print a error for option --thread.
+
+       * gcrypt.h.in (gcry_sexp_sprint): Change BUFFER from char* to void*.
+       (gcry_md_ctl): Change BUFFER from unsigned char* to void*.
+       (gcry_md_debug): New.
+       (gcry_cipher_encrypt, gcry_cipher_decrypt): Change buffer args to
+       void*.
+       (gcry_randomize): Change BUFFER to void.
+       (gcry_create_nonce): Ditto.
+
+       * libgcrypt.vers (gcry_md_debug): New.
+
+       * sexp.c (gcry_sexp_sprint): Ditto.
+       (normalize): Make P unsigned.
+       (gcry_sexp_nth_data): Cast return value to char*.
+       (sexp_sscan): Fix sign/unsigned conflicts.
+       (whitespacep): Change P to char*.
+       (unquote_string): Change STRING to char*.
+       (convert_to_hex): Change DEST to char*.
+       (convert_to_string): Change DEST and P to char*.
+       (convert_to_token): Chnage DEST to char*.
+       (gcry_sexp_canon_len): Change DISPHINT to unsigned char*.
+
+       * gcrypt-module.h (gcry_pk_spec): Made ALIASES a const.
+       (gcry_md_write_t): Changed BUF to a const void*.
+
+2007-02-12  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in: Include stdlib.h for the sake fo the trheading
+       macros.  Suggested by Andreas Metzler.
+
+       * secmem.c (ptr_into_pool_p): New.
+       (_gcry_private_is_secure): Implement in terms of new function.
+       (BLOCK_VALID): Removed.  Replaced all users by new function.
+
+2007-01-31  Werner Koch  <wk@g10code.com>
+
+       * secmem.c (_gcry_private_is_secure): Fixed severe implementation
+       flaw.  Might be the reason for some of the more obscure bugs.
+       (MB_WIPE_OUT): Use wipememory2.
+
+2006-10-23  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h.in (GCRY_THREAD_OPTION_PTHREAD_IMPL): Add some cast for
+       use by C-doubleplus.  In general I don't like this but due to
+       public demand I give up ;-)
+
+2006-10-19  Werner Koch  <wk@g10code.com>
+
+       * global.c (gcry_control) <GCRYCTL_INIT_SECMEM>: Return an error
+       if the memory could not be locked.
+       * secmem.c (not_locked): New.
+       (_gcry_secmem_get_flags): Return that flag.
+       * secmem.h (GCRY_SECMEM_FLAG_NOT_LOCKED): New.
+
+2006-10-05  Werner Koch  <wk@g10code.com>
+
+       * module.c (_gcry_module_id_new): Don't assign modules in the range
+       the range of 1024..4096.
+       * gcrypt.h (GCRY_MD_USER, GCRY_MD_USER_LAST): New
+       (GCRY_PK_USER, GCRY_PK_USER_LAST): New.
+       (GCRY_CIPHER_USER, GCRY_CIPHER_USER_LAST): New.
+
+2006-10-12  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gcrypt.h.in: Replace socklen_t with gcry_socklen_t.
+
+2006-10-11  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gcrypt.h.in: Replace version by @VERSION@.
+
+2006-10-10  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gcrypt.h: Add fallback type for socklen_t.  Move to ...
+       * gcrypt.h.in: ... this file.
+       * Makefile.am (EXTRA_DIST): Add gcrypt.h.in.
+
+2006-09-04  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h: Removed some trailing comma in enums.
+
+2006-08-29  Werner Koch  <wk@g10code.com>
+
+       * global.c (gcry_xrealloc): Pass secure flag to outofcore handler.
+
+       * gcrypt.h (GCRY_CIPHER_SEED): New.
+
+2006-08-21  Werner Koch  <wk@g10code.com>
+
+       * gcrypt.h (GCRYCTL_FAKED_RANDOM_P): New.
+
+2006-07-29  Marcus Brinkmann  <marcus@g10code.de>
+
+       * secmem.c (init_pool): Close FD after establishing the mapping.
+
+2006-07-12  Marcus Brinkmann  <marcus@g10code.de>
+
+       * ath.c (ath_mutex_destroy): Microoptimize destruction of unused
+       statitically initialized mutexes.  Suggested by Victor Stinner
+       <victor.stinner@inl.fr>.
+
+       * gcrypt.h (GCRY_THREAD_OPTION_PTHREAD_IMPL,
+       (GCRY_THREAD_OPTION_PTH_IMPL): Add missing initializers to
+       suppress gcc warning.
+       Submitted by Victor Stinner <victor.stinner@inl.fr>.
+
+2006-07-04  Marcus Brinkmann  <marcus@g10code.de>
+
+       * ath.c: Avoid warning about double defined type byte and other
+       hacks to let it build for W32 (backported from LIBGCRYPT-1-2-BRANCH).
+       * ath.h, gcrypt.h, tests/benchmark.c, src/types.h: Likewise.
+
+       * gcrypt.h: Revert last change, and instead:
+       [_WIN32 || __WIN32__]: Do not include <sys/socket.h>, but
+       <winsock2.h> and <ws2tcpip.h>.
+       Suggested by Simon Josefsson <jas@extundo.com>.
+       
+       * Makefile.am (install-data-local, uninstall-local, %.lo,
+       (install-def-file, uninstall-def-file): New targets.
+       (LTRCCOMPILE, gcrypt_res, gcrypt_res_ldflag, no_undefined,
+       (export_symbols, gcrypt_deps): New variables.
+       * versioninfo.rc.in: New file.
+       * libgcrypt.def: New file from ../w32-dll/libgcrypt.def.
+
+       * gcrypt.h [!HAVE_SYS_SOCKET_H]: Do not include sys/socket.h, but
+       the appropriate windows socket header.
+
 2006-06-21  Werner Koch  <wk@g10code.com>
 
        * global.c (gcry_xcalloc, gcry_xcalloc_secure): Made safe against
@@ -1547,7 +2207,7 @@ Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
 
        
  Copyright (C) 1998,1999,2000,2001,2002,2003
-              2004, 2005 Free Software Foundation, Inc.
+              2004, 2005, 2008, 2009 Free Software Foundation, Inc.
 
  This file is free software; as a special exception the author gives
  unlimited permission to copy and/or distribute it, with or without