* idea-stub.c (load_module, idea_get_info): Return the proper type for
[gnupg.git] / cipher / ChangeLog
1 2003-12-29  David Shaw  <dshaw@jabberwocky.com>
2
3         * idea-stub.c (load_module, idea_get_info): Return the proper type
4         for idea_get_info from inside load_module.  From Stefan Bellon.
5
6         * rijndael.c, rndunix.c, twofish.c: Remove dead IS_MODULE code.
7
8         * g10c.c: Dead code.  Remove.
9
10         * Makefile.am: Don't compile g10c.c.
11
12 2003-12-28  Stefan Bellon  <sbellon@sbellon.de>
13
14         * rndriscos.c (rndriscos_gather_random) [__riscos__]: Declare
15         variable outside loop.
16
17         * blowfish.c, twofish.c [__riscos__]: Removal of unnecessary
18         #ifdef __riscos__ sections.
19
20 2003-12-17  David Shaw  <dshaw@localhost.localdomain>
21
22         * dsa.h, dsa.c (dsa_verify), elgamal.h, elgamal.c (elg_verify),
23         rsa.h, rsa.c (rsa_verify), pubkey.c (dummy_verify, pubkey_verify):
24         Remove old unused code.
25
26 2003-12-03  David Shaw  <dshaw@jabberwocky.com>
27
28         * pubkey.c (setup_pubkey_table): Don't allow signatures to and
29         from encrypt-only Elgamal keys.
30         (pubkey_get_npkey, pubkey_get_nskey, pubkey_get_nsig,
31         pubkey_get_nenc, pubkey_nbits): Wrap the RSA cheats in !USE_RSA.
32         Add cheats for sign+encrypt Elgamal.
33
34 2003-11-30  David Shaw  <dshaw@jabberwocky.com>
35
36         * pubkey.c (setup_pubkey_table): Only include RSA if USE_RSA is
37         defined.
38         (pubkey_get_npkey): Return 2 for RSA even if it isn't available so
39         we can at least handle RSA keys.
40
41 2003-11-27  Werner Koch  <wk@gnupg.org>
42
43         * pubkey.c (pubkey_sign): Return an error if an ElGamal key is
44         used.
45
46         * elgamal.c (gen_k): New arg SMALL_K.
47         (sign): Use it here with SMALL_K set to false
48         (do_encrypt): and here with SMALL_K set to true.
49
50 2003-10-10  Werner Koch  <wk@gnupg.org>
51
52         * primegen.c (gen_prime): Bail out if we try to generate a prime
53         with less than 16 bits. Include i18n.h.
54
55 2003-10-06  Werner Koch  <wk@gnupg.org>
56
57         * primegen.c (gen_prime): Bail out if NBITS is zero.  This is
58         Debian bug #213989 reported by Max <rusmir@tula.net>.
59
60 2003-09-04  David Shaw  <dshaw@jabberwocky.com>
61
62         * md.c (string_to_digest_algo): Enable read-write SHA-256 support.
63
64         * algorithms.h, Makefile.am, md.c (load_digest_module,
65         string_to_digest_algo), tiger.c: Drop TIGER/192 support.
66
67 2003-08-28  David Shaw  <dshaw@jabberwocky.com>
68
69         * idea-stub.c, random.c; s/__MINGW32__/_WIN32/ to help building on
70         native Windows compilers.  Requested by Brian Gladman.  From
71         Werner on stable branch.
72
73 2003-08-21  David Shaw  <dshaw@jabberwocky.com>
74
75         * random.c (getfnc_gather_random): Don't check NAME_OF_DEV_RANDOM
76         twice.  Use NAME_OF_DEV_URANDOM.
77
78 2003-05-24  David Shaw  <dshaw@jabberwocky.com>
79
80         * bithelp.h, des.c, random.c, rndlinux.c, sha1.c, blowfish.c,
81         elgamal.c, rijndael.c, rndunix.c, sha256.c, cast5.c, idea-stub.c,
82         rmd160.c, rndw32.c, sha512.c, md5.c, rmd160test.c, rsa.c, tiger.c:
83         Edit all preprocessor instructions to remove whitespace before the
84         '#'.  This is not required by C89, but there are some compilers
85         out there that don't like it.
86
87 2003-05-15  David Shaw  <dshaw@jabberwocky.com>
88
89         * cipher.c (setup_cipher_table): #ifdef IDEA.
90
91         * random.c (fast_random_poll): Only use times() if we HAVE_TIMES.
92
93         * sha512.c, tiger.c: Use the U64_C() macro to specify 64-bit
94         constants.  U64_C is defined in include/types.h and uses the
95         correct suffix depending on the underlying type of u64.
96
97         * idea-stub.c (load_module): Catch an error if the idea module
98         file is unloadable for some reason (unreadable, bad permissions,
99         etc.)
100
101         * md.c (string_to_digest_algo): Give a warning about TIGER192 not
102         being part of OpenPGP.
103
104 2003-04-15  Werner Koch  <wk@gnupg.org>
105
106         * md.c (md_start_debug): Need to open the file in binary mode.
107
108 2003-02-21  David Shaw  <dshaw@jabberwocky.com>
109
110         * cipher.c (setup_cipher_table): #ifdef all optional ciphers.
111
112         * md.c (load_digest_module): #ifdef all optional digests.
113
114 2003-02-11  David Shaw  <dshaw@jabberwocky.com>
115
116         * Makefile.am, md.c (load_digest_module): Only build in SHA384/512
117         and TIGER if specifically enabled by the 64-bit type check in
118         configure.
119
120 2003-02-04  David Shaw  <dshaw@jabberwocky.com>
121
122         * sha256.c, sha512.c: New.
123
124         * Makefile.am, algorithms.h, md.c (load_digest_module,
125         string_to_digest_algo): Add read-only support for the new SHAs.
126
127 2002-11-06  David Shaw  <dshaw@jabberwocky.com>
128
129         * rndw32.c [__CYGWIN32__]: Don't include winioctl.h - it is not
130         required anymore. (From Werner)
131
132         * random.c (read_seed_file,update_random_seed_file): Use binary
133         mode for __CYGWIN__. (From Werner)
134
135         * blowfish.c (burn_stack), cast5.c (burn_stack), des.c
136         (burn_stack), md5.c (burn_stack), random.c (burn_stack, read_pool,
137         fast_random_poll), rijndael.c (burn_stack), rmd160.c (burn_stack),
138         rndegd.c (rndegd_gather_random), rndlinux.c
139         (rndlinux_gather_random), sha1.c (burn_stack), tiger.c
140         (burn_stack), twofish.c (burn_stack): Replace various calls to
141         memset() with the more secure wipememory().
142
143 2002-11-02  David Shaw  <dshaw@jabberwocky.com>
144
145         * cipher.c (string_to_cipher_algo), md.c (string_to_digest_algo):
146         Allow the Sxxx and Hxxx format for cipher and digest names.
147
148 2002-10-31  Stefan Bellon  <sbellon@sbellon.de>
149
150         * rndriscos.c (rndriscos_gather_random): Use riscos_load_module()
151         to load CryptRandom module.
152
153 2002-10-12  Werner Koch  <wk@gnupg.org>
154
155         * rndunix.c (my_popen): Make sure that stdin and stderr are
156         connected to a file.  This is to avoid NetBSD to complain about
157         set{u,g}id programs invoked with fd 0, 2 closed.  Reported by
158         Cristian Biere.
159         (start_gatherer): Likewise. Reordered code.
160
161 2002-10-02  David Shaw  <dshaw@jabberwocky.com>
162
163         * tiger.c (tiger_get_info): Select the OID to use for TIGER at
164         compile time.
165
166 2002-09-27  David Shaw  <dshaw@jabberwocky.com>
167
168         * Makefile.am, md.c (load_digest_module): TIGER is now always
169         enabled.
170
171 2002-09-26  Werner Koch  <wk@gnupg.org>
172
173         * tiger.c (tiger_get_info): Use a regular OID.  Note that this
174         breaks all TIGER generated signatures; if we want to do something
175         about it we have to do it in ../g10/sig-check.c .
176
177 2002-09-17  Werner Koch  <wk@gnupg.org>
178
179         * rndw32.c (SIZEOF_DISK_PERFORMANCE_STRUCT): Increased to 256.
180
181 2002-09-12  Stefan Bellon  <sbellon@sbellon.de>
182
183         * rand-internal.h (rndriscos_gather_random): Added prototype.
184
185 2002-08-30  Werner Koch  <wk@gnupg.org>
186
187         * random.c: Automagically detect the entropy gatherer when
188         this feature is configured.
189         * rndegd.c (rndegd_connect_socket): New.  Factored out from ..
190         (rndegd_gather_random): here and call it.
191         (do_read): Update the counter variables correctly.  This was not a
192         problem due to the way EGD works. Bug found by Christian Biere.
193
194 2002-08-20  Werner Koch  <wk@gnupg.org>
195
196         * primegen.c (generate_elg_prime): Return all factors for mode 1.
197         Bug reported by Bob Mathews.
198
199 2002-08-12  Werner Koch  <wk@gnupg.org>
200
201         * cipher.c: Include the DUMMY cipher only when the new ALLOW_DUMMY
202         is defined. It should only be defined for hard core debugging.
203
204 2002-08-08  David Shaw  <dshaw@jabberwocky.com>
205
206         * Makefile.am, md.c (load_digest_module): Allow switching TIGER on
207         and off via configure.
208
209 2002-08-07  David Shaw  <dshaw@jabberwocky.com>
210
211         * md.c (md_algo_present): New function to check if a given algo is
212         in use for a given MD_HANDLE.
213
214 2002-08-04  Werner Koch  <wk@gnupg.org>
215
216         * blowfish.h, cast5.h, des.h: Removed after moving all prototypes to
217         * algorithms.h: here. Changed all sources to use this one.
218         
219 2002-08-03  Stefan Bellon  <sbellon@sbellon.de>
220
221         * idea-stub.c (idea_get_info): RISC OS' Norcroft C needs a cast.
222         * random.c (getfnc_gather_random): Added RISC OS support.
223         * rndriscos.c: Removed dynload code and tidied up a bit.
224
225 2002-08-03  Werner Koch  <wk@gnupg.org>
226
227         * rndegd.c (do_read): Handle case when read returns 0 to avoid
228         gpg hanging when EGD died.  By Christian Biere.
229
230 2002-08-02  Werner Koch  <wk@gnupg.org>
231
232         The big extension removal.
233         
234         * Makefile.am: Removed all extension stuff.
235         * dynload.c: Removed everything except for
236         register_cipher_extension.
237         (dynload_enum_module_names): New.
238         * dynload.h: Removed.
239         * random.c (getfnc_gather_random,getfnc_fast_random_poll):
240         New. Replaced all dynload functions with these ones.
241         * rndunix.c (rndunix_gather_random): Renamed from
242         gather_random.  Made global.  Removed all dynload stuff.
243         * rndlinux.c (rndlinux_gather_random): Likewise.
244         * rndegd.c (rndegd_gather_random): Likewise.
245         * rndw32.c (rndw32_gather_random)
246         (rndw32_gather_random_fast): Likewise.  Also removed the unsued
247         entropy dll code.
248         * md.c (new_list_item): Changed return value to indicate whether
249         an algorithms was loaded.
250         (load_digest_module): Simplified by removing all the dynload code.
251         * algorithms.h: New.
252         * md5.c (md5_get_info): Made global.  Removed all dynload stuff.
253         * rmd160.c (rmd160_get_info): Likewise. 
254         * sha1.c (sha1_get_info): Likewise.
255         * tiger.c (tiger_get_info): Likewise. Return NULL if we can't use
256         this module.
257         * idea-stub.c: New.
258         * blowfish.h (idea_get_info): Add prototype.
259         * cipher.c (setup_cipher_table): Try to load IDEA.
260         (load_cipher_modules): Removed all dynload code.
261         * pubkey.c (load_pubkey_modules): Removed the dynloading code.
262
263 2002-07-25  David Shaw  <dshaw@jabberwocky.com>
264
265         * random.c: "warning" -> "WARNING"
266
267 2002-07-02  Werner Koch  <wk@gnupg.org>
268
269         * rndw32.c (slow_gatherer_windowsNT): Use a simple array for the
270         disk performance structure and increase it to the size required by
271         W2000.
272
273 2002-06-29  Werner Koch  <wk@gnupg.org>
274
275         * rndlinux.c: Removed HAVE_LINUX_RANDOM_H conditional because it
276         was never used and the configure test did set the wrong macro
277         anyway.
278
279 2002-05-07  Stefan Bellon  <sbellon@sbellon.de>
280
281         * md.c (md_start_debug): Use EXTSEP_S instead of ".".
282
283 2002-04-24  Werner Koch  <wk@gnupg.org>
284
285         * tiger.c (tiger_final): Removed superfluous token pasting operators.
286         * md5.c (md5_final): Ditto.
287
288 2002-04-22  Stefan Bellon  <sbellon@sbellon.de>
289
290         * rndriscos.c (func_table): Made func a function pointer.
291         (init_device): Improved loading of CryptRandom module.
292
293 2002-04-18  Werner Koch  <wk@gnupg.org>
294
295         * rndlinux.c, rndegd.c, rndunix.c (func_table): Made func a
296         function pointer.  Note that we still need to change the module
297         interface to cope with data vs function pointer problems.  Hmmm,
298         even dlsym has a problem with this.
299
300 2002-04-10  David Shaw  <dshaw@jabberwocky.com>
301
302         * cipher.c (setup_cipher_table, cipher_open, cipher_encrypt,
303         cipher_decrypt, dummy_setkey, dummy_encrypt_block,
304         dummy_decrypt_block): the dummy cipher should only be built on
305         development versions.
306
307 2002-04-06  Werner Koch  <wk@gnupg.org>
308
309         * rijndael.c (rijndael_get_info): We do only support a 128 bit
310         blocksize so it makes sense to change the algorithm strings to
311         AES.
312         * cipher.c (string_to_cipher_algo): Map "RIJNDAEL" to "AES".
313
314 2002-02-14  Werner Koch  <wk@gnupg.org>
315
316         * random.c (mix_pool): Removed the failsafe stuff again.  It makes
317         the code more complicate and may give the path to more bugs.
318
319 2002-02-10  Werner Koch  <wk@gnupg.org>
320
321         * random.c (mix_pool): Carry an extra failsafe_digest buffer
322         around to make the function more robust.
323
324 2002-02-08  Werner Koch  <wk@gnupg.org>
325
326         * random.c (add_randomness): Xor new data into the pool and not
327         just copy it.  This avoids any choosen input attacks which are not
328         serious in our setting because an outsider won't be able to mix
329         data in and even then we keep going with a PRNG.  Thanks to Stefan
330         Keller for pointing this out.
331
332 2002-01-02  Stefan Bellon  <sbellon@sbellon.de>
333
334         * rndriscos.c [__riscos__]: Updated include file name.
335
336 2001-12-21  Werner Koch  <wk@gnupg.org>
337
338         * Makefile.am (DISCLEANFILES): Add construct.c
339
340 2001-12-19  Werner Koch  <wk@gnupg.org>
341
342         * rndw32.c [CYGWIN32]: Include winioctl.h.  By Disastry.
343
344 2001-11-08  Werner Koch  <wk@gnupg.org>
345
346         * primegen.c (gen_prime): Set 2 high order bits for secret primes.
347         * rsa.c (generate): Loop until we find the exact modulus size.
348         Changed the exponent to 41.
349
350 2001-10-22  Werner Koch  <wk@gnupg.org>
351
352         * Makefile.am: Need to use $(EXEEXT) where approriate.
353
354 2001-09-09  Werner Koch  <wk@gnupg.org>
355
356         * rsa.c (rsa_get_info): s/usage/r_usage/ to avoid shadow warnings.
357
358 2001-08-24  Werner Koch  <wk@gnupg.org>
359
360         * md.c (md_write): Made buf arg const.
361
362 2001-08-22  Werner Koch  <wk@gnupg.org>
363
364         * random.c (fast_random_poll): Don't use gethrtime if it is broken.
365
366 2001-08-20  Werner Koch  <wk@gnupg.org>
367
368         Applied patches from Stefan Bellon <sbellon@sbellon.de> to support
369         RISC OS.  Nearly all of these patches are identified by the
370         __riscos__ macro.
371         * blowfish.c, twofish.c: Added pragmas for use with a Norcraft
372         compiler. 
373         * dynload.c, md5.c, rmd160.c, sha1.c: Minor patches for RISC OS.
374         * rndriscos.c: New.
375         * rnd-internal.h: Added prototype.
376         * random.c (fast_random_poll): Use '#if defined' instead of just
377         'defined'; needed for RISC OS.
378         * primegen.c (gen_prime): count? are now ints for consistence
379         with is_prime().
380
381 2001-08-08  Werner Koch  <wk@gnupg.org>
382
383         * rndw32.c (gather_random): Use toolhelp in addition to the NT
384         gatherer for Windows2000.  Suggested by Sami Tolvanen.
385
386         * random.c (read_pool): Fixed length check, this used to be one
387         byte to strict.  Made an assert out of it because the caller has
388         already made sure that only poolsize bytes are requested.
389         Reported by Marcus Brinkmann.
390
391 2001-07-18  Werner Koch  <wk@gnupg.org>
392
393         * rndlinux.c (gather_random): casted a size_t arg to int so that
394         the format string is correct.  Casting is okay here and avoids
395         translation changes. 
396
397 2001-06-12  Werner Koch  <wk@gnupg.org>
398
399         * cipher.c (string_to_cipher_algo): Use ascii_strcasecmp().
400         * md.c (string_to_digest_algo): Ditto.
401         * pubkey.c (string_to_pubkey_algo): Ditto.
402         * rndw32.c (slow_gatherer_windowsNT): Ditto.  Not really needed
403         here but anyway.
404
405 2001-04-29  Werner Koch  <wk@gnupg.org>
406
407         * random.c (fast_random_poll): Do not check the return code of
408         getrusage.
409
410 2001-04-17  Werner Koch  <wk@gnupg.org>
411
412         * rndunix.c: Add a signal.h header to avoid warnings on Solaris 7
413         and 8.
414
415 2001-04-16  Werner Koch  <wk@gnupg.org>
416
417         * dynload.c [__MINGW32__]: Applied patch from Timo Schulz to make
418         it work under W32.  This patches is based on the one from
419         Disastry@saiknes.lv
420
421 2001-04-06  Werner Koch  <wk@gnupg.org>
422
423         * rijndael.c, des.c, blowfish.c, twofish.c, cast5.c (burn_stack):
424         New.  Add wrappers for most functions to be able to call
425         burn_stack after the function invocation. This methods seems to be
426         the most portable way to zeroise the stack used. It does only work
427         on stack frame based machines but it is highly portable and has no
428         side effects.  Just setting the automatic variables at the end of
429         a function to zero does not work well because the compiler will
430         optimize them away - marking them as volatile would be bad for
431         performance.
432         * md5.c, sha1.c, rmd160.c, tiger.c (burn_stack): Likewise.
433         * random.c (burn_stack): New.
434         (mix_pool): Use it here to burn the stack of the mixblock function.
435         
436 2001-04-02  Werner Koch  <wk@gnupg.org>
437
438         * primegen.c (generate_elg_prime): I was not initialized for mode
439         != 1.  Freed q at 3 places.  Thanks to  Tommi Komulainen.
440
441 2001-03-28  Werner Koch  <wk@gnupg.org>
442
443         * md5.c (md5_final): Fixed calculation of hashed length.  Thanks
444         to disastry@saiknes.lv for pointing out that it was horrible wrong
445         for more than 512MB of input.
446         * sha1.c (sha1_final): Ditto.
447         * rmd160.c (rmd160_final): Ditto.
448         * tiger.c (tiger_final): Ditto.
449
450 2001-03-19  Werner Koch  <wk@gnupg.org>
451
452         * blowfish.c (encrypt,do_encrypt): Changed name to do_encrypt to
453         avoid name clahses with an encrypt function in stdlib.h of
454         Dynix/PIX.  Thanks to Gene Carter.
455         * elgamal.c (encrypt,do_encrypt): Ditto.
456
457 2001-03-12  Werner Koch  <wk@gnupg.org>
458
459         * twofish.c (gnupgext_enum_func): Add some static when comnpiled
460         as a module.
461
462         * tiger.c (tiger_get_info): Return "TIGER192" and not just
463         "TIGER".  By Edwin Woudt.
464
465 2001-03-08  Werner Koch  <wk@gnupg.org>
466
467         * random.c: Always include time.h - standard requirement.  Thanks
468         to James Troup.
469
470 2001-01-18  Werner Koch  <wk@gnupg.org>
471
472         * rndw32.c: Fixed typo and wrong ifdef for VER_PLATFORM* macro
473
474 2001-01-12  Werner Koch  <wk@gnupg.org>
475
476         * cipher.c (cipher_encrypt,cipher_encrypt): Use blocksize and
477         not 8 for CBC mode (However: we don't use CBS in OpenPGP).
478
479 2000-11-22  Werner Koch  <wk@gnupg.org>
480
481         * rndegd.c (gather_random): Fixed default socket to be '=entropy'.
482         Thanks to Tomasz Kozlowski.
483
484 2000-10-12  Werner Koch  <wk@gnupg.org>
485
486         * rijndael.c: New.
487         * cipher.c: Add Rijndael support.
488
489 Wed Oct  4 15:50:18 CEST 2000  Werner Koch  <wk@openit.de>
490
491         * sha1.c (transform): Use rol() macro.  Actually this is not needed
492         for a newer gcc but there are still aoter compilers.
493
494 Thu Sep 14 14:20:38 CEST 2000  Werner Koch  <wk@openit.de>
495
496         * random.c (fast_random_poll): Check ENOSYS for getrusage.
497         * rndunix.c:  Add 2 sources for QNX. By Sam Roberts.
498
499 Wed Sep 13 18:12:34 CEST 2000  Werner Koch  <wk@openit.de>
500
501         * rsa.c (secret): Speed up by using the CRT.  For a 2k keys this
502         is about 3 times faster.
503         (stronger_key_check): New but unused code to check the secret key.
504
505 Wed Sep  6 17:55:47 CEST 2000  Werner Koch  <wk@openit.de>
506
507         * rsa.c: Changed the comment about the patent.
508         * Makefile.am: Included rsa.[ch].
509         * pubkey.c: Enabled RSA support.
510         (pubkey_get_npkey): Removed RSA workaround.
511
512 Fri Aug 25 16:05:38 CEST 2000  Werner Koch  <wk@openit.de>
513
514         * rndlinux.c (open_device): Loose random device checking.
515         By Nils Ellmenreich.
516
517         * rndegd.c (gather_random): Name of socket is nom configurable.
518
519 Wed Jun 28 11:54:44 CEST 2000  Werner Koch  <wk@>
520
521   * rsa.c, rsa.h: New based on the old module version (only in CVS for now).
522   * pubkey.c (setup_pubkey_table): Added commented support for RSA.
523
524 Fri Jun  9 10:09:52 CEST 2000  Werner Koch  <wk@openit.de>
525
526   * rndunix.c (waitpid): New. For UTS 2.1.  All by Dave Dykstra.
527   (my_popen): Do the FD_CLOEXEC only if it is available
528   (start_gatherer): Cope with missing _SC_OPEN_MAX
529
530 Sun May 28 13:55:17 CEST 2000  Werner Koch  <wk@openit.de>
531
532   * random.c (read_seed_file): Binary open for DOSish system
533   (update_random_seed_file): Ditto.
534
535   * rndw32.c: Add some debuging code enabled by an environment variable.
536
537 Tue May 23 09:19:00 CEST 2000  Werner Koch  <wk@openit.de>
538
539         * rndw32.c: Started with alternative code to replace entropy.dll
540
541 Thu May 18 11:38:54 CEST 2000  Werner Koch  <wk@openit.de>
542
543         * primegen.c (register_primegen_progress): New.
544         * dsa.c (register_pk_dsa_progress): New.
545         * elgamal.c (register_pk_elg_progress): New.
546
547 Fri Apr 14 19:37:08 CEST 2000  Werner Koch  <wk@openit.de>
548
549         * twofish.c (twofish_get_info): Fixed warning about cast.
550
551 Tue Mar 28 14:26:58 CEST 2000  Werner Koch  <wk@openit.de>
552
553         * random.c [MINGW32]: Include process.h for getpid.
554
555 Thu Mar  2 15:37:46 CET 2000  Werner Koch  <wk@gnupg.de>
556
557         * random.c (fast_random_poll): Add clock_gettime() as fallback for
558         system which support this POSIX.4 fucntion. By Sam Roberts.
559
560         * rndunix.c: Add some more headers for QNX. By Sam Roberts.
561
562         * random.c (read_seed_file): Removed the S_ISLNK test becuase it
563         is already covered by !S_ISREG and is not defined in Unixware.
564         Reported by Dave Dykstra.
565
566         * sha1.c (sha1_get_info): Removed those stupid double lines. Dave
567         is really a good lint.
568
569 Wed Feb 23 10:07:57 CET 2000  Werner Koch  <wk@gnupg.de>
570
571         * twofish.c (twofish_get_info): Add some const to the casts.  By Martin
572         Kahlert.
573
574 Mon Feb 14 14:30:20 CET 2000  Werner Koch  <wk@gnupg.de>
575
576         (update_random_seed_file): Silently ignore update request when pool
577         is not filled.
578
579 Fri Feb 11 17:44:40 CET 2000  Werner Koch  <wk@gnupg.de>
580
581         * random.c (read_seed_file): New.
582         (set_random_seed_file): New.
583         (read_pool): Try to read the seeding file.
584         (update_random_seed_file): New.
585
586         (read_pool): Do an initial extra seeding when level 2 quality random
587         is requested the first time.  This requestes at least POOLSIZE/2 bytes
588         of entropy.  Compined with the seeding file this should make normal
589         random bytes cheaper and increase the quality of the random bytes
590         used for key generation.
591
592         * rndegd.c (gather_random): Shortcut level 0.
593         * rndunix.c (gather_random): Ditto.
594         * rndw32.c (gather_random): Ditto.
595
596 Fri Jan 14 18:32:01 CET 2000  Werner Koch  <wk@gnupg.de>
597
598         * rmd160.c (rmd160_get_info): Moved casting to the left side due to a
599         problem with UTS4.3.  Suggested by Dave Dykstra.
600         * sha1.c (sha1_get_info): Ditto.
601         * tiger.c (tiger_get_info): Ditto.
602         * md5.c (md5_get_info): Ditto
603         * des.c (des_get_info): Ditto.
604         * blowfish.c (blowfish_get_info): Ditto.
605         * cast5.c (cast5_get_info): Ditto.
606         * twofish.c (twofish_get_info): Ditto.
607
608 Thu Jan 13 19:31:58 CET 2000  Werner Koch  <wk@gnupg.de>
609
610         * elgamal.c (wiener_map): New.
611         (gen_k): Use a much smaller k.
612         (generate): Calculate the qbits using the wiener map and
613         choose an x at a size comparable to the one choosen in gen_k
614
615         * random.c (read_pool): Print a more friendly error message in
616         cases when too much random is requested in one call.
617
618         * Makefile.am (tiger): Replaced -O1 by -O. Suggested by Alec Habig.
619
620 Sat Dec  4 12:30:28 CET 1999  Werner Koch  <wk@gnupg.de>
621
622         * primegen.c (generate_elg_prime): All primes are now generated with
623         the lowest random quality level.  Becuase they are public anyway we
624         don't need stronger random and by this we do not drain the systems
625         entropy so much.
626
627 Thu Oct 28 16:08:20 CEST 1999  Werner Koch  <wk@gnupg.de>
628
629         * random.c (fast_random_poll): Check whether RUSAGE_SELF is defined;
630         this is not the case for some ESIX and Unixware, although they have
631         getrusage().
632
633         * elgamal.c (sign): Hugh found strange code here. Replaced by BUG().
634
635 Mon Oct 11 09:24:12 CEST 1999  Werner Koch  <wk@gnupg.de>
636
637         * rndw32.c (gather_random): Handle PCP_SEEDER_TOO_SMALL.
638
639 Sat Oct  9 20:34:41 CEST 1999  Werner Koch  <wk@gnupg.de>
640
641         * Makefile.am:  Tweaked module build and removed libtool
642
643 Fri Oct  8 20:32:01 CEST 1999  Werner Koch  <wk@gnupg.de>
644
645         * rndw32.c (load_and_init_winseed): Use the Registry to locate the DLL
646
647 Mon Oct  4 21:23:04 CEST 1999  Werner Koch  <wk@gnupg.de>
648
649         * md.c (md_reset): Clear finalized; thanks to Ulf Moeller for
650         fixing this bug.
651
652 Sat Sep 18 12:51:51 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
653
654         * Makefile.am: Never compile mingw32 as module
655
656 Wed Sep 15 14:39:59 CEST 1999  Michael Roth <mroth@nessie.de>
657
658         * des.c: Various speed improvements: One bit pre rotation
659           trick after initial permutation (Richard Outerbridge).
660           Finished test of SSLeay Tripple-DES patterns.
661
662 Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
663
664         * rndw32.c: New.
665
666 Mon Sep 13 10:51:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
667
668         * bithelp.h: New.
669         * rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h
670
671 Tue Sep  7 16:23:36 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
672
673         * Makefile.am: Fixed seds for latest egcc. By Ollivier Robert.
674
675 Mon Sep  6 19:59:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
676
677         * des.c (selftest): Add some testpattern
678
679 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
680
681         * cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using
682         in place encryption. Pointed out by Frank Stajano.
683
684 Mon Jul 26 09:34:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
685
686         * md5.c (md5_final): Fix for a SCO cpp bug.
687
688 Thu Jul 15 10:15:35 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
689
690         * elgamal.c (elg_check_secret_key,elg_encrypt
691         elg_decrypt,elg_sign,elg_verify): Sanity check on the args.
692         * dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto.
693
694         * pubkey.c (disable_pubkey_algo): New.
695         (check_pubkey_algo2): Look at disabled algo table.
696         * cipher.c (disable_cipher_algo): New.
697         (check_cipher_algo): Look at disabled algo table.
698
699 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
700
701         * Makefile.am: Support for libtool.
702
703 Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
704
705         * dsa.c (gen_k): Changed algorithm to consume less random bytes
706         * elgamal.c (gen_k): Ditto.
707
708         * random.c (random_dump_stats): New.
709
710 Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
711
712         * primegen.c, elgamal.c, dsa.c (progess): New and replaced all
713         fputc with a call to this function.
714
715 Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
716
717         * rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs.
718
719         * cipher.c (do_cbc_encrypt, do_cbc_decrypt): New.
720
721         * dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra).
722         * Makefile.am (install-exec-hook): Removed.
723
724 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
725
726         * cipher.c (setup_cipher_table): Enable Twofish
727
728         * random.c (fast_random_poll): Disable use of times() for mingw32.
729
730 Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
731
732         * dynload.c (register_internal_cipher_extension): Minor init fix.
733
734 Tue May  4 15:47:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
735
736         * primegen.c (gen_prime): Readded the Fermat test. Fixed the bug
737         that we didn't correct for step when passing the prime to the
738         Rabin-Miller test which led to bad performance (Stefan Keller).
739         (check_prime): Add a first Fermat test.
740
741 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
742
743         * cipher.c (cipher_setiv): Add ivlen arg, changed all callers.
744
745         * random.c (randomize_buffer): alway use secure memory because
746         we can't use m_is_secure() on a statically allocated buffer.
747
748         * twofish.c: Replaced some macros by a loop to reduce text size.
749         * Makefile.am (twofish): No more need for sed editing.
750
751 Fri Apr  9 12:26:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
752
753         * cipher.c (cipher_open): Reversed the changes for AUTO_CFB.
754
755         * blowfish.c: Dropped the Blowfish 160 mode.
756         * cipher.c (cipher_open): Ditto.
757         (setup_cipher_table): Ditto.  And removed support of twofish128
758
759 Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
760
761         * random.c (get_random_bits): Can now handle requests > POOLSIZE
762
763         * cipher.c (cipher_open): Now uses standard CFB for automode if
764         the blocksize is gt 8 (according to rfc2440).
765
766         * twofish.c: Applied Matthew Skala's patches for 256 bit key.
767
768 Tue Apr  6 19:58:12 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
769
770         * random.c (get_random_bits): Can now handle requests > POOLSIZE
771
772         * cipher.c (cipher_open): Now uses standard CFB for automode if
773         the blocksize is gt 8 (according to rfc2440).
774
775 Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
776
777         * rndlinux.c (tty_printf) [IS_MODULE]: Removed.
778
779         * rndegd.c (gather_random): Some fixes.
780
781 Wed Mar 17 13:09:03 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
782
783         * rndegd.c (do_read): New.
784         (gather_random): Changed the implementation.
785
786 Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
787
788         * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed.
789
790 Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
791
792         * md.c: Nearly a total rewrote.
793
794 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
795
796         * cipher.c (context): Fixed alignment
797         * md.c: Ditto.
798
799         * rndegd.c: New
800
801 Mon Feb 22 20:04:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
802
803         * rndegd.c: New.
804
805 Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
806
807         * Makefile.am: Modules are now figured out by configure
808         * construct.c: New. Generated by configure. Changed all modules
809         to work with that.
810         * sha1.h: Removed.
811         * md5.h: Removed.
812
813         * twofish.c: Changed interface to allow Twofish/256
814
815         * rndunix.c (start_gatherer): Die on SIGPIPE.
816
817 Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
818
819         * rndunix.c (gather_random): Fix to avoid infinite loop.
820
821 Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
822
823         * des.c (is_weak_key): Replace system memcmp due to bugs
824         in SunOS's memcmp.
825         (des_get_info): Return error on failed selftest.
826         * twofish.c (twofish_setkey): Return error on failed selftest or
827         invalid keylength.
828         * cast5.c (cast_setkey): Ditto.
829         * blowfish.c (bf_setkey): Return error on failed selftest.
830
831 Tue Jan 12 11:17:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
832
833         * random.c (random_is_faked): New.
834
835         * tiger.c: Only compile if we have the u64 type
836
837 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
838
839         * rndunix.c (gather_random): check for setuid.
840
841         * Makefile.am: Add a way to staically link random modules
842
843 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
844
845         * md.c (md_stop_debug): Do a flush first.
846         (md_open): size of buffer now depends on the secure parameter
847
848 Sun Jan  3 15:28:44 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
849
850         * rndunix.c (start_gatherer): Fixed stupid ==/= bug
851
852 1998-12-31  Geoff Keating  <geoffk@ozemail.com.au>
853
854         * des.c (is_weak_key): Rewrite loop end condition.
855
856 Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
857
858         * random.c: add unistd.h for getpid().
859         (RAND_MAX): Fallback value for Sun.
860
861 Wed Dec 23 17:12:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
862
863         * md.c (md_copy): Reset debug.
864
865 Mon Dec 14 21:18:49 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
866
867         * random.c (read_random_source): Changed the interface to the
868         random gathering function.
869         (gather_faked): Use new interface.
870         * dynload.c (dynload_getfnc_fast_random_poll): Ditto.
871         (dynload_getfnc_gather_random): Ditto.
872         * rndlinux.c (gather_random): Ditto.
873         * rndunix.c (gather_random): Ditto.
874
875 Sat Dec 12 18:40:32 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
876
877         * dynload.c (SYMBOL_VERSION): New to cope with system which needs
878         underscores.
879
880         * rndunix.c: Rewrote large parts
881
882 Thu Dec 10 20:15:36 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
883
884         * dynload.c (load_extension): increased needed verbosity level.
885
886         * random.c (fast_random_poll): Fallback to a default fast random
887         poll function.
888         (read_random_source): Always use the faked entroy gatherer if no
889         gather module is available.
890         * rndlinux.c (fast_poll): Removed.
891         * rndunix.c (fast_poll): Removed.
892
893
894 Wed Nov 25 12:33:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
895
896         * rand-*.c: Removed.
897         * rndlinux.c : New.
898         * rndunix.c : New.
899         * random.c : Restructured the interface to the gather modules.
900         (intialize): Call constructor functions
901         (read_radnom_source): Moved to here.
902         * dynload.c (dynload_getfnc_gather_random): New.
903         (dynload_getfnc_fast_random_poll): New.
904         (register_internal_cipher_extension): New.
905         (register_cipher_extension): Support of internal modules.
906
907 Sun Nov  8 17:44:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
908
909         * rand-unix.c (read_random_source): Removed the assert.
910
911 Mon Oct 19 18:34:30 1998  me,,,  (wk@tobold)
912
913         * pubkey.c: Hack to allow us to give some info about RSA keys back.
914
915 Thu Oct 15 11:47:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
916
917         * dynload.c: Support for DLD
918
919 Wed Oct 14 12:13:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
920
921         * rand-unix.c: Now uses names from configure for /dev/random.
922
923 1998-10-10  SL Baur  <steve@altair.xemacs.org>
924
925         * Makefile.am: fix sed -O substitutions to catch -O6, etc.
926
927 Tue Oct  6 10:06:32 1998  Werner Koch  (wk@isil.d.shuttle.de)
928
929         * rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-)
930         * rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto.
931
932 Mon Sep 28 13:23:09 1998  Werner Koch  (wk@isil.d.shuttle.de)
933
934         * md.c (md_digest): New.
935         (md_reset): New.
936
937 Wed Sep 23 12:27:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
938
939         * tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned.
940
941 Mon Sep 21 06:22:53 1998  Werner Koch  (wk@(none))
942
943         * des.c: Some patches from Michael.
944
945 Thu Sep 17 19:00:06 1998  Werner Koch  (wk@(none))
946
947         * des.c : New file from Michael Roth <mroth@nessie.de>
948
949 Mon Sep 14 11:10:55 1998  Werner Koch  (wk@(none))
950
951         * blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys.
952
953 Mon Sep 14 09:19:25 1998  Werner Koch  (wk@(none))
954
955         * dynload.c (RTLD_NOW): Now defined to 1 if it is undefined.
956
957 Mon Sep  7 17:04:33 1998  Werner Koch  (wk@(none))
958
959         * Makefile.am: Fixes to allow a different build directory
960
961 Thu Aug  6 17:25:38 1998  Werner Koch,mobil,,,  (wk@tobold)
962
963         * random.c (get_random_byte): Removed and changed all callers
964         to use get_random_bits()
965
966 Mon Jul 27 10:30:22 1998  Werner Koch  (wk@(none))
967
968         * cipher.c : Support for other blocksizes
969         (cipher_get_blocksize): New.
970         * twofish.c: New.
971         * Makefile.am: Add twofish module.
972
973 Mon Jul 13 21:30:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
974
975         * random.c (read_pool): Simple alloc if secure_alloc is not set.
976         (get_random_bits): Ditto.
977
978 Thu Jul  9 13:01:14 1998  Werner Koch  (wk@isil.d.shuttle.de)
979
980         * dynload.c (load_extension): Function now nbails out if
981         the program is run setuid.
982
983 Wed Jul  8 18:58:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
984
985         * rmd160.c (rmd160_hash_buffer): New.
986
987 Thu Jul  2 10:50:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
988
989         * cipher.c (cipher_open): algos >=100 use standard CFB
990
991 Thu Jun 25 11:18:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
992
993         * Makefile.am: Support for extensions
994
995 Thu Jun 18 12:09:38 1998  Werner Koch  (wk@isil.d.shuttle.de)
996
997         * random.c (mix_pool): simpler handling for level 0
998
999 Mon Jun 15 14:40:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
1000
1001         * tiger.c: Removed from dist, will reappear as dynload module
1002
1003 Sat Jun 13 14:16:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
1004
1005         * pubkey.c: Major changes to allow extensions. Changed the inteface
1006         of all public key ciphers and added the ability to load extensions
1007         on demand.
1008
1009         * misc.c: Removed.
1010
1011 Wed Jun 10 07:52:08 1998  Werner Koch,mobil,,,  (wk@tobold)
1012
1013         * dynload.c: New.
1014         * cipher.c: Major changes to allow extensions.
1015
1016 Mon Jun  8 22:43:00 1998  Werner Koch  (wk@isil.d.shuttle.de)
1017
1018         * cipher.c: Major internal chnages to support extensions.
1019         * blowfish.c (blowfish_get_info): New and made all internal
1020         functions static, changed heder.
1021         * cast5.c (cast5_get_info): Likewise.
1022
1023 Mon Jun  8 12:27:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1024
1025         * tiger.c (transform): Fix for big endian
1026
1027         * cipher.c (do_cfb_decrypt): Big endian fix.
1028
1029 Fri May 22 07:30:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
1030
1031         * md.c (md_get_oid): Add a new one for TIGER.
1032
1033 Thu May 21 13:24:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1034
1035         * cipher.c: Add support for a dummy cipher
1036
1037 Thu May 14 15:40:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
1038
1039         * rmd160.c (transform): fixed sigbus - I should better
1040         add Christian von Roques's new implemenation of rmd160_write.
1041
1042 Fri May  8 18:07:44 1998  Werner Koch  (wk@isil.d.shuttle.de)
1043
1044         * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New
1045         * random.c: Moved system specific functions to rand-****.c
1046
1047 Fri May  8 14:01:17 1998  Werner Koch  (wk@isil.d.shuttle.de)
1048
1049         * random.c (fast_random_poll): add call to gethrtime.
1050
1051 Tue May  5 21:28:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
1052
1053         * elgamal.c (elg_generate): choosing x was not correct, could
1054         yield 6 bytes which are not from the random pool, tsss, tsss..
1055
1056 Tue May  5 14:09:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
1057
1058         * primegen.c (generate_elg_prime): Add arg mode, changed all
1059         callers and implemented mode 1.
1060
1061 Mon Apr 27 14:41:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
1062
1063         * cipher.c (cipher_get_keylen): New.
1064
1065 Sun Apr 26 14:44:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1066
1067         * tiger.c, tiger.h: New.
1068
1069 Wed Apr  8 14:57:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
1070
1071         * misc.c (check_pubkey_algo2): New.
1072
1073 Tue Apr  7 18:46:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
1074
1075         * cipher.c: New
1076         * misc.c (check_cipher_algo): Moved to cipher.c
1077         * cast5.c: Moved many functions to cipher.c
1078         * blowfish.c: Likewise.
1079
1080 Sat Apr  4 19:52:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
1081
1082         * cast5.c: Implemented and tested.
1083
1084 Wed Apr  1 16:38:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
1085
1086         * elgamal.c (elg_generate): Faster generation of x in some cases.
1087
1088 Thu Mar 19 13:54:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
1089
1090         * blowfish.c (blowfish_decode_cfb): changed XOR operation
1091         (blowfish_encode_cfb): Ditto.
1092
1093 Thu Mar 12 14:04:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
1094
1095         * sha1.c (transform): Rewrote
1096
1097         * blowfish.c (encrypt): Unrolled for rounds == 16
1098         (decrypt): Ditto.
1099
1100 Tue Mar 10 16:32:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
1101
1102         * rmd160.c (transform): Unrolled the loop.
1103
1104 Tue Mar 10 13:05:14 1998  Werner Koch  (wk@isil.d.shuttle.de)
1105
1106         * random.c (read_pool): Add pool_balance stuff.
1107         (get_random_bits): New.
1108
1109         * elgamal.c (elg_generate): Now uses get_random_bits to generate x.
1110
1111
1112 Tue Mar 10 11:33:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
1113
1114         * md.c (md_digest_length): New.
1115
1116 Tue Mar 10 11:27:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
1117
1118         * dsa.c (dsa_verify): Works.
1119
1120 Mon Mar  9 12:59:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
1121
1122         * dsa.c, dsa.h: Removed some unused code.
1123
1124 Wed Mar  4 10:39:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
1125
1126         * md.c (md_open): Add call to fast_random_poll.
1127         blowfish.c (blowfish_setkey): Ditto.
1128
1129 Tue Mar  3 13:32:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
1130
1131         * rmd160.c (rmd160_mixblock): New.
1132         * random.c: Restructured to start with a new RNG implementation.
1133         * random.h: New.
1134
1135 Mon Mar  2 19:21:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
1136
1137         * gost.c, gost.h: Removed because they did only conatin trash.
1138
1139 Sun Mar  1 16:42:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
1140
1141         * random.c (fill_buffer): removed error message if n == -1.
1142
1143 Fri Feb 27 16:39:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
1144
1145         * md.c (md_enable): No init if called twice.
1146
1147 Thu Feb 26 07:57:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
1148
1149         * primegen.c (generate_elg_prime): Changed the progress printing.
1150         (gen_prime): Ditto.
1151
1152 Tue Feb 24 12:28:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
1153
1154         * md5.c, md.5 : Replaced by a modified version of md5.c from
1155         GNU textutils 1.22.
1156
1157 Wed Feb 18 14:08:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
1158
1159         * md.c, md.h : New debugging support
1160
1161 Mon Feb 16 10:08:47 1998  Werner Koch  (wk@isil.d.shuttle.de)
1162
1163         * misc.c (cipher_algo_to_string): New
1164         (pubkey_algo_to_string): New.
1165         (digest_algo_to_string): New.
1166
1167
1168
1169  Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
1170
1171  This file is free software; as a special exception the author gives
1172  unlimited permission to copy and/or distribute it, with or without
1173  modifications, as long as this notice is preserved.
1174
1175  This file is distributed in the hope that it will be useful, but
1176  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1177  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1178
1179