Tue Oct 26 14:10:21 CEST 1999  Werner Koch  <wk@gnupg.de>

	* elgamal.c (sign): Hugh found strange code here. Replaced by BUG().

	* cipher.c: Merged with gcrypt/symapi.c.

	* pubkey.c (string_to_pubkey_algo): Renamed function to ...
	(gcry_pk_map_name): ... this.
	(pubkey_algo_to_string): Renamed function to ...
	(gcry_pk_algo_name): ... this.
	(gcry_pk_algo_info): New.
	* pubkey.c: Merged with gcrypt/pkapi.c.

	* md.c (md_reset): Clear finalized; thanks to Ulf Moeller for
	fixing this bug.

	* md.c: Merged with gcrypt/mdapi.c

Wed Sep 15 14:39:59 CEST 1999  Michael Roth <mroth@nessie.de>

	* des.c: Various speed improvements: One bit pre rotation
	  trick after initial permutation (Richard Outerbridge).
	  Finished test of SSLeay Tripple-DES patterns.

Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndw32.c: New.

Mon Sep 13 10:51:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* bithelp.h: New.
	* rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h

Tue Sep  7 16:23:36 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* Makefile.am: Fixed seds for latest egcc. By Ollivier Robert.

Mon Sep  6 19:59:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* des.c (selftest): Add some testpattern

Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using
	in place encryption. Pointed out by Frank Stajano.

Mon Jul 26 09:34:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* md5.c (md5_final): Fix for a SCO cpp bug.

Thu Jul 15 10:15:35 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* elgamal.c (elg_check_secret_key,elg_encrypt
	elg_decrypt,elg_sign,elg_verify): Sanity check on the args.
	* dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto.

	* pubkey.c (disable_pubkey_algo): New.
	(check_pubkey_algo2): Look at disabled algo table.
	* cipher.c (disable_cipher_algo): New.
	(check_cipher_algo): Look at disabled algo table.

Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* Makefile.am: Support for libtool.

Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* dsa.c (gen_k): Changed algorithm to consume less random bytes
	* elgamal.c (gen_k): Ditto.

	* random.c (random_dump_stats): New.

Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* primegen.c, elgamal.c, dsa.c (progess): New and replaced all
	fputc with a call to this function.

Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs.

	* cipher.c (do_cbc_encrypt, do_cbc_decrypt): New.

	* dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra).
	* Makefile.am (install-exec-hook): Removed.

Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* cipher.c (setup_cipher_table): Enable Twofish

	* random.c (fast_random_poll): Disable use of times() for mingw32.

Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* dynload.c (register_internal_cipher_extension): Minor init fix.

Tue May  4 15:47:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* primegen.c (gen_prime): Readded the Fermat test. Fixed the bug
	that we didn't correct for step when passing the prime to the
	Rabin-Miller test which led to bad performance (Stefan Keller).
	(check_prime): Add a first Fermat test.

Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* cipher.c (cipher_setiv): Add ivlen arg, changed all callers.

	* random.c (randomize_buffer): alway use secure memory because
	we can't use m_is_secure() on a statically allocated buffer.

	* twofish.c: Replaced some macros by a loop to reduce text size.
	* Makefile.am (twofish): No more need for sed editing.

Fri Apr  9 12:26:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* cipher.c (cipher_open): Reversed the changes for AUTO_CFB.

	* blowfish.c: Dropped the Blowfish 160 mode.
	* cipher.c (cipher_open): Ditto.
	(setup_cipher_table): Ditto.  And removed support of twofish128

Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* random.c (get_random_bits): Can now handle requests > POOLSIZE

	* cipher.c (cipher_open): Now uses standard CFB for automode if
	the blocksize is gt 8 (according to rfc2440).

	* twofish.c: Applied Matthew Skala's patches for 256 bit key.

Tue Apr  6 19:58:12 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* random.c (get_random_bits): Can now handle requests > POOLSIZE

	* cipher.c (cipher_open): Now uses standard CFB for automode if
	the blocksize is gt 8 (according to rfc2440).

Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndlinux.c (tty_printf) [IS_MODULE]: Removed.

	* rndegd.c (gather_random): Some fixes.

Wed Mar 17 13:09:03 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndegd.c (do_read): New.
	(gather_random): Changed the implementation.

Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed.

Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* md.c: Nearly a total rewrote.

Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* cipher.c (context): Fixed alignment
	* md.c: Ditto.

	* rndegd.c: New

Mon Feb 22 20:04:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndegd.c: New.

Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* Makefile.am: Modules are now figured out by configure
	* construct.c: New. Generated by configure. Changed all modules
	to work with that.
	* sha1.h: Removed.
	* md5.h: Removed.

	* twofish.c: Changed interface to allow Twofish/256

	* rndunix.c (start_gatherer): Die on SIGPIPE.

Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndunix.c (gather_random): Fix to avoid infinite loop.

Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* des.c (is_weak_key): Replace system memcmp due to bugs
	in SunOS's memcmp.
	(des_get_info): Return error on failed selftest.
	* twofish.c (twofish_setkey): Return error on failed selftest or
	invalid keylength.
	* cast5.c (cast_setkey): Ditto.
	* blowfish.c (bf_setkey): Return error on failed selftest.

Tue Jan 12 11:17:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* random.c (random_is_faked): New.

	* tiger.c: Only compile if we have the u64 type

Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndunix.c (gather_random): check for setuid.

	* Makefile.am: Add a way to staically link random modules

Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* md.c (md_stop_debug): Do a flush first.
	(md_open): size of buffer now depends on the secure parameter

Sun Jan  3 15:28:44 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* rndunix.c (start_gatherer): Fixed stupid ==/= bug

1998-12-31  Geoff Keating  <geoffk@ozemail.com.au>

	* des.c (is_weak_key): Rewrite loop end condition.

Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* random.c: add unistd.h for getpid().
	(RAND_MAX): Fallback value for Sun.

Wed Dec 23 17:12:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* md.c (md_copy): Reset debug.

Mon Dec 14 21:18:49 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* random.c (read_random_source): Changed the interface to the
	random gathering function.
	(gather_faked): Use new interface.
	* dynload.c (dynload_getfnc_fast_random_poll): Ditto.
	(dynload_getfnc_gather_random): Ditto.
	* rndlinux.c (gather_random): Ditto.
	* rndunix.c (gather_random): Ditto.

Sat Dec 12 18:40:32 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* dynload.c (SYMBOL_VERSION): New to cope with system which needs
	underscores.

	* rndunix.c: Rewrote large parts

Thu Dec 10 20:15:36 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* dynload.c (load_extension): increased needed verbosity level.

	* random.c (fast_random_poll): Fallback to a default fast random
	poll function.
	(read_random_source): Always use the faked entroy gatherer if no
	gather module is available.
	* rndlinux.c (fast_poll): Removed.
	* rndunix.c (fast_poll): Removed.


Wed Nov 25 12:33:41 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rand-*.c: Removed.
	* rndlinux.c : New.
	* rndunix.c : New.
	* random.c : Restructured the interface to the gather modules.
	(intialize): Call constructor functions
	(read_radnom_source): Moved to here.
	* dynload.c (dynload_getfnc_gather_random): New.
	(dynload_getfnc_fast_random_poll): New.
	(register_internal_cipher_extension): New.
	(register_cipher_extension): Support of internal modules.

Sun Nov  8 17:44:36 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rand-unix.c (read_random_source): Removed the assert.

Mon Oct 19 18:34:30 1998  me,,,  (wk@tobold)

	* pubkey.c: Hack to allow us to give some info about RSA keys back.

Thu Oct 15 11:47:57 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* dynload.c: Support for DLD

Wed Oct 14 12:13:07 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rand-unix.c: Now uses names from configure for /dev/random.

1998-10-10  SL Baur  <steve@altair.xemacs.org>

	* Makefile.am: fix sed -O substitutions to catch -O6, etc.

Tue Oct  6 10:06:32 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-)
	* rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto.

Mon Sep 28 13:23:09 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md.c (md_digest): New.
	(md_reset): New.

Wed Sep 23 12:27:02 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned.

Mon Sep 21 06:22:53 1998  Werner Koch  (wk@(none))

	* des.c: Some patches from Michael.

Thu Sep 17 19:00:06 1998  Werner Koch  (wk@(none))

	* des.c : New file from Michael Roth <mroth@nessie.de>

Mon Sep 14 11:10:55 1998  Werner Koch  (wk@(none))

	* blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys.

Mon Sep 14 09:19:25 1998  Werner Koch  (wk@(none))

	* dynload.c (RTLD_NOW): Now defined to 1 if it is undefined.

Mon Sep  7 17:04:33 1998  Werner Koch  (wk@(none))

	* Makefile.am: Fixes to allow a different build directory

Thu Aug  6 17:25:38 1998  Werner Koch,mobil,,,	(wk@tobold)

	* random.c (get_random_byte): Removed and changed all callers
	to use get_random_bits()

Mon Jul 27 10:30:22 1998  Werner Koch  (wk@(none))

	* cipher.c : Support for other blocksizes
	(cipher_get_blocksize): New.
	* twofish.c: New.
	* Makefile.am: Add twofish module.

Mon Jul 13 21:30:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* random.c (read_pool): Simple alloc if secure_alloc is not set.
	(get_random_bits): Ditto.

Thu Jul  9 13:01:14 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* dynload.c (load_extension): Function now nbails out if
	the program is run setuid.

Wed Jul  8 18:58:23 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rmd160.c (rmd160_hash_buffer): New.

Thu Jul  2 10:50:30 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c (cipher_open): algos >=100 use standard CFB

Thu Jun 25 11:18:25 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* Makefile.am: Support for extensions

Thu Jun 18 12:09:38 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* random.c (mix_pool): simpler handling for level 0

Mon Jun 15 14:40:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* tiger.c: Removed from dist, will reappear as dynload module

Sat Jun 13 14:16:57 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* pubkey.c: Major changes to allow extensions. Changed the inteface
	of all public key ciphers and added the ability to load extensions
	on demand.

	* misc.c: Removed.

Wed Jun 10 07:52:08 1998  Werner Koch,mobil,,,	(wk@tobold)

	* dynload.c: New.
	* cipher.c: Major changes to allow extensions.

Mon Jun  8 22:43:00 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c: Major internal chnages to support extensions.
	* blowfish.c (blowfish_get_info): New and made all internal
	functions static, changed heder.
	* cast5.c (cast5_get_info): Likewise.

Mon Jun  8 12:27:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* tiger.c (transform): Fix for big endian

	* cipher.c (do_cfb_decrypt): Big endian fix.

Fri May 22 07:30:39 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md.c (md_get_oid): Add a new one for TIGER.

Thu May 21 13:24:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c: Add support for a dummy cipher

Thu May 14 15:40:36 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rmd160.c (transform): fixed sigbus - I should better
	add Christian von Roques's new implemenation of rmd160_write.

Fri May  8 18:07:44 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New
	* random.c: Moved system specific functions to rand-****.c

Fri May  8 14:01:17 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* random.c (fast_random_poll): add call to gethrtime.

Tue May  5 21:28:55 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* elgamal.c (elg_generate): choosing x was not correct, could
	yield 6 bytes which are not from the random pool, tsss, tsss..

Tue May  5 14:09:06 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* primegen.c (generate_elg_prime): Add arg mode, changed all
	callers and implemented mode 1.

Mon Apr 27 14:41:58 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c (cipher_get_keylen): New.

Sun Apr 26 14:44:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* tiger.c, tiger.h: New.

Wed Apr  8 14:57:11 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* misc.c (check_pubkey_algo2): New.

Tue Apr  7 18:46:49 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c: New
	* misc.c (check_cipher_algo): Moved to cipher.c
	* cast5.c: Moved many functions to cipher.c
	* blowfish.c: Likewise.

Sat Apr  4 19:52:08 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cast5.c: Implemented and tested.

Wed Apr  1 16:38:27 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* elgamal.c (elg_generate): Faster generation of x in some cases.

Thu Mar 19 13:54:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* blowfish.c (blowfish_decode_cfb): changed XOR operation
	(blowfish_encode_cfb): Ditto.

Thu Mar 12 14:04:05 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sha1.c (transform): Rewrote

	* blowfish.c (encrypt): Unrolled for rounds == 16
	(decrypt): Ditto.

Tue Mar 10 16:32:08 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rmd160.c (transform): Unrolled the loop.

Tue Mar 10 13:05:14 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* random.c (read_pool): Add pool_balance stuff.
	(get_random_bits): New.

	* elgamal.c (elg_generate): Now uses get_random_bits to generate x.


Tue Mar 10 11:33:51 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md.c (md_digest_length): New.

Tue Mar 10 11:27:41 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* dsa.c (dsa_verify): Works.

Mon Mar  9 12:59:08 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* dsa.c, dsa.h: Removed some unused code.

Wed Mar  4 10:39:22 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md.c (md_open): Add call to fast_random_poll.
	blowfish.c (blowfish_setkey): Ditto.

Tue Mar  3 13:32:54 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* rmd160.c (rmd160_mixblock): New.
	* random.c: Restructured to start with a new RNG implementation.
	* random.h: New.

Mon Mar  2 19:21:46 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* gost.c, gost.h: Removed because they did only conatin trash.

Sun Mar  1 16:42:29 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* random.c (fill_buffer): removed error message if n == -1.

Fri Feb 27 16:39:34 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md.c (md_enable): No init if called twice.

Thu Feb 26 07:57:02 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* primegen.c (generate_elg_prime): Changed the progress printing.
	(gen_prime): Ditto.

Tue Feb 24 12:28:42 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md5.c, md.5 : Replaced by a modified version of md5.c from
	GNU textutils 1.22.

Wed Feb 18 14:08:30 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* md.c, md.h : New debugging support

Mon Feb 16 10:08:47 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* misc.c (cipher_algo_to_string): New
	(pubkey_algo_to_string): New.
	(digest_algo_to_string): New.