2003-05-19 Moritz Schulte <moritz@g10code.com>
[libgcrypt.git] / src / ChangeLog
1 2003-05-19  Moritz Schulte  <moritz@g10code.com>
2
3         * gcrypt.h: Reversed changes from 2003-03-03 since they would have
4         been an unnecessary ABI break.
5
6 2003-05-13  Moritz Schulte  <moritz@g10code.com>
7
8         * secmem.c (stats_update): New function.
9         (BLOCK_HEAD_SIZE): New symbol.
10         (MB_FLAG_ACTIVE): New symbol.
11         (ADDR_TO_BLOCK, BLOCK_VALID): New macros.
12         (mb_get_next): New function.
13         (mb_get_prev): New function.
14         (mb_merge): New function.
15         (mb_get_new): New function.
16         (unused_blocks): Removed variable.
17         (init_pool): Initialize new memory pool.
18         (_gcry_secmem_malloc): Use new heap management code.
19         (_gcry_secmem_free): Likewise.
20         (_gcry_secmem_realloc): Likewise.
21         Renamed type MEMBLOCK to memblock_t.
22
23 2003-04-27  Moritz Schulte  <moritz@g10code.com>
24
25         * cipher.h (gcry_pubkey_spec): New member: sexp_names.
26
27 2003-04-23  Moritz Schulte  <moritz@g10code.com>
28
29         * cipher.h (gcry_pubkey_spec): Removed members: npkey, nskey,
30         nenc, nsig.
31         (gcry_pubkey_spec): Added members: elements_pkey, elements_skey,
32         elements_enc, elements_sig, elements_grip.
33
34 2003-04-17  Moritz Schulte  <moritz@g10code.com>
35
36         * g10lib.h (GcryModule): New typedef.
37
38         * gcrypt.h (gcry_cipher_register, gcry_cipher_unregister,
39         gcry_digest_register, gcry_digest_unregister,
40         gcry_pubkey_register, gcry_pubkey_unregister): Function
41         declarations removed - for now.
42         
43         * gcrypt.h (GcryModule): Declaration removed.
44         * gcrypt.h (GcryPubkeySpec, GcryDigestSpec, GcryCipherSpec):
45         Types Moved... 
46         * cipher.h: ... here.
47
48 2003-04-17  Moritz Schulte  <moritz@g10code.com>
49
50         * cipher.h: Declare digest_spec_sha512 and digest_spec_384.
51
52 2003-04-16  Moritz Schulte  <moritz@g10code.com>
53
54         * module.c (_gcry_module_use): New function.
55         * g10lib.h (_gcry_module_use): Declare function.
56
57         * libgcrypt-config.in: Support for --algorithms switch, which
58         prints the algorithms included in the built libgcrypt.
59
60         * global.c (gcry_set_progress_handler): Register progress
61         functions depending on the enabled algorithms.
62
63 2003-04-07  Moritz Schulte  <moritz@g10code.com>
64
65         * Makefile.am (libgcrypt_la_SOURCES): Added module.c
66
67         * module.c: New file.
68         (_gcry_module_add): New function.
69         (_gcry_module_drop): New function.
70         (_gcry_module_lookup): New function.
71         (_gcry_module_release): New function.
72
73         * g10lib.h (GcryModule): New types.
74         (FLAG_MODULE_DISABLED): New symbol.
75         Added declarations for _gcry_module_add, _gcry_module_release and
76         _gcry_module_lookup.
77
78         * gcrypt.h: New types: GcryPubkeySpec, GcryDigestSpec,
79         GcryCipherSpec.
80         Added declarations for: gcry_cipher_register,
81         gcry_cipher_unregister, gcry_digest_register,
82         gcry_digest_unregister, gcry_pubkey_register and
83         gcry_pubkey_unregister.
84
85         * cipher.h: Removed symbols: CIPHER_ALGO_NONE, CIPHER_ALGO_IDEA,
86         CIPHER_ALGO_3DES, CIPHER_ALGO_CAST5, CIPHER_ALGO_BLOWFISH,
87         CIPHER_ALGO_SAFER_SK128, CIPHER_ALGO_DES_SK, CIPHER_ALGO_TWOFISH,
88         CIPHER_ALGO_TWOFISH_OLD, CIPHER_ALGO_DUMMY, PUBKEY_USAGE_SIG,
89         PUBKEY_USAGE_ENC, DIGEST_ALGO_MD5, DIGEST_ALGO_SHA1,
90         DIGEST_ALGO_RMD160, DIGEST_ALGO_TIGER, PUBKEY_ALGO_RSA,
91         PUBKEY_ALGO_RSA_E, PUBKEY_ALGO_RSA_S, PUBKEY_ALGO_DSA,
92         PUBKEY_ALGO_ELGAMAL, PUBKEY_ALGO_ELGAMAL_E.
93
94 2003-04-02  Moritz Schulte  <moritz@g10code.com>
95
96         * benchmark.c (md_bench): Fix error message.
97
98 2003-03-31  Moritz Schulte  <moritz@g10code.com>
99
100         * benchmark.c (cipher_bench): Added CTR mode.
101
102 2003-03-30  Simon Josefsson  <jas@extundo.com>
103
104         * gcrypt.h (enum gcry_control_cmds): Add GCRY_SET_CTR.
105         (enum gcry_cipher_modes): Add GCRY_CIPHER_MODE_CTR.
106         (gcry_cipher_setctr): New macro to set counter.
107
108 2003-03-19  Moritz Schulte  <moritz@g10code.com>
109
110         * cipher.h (PUBKEY_FLAG_NO_BLINDING): New symbol.
111
112 2003-03-22  Simon Josefsson  <jas@extundo.com>
113
114         * gcrypt.h: Add GCRYCTL_SET_CBC_MAC and GCRY_CIPHER_CBC_MAC.
115
116 2003-03-19  Werner Koch  <wk@gnupg.org>
117
118         * g10lib.h: Adjusted primegen.c prototypes.
119
120 2003-03-12  Werner Koch  <wk@gnupg.org>
121
122         * sexp.c (sexp_sscan): Initialize NM.  Thanks to Ian Peters for
123         valgrinding this.
124
125 2003-03-06  Moritz Schulte  <mo@g10code.com>
126
127         * secmem.h (GCRY_SECMEM_FLAG_NO_WARNING,
128         GCRY_SECMEM_FLAG_SUSPEND_WARNING): New symbols.
129
130         * global.c (gcry_control): Use
131         GCRY_SECMEM_FLAG_{NO,SUSPEND}_WARNING, instead of hard-coded
132         values.
133         * secmem.c (_gcry_secmem_set_flags): Likewise.
134         * secmem.c (_gcry_secmem_get_flags): Likewise.
135         
136 2003-03-03  Moritz Schulte  <moritz@g10code.com>
137
138         * misc.c: Removed old FIXME, since there is already a function to
139         set the value of `verbosity_level'.
140
141         * gcrypt.h: Removed enumeration list: gcry_ctl_cmds.
142         New enumeration lists: gcry_global_control_cmds,
143         gcry_control_cmds, gcry_info_cmds, gcry_algo_info_cmds.
144
145 2003-03-02  Moritz Schulte  <moritz@g10code.com>
146
147         * gcrypt.h (gcry_cipher_reset): New macro for resetting a handle.
148
149 2003-02-28  Moritz Schulte  <moritz@g10code.com>
150
151         * secmem.c (DEFAULT_PAGESIZE): New symbol.
152         (init_pool): Use DEFAULT_PAGESIZE.
153
154 2003-02-23  Moritz Schulte  <moritz@g10code.com>
155
156         * secmem.h: Fix typo in declaration of _gcry_secmem_term.
157
158         * sexp.c: Move macro definitions of `digitp', `octdigit', `alphap'
159         and `hexdigit' ...
160         * g10lib.h: ... here.
161
162         * misc.c (_gcry_burn_stack): New function (former name:
163         burn_stack).
164
165         * g10lib.h (burn_stack): Declare _gcry_burn_stack().
166
167 2003-01-24  Werner Koch  <wk@gnupg.org>
168
169         * global.c (gcry_set_progress_handler): Register a random progress
170         handler.
171
172 2003-01-23  Werner Koch  <wk@gnupg.org>
173
174         * gcrypt.h (GCRY_ENABLE_QUICK_RANDOM): New. 
175         * global.c (gcry_control): Make use of it.
176
177 2003-01-21  Werner Koch  <wk@gnupg.org>
178
179         * gcrypt.h (gcry_random_add_bytes): Add QUALITY argument.
180
181 2003-01-21  Timo Schulz  <twoaday@freakmail.de>
182
183         * gcrypt.h (gcry_random_add_bytes): New.
184         
185 2003-01-20  Simon Josefsson  <jas@extundo.com>
186
187         * gcrypt.h (gcry_md_algos): Add GCRY_MD_CRC32,
188         GCRY_MD_CRC32_RFC1510, GCRY_MD_CRC24_RFC2440.
189
190 2003-01-16  Werner Koch  <wk@gnupg.org>
191
192         * gcrypt.h (gcry_md_write): Changed type of 2nd argument to void*.
193         (gcry_md_hash_buffer): Changed type of both buffers to void*.
194         (gcry_md_setkey): Changed type of 2nd argument to void*.
195         (gcry_md_get_asnoid): New.
196
197 2003-01-15  Werner Koch  <wk@gnupg.org>
198
199         * sexp.c (gcry_sexp_length): Fixed.  This was seriously broken.
200
201 2003-01-14  Werner Koch  <wk@gnupg.org>
202
203         * gcrypt.h (GCRYERR_INV_FLAG), global.c (gcry_strerror): New.
204
205 2003-01-02  Werner Koch  <wk@gnupg.org>
206
207         * libgcrypt.vers: Temporary export _gcry_generate_elg_prime for
208         use by GNUTLS. 
209
210 2002-12-21  Werner Koch  <wk@gnupg.org>
211
212         * gcrypt.h: Make use of gcc's pure and malloc attributes 
213         (gcry_md_putc): Use a helper variable to avoid multiple
214         evaluation of H. 
215         * g10lib.h, stdmem.h, secmem.h: Use gcc attributes pure and malloc.
216
217         * stdmem.c (use_m_guard): Don't default to yes.
218
219 2002-12-19  Werner Koch  <wk@gnupg.org>
220
221         * global.c (global_init): The meat was never run due to a faulty
222         check. Thanks to Nikos for pointing this out.
223         
224         * global.c (gcry_control): Return 1 and not -1 for the
225         initialization tests.
226
227         * libgcrypt.vers: New.
228         * Makefile.am: Use this instead of the build symbol file.
229
230         * global.c (gcry_control) <initialization>: Call the random module
231         initializer to make sure that the pool lock flag has been
232         initialized.
233
234 2002-12-09  Werner Koch  <wk@gnupg.org>
235
236         * global.c (gcry_calloc,gcry_calloc_secure): Check for overflow.
237         Noted by Florian Weimer. 
238
239 2002-11-10  Simon Josefsson  <jas@extundo.com>
240
241         * gcrypt.h (gcry_ctl_cmds): New GCRYCTL_SET_CBC_CTS control flag.
242         (gcry_cipher_flags): New GCRY_CIPHER_CBC_CTS gcry_cipher_open() flag.
243         (gcry_cipher_cts): New macro for toggling CTS.
244
245 2002-11-10  Werner Koch  <wk@gnupg.org>
246
247         * gcrypt.h (GCRY_MD_MD4): New.  We use a non OpenPGP value here. 
248
249 2002-09-20  Werner Koch  <wk@gnupg.org>
250
251         * ath.c: Include sys.time.h if sys/select.h does not exist.
252         (ath_select, ath_waitpid): Shortcut for Windows.
253         * ath.h: Include some Windows headers.  By Timo.
254
255 2002-09-18  Werner Koch  <wk@gnupg.org>
256
257         * ath.h: Prefix ath_deinit.
258
259 2002-09-17  Werner Koch  <wk@gnupg.org>
260
261         * benchmark.c: New.
262         (mpi_bench, do_powm): Add a a simple test for RSA.
263
264         * global.c (global_init): New.  Use it instead of the setting
265         any_init_done.  Initialize the ATH system.
266         (gcry_check_version): Hook global_init in.  This is the suggested
267         way to initialize the library.
268         (_gcry_no_internal_locking): Removed.  We simply call a ath_deinit
269         and leave it to ATH to disbale the locking.
270
271         * ath.c, ath.h, ath-pth.c, ath-pthread.c: New. Taken from GPGME.
272         * mutex.h: Removed.
273         * Makefile.am (ath_components): New.
274
275 2002-09-16  Werner Koch  <wk@gnupg.org>
276
277         * secmem.c (_gcry_secmem_dump_stats): Replaced fprintf by log_*.
278
279 2002-08-23  Werner Koch  <wk@gnupg.org>
280
281         * missing-string.c: Removed unneeded strlwr.
282
283         * libgcrypt.m4: Made much more simple.
284         * libgcrypt-config.in: Made --prefix work for --libs.
285
286 2002-08-14  Werner Koch  <wk@gnupg.org>
287
288         * gcrypt.h: Add GCRY_CIPGER_DES.  Included string.h for size_t.
289         Suggested by Simon Josefsson.
290
291 2002-07-25  Werner Koch  <wk@gnupg.org>
292
293         * cipher.h: Added prototypes for progress functions.
294         * global.c: Include cipher.h for those prototypes.
295
296         * stdmem.c (_gcry_private_realloc): Replaced void* by char * for
297         pointer arithmetic reasons.  Noted by Stephan Austermuehle.
298
299 2002-06-24  Werner Koch  <wk@gnupg.org>
300
301         * missing-string.c: Include ctype.h.
302
303         * gcrypt.h (gcry_mpi_invm, gcry_mpi_div, gcry_mpi_mod)
304         (gcry_mpi_swap): New.
305
306 2002-06-18  Werner Koch  <wk@gnupg.org>
307
308         * gcrypt.h: Added a bunch of brief function descriptions.
309
310 2002-05-21  Werner Koch  <wk@gnupg.org>
311
312         * misc.c (_gcry_log_printf): Don't initialize a va_list.  Noted by
313         Jeff Johnson.
314
315         * global.c (gcry_set_progress_handler): New.
316
317         * gcrypt.h: Replaced the typedef for byte.
318
319 2002-05-16  Werner Koch  <wk@gnupg.org>
320
321         * missing-string.c: New.
322
323         * gcrypt.h: Add new error codes GCRYERR_SEXP_ and typedefs
324         GcryMPI, GcrySexp, GcryCipherHd, GcryMDHd as aliases for the old
325         ones using an underscore.
326
327         * global.c (gcry_strerror): Add strings fro the new error codes.
328         * sexp.c (gcry_sexp_canon_len): Use a macro to convert from new to
329         old error codes.
330         (gcry_sexp_create,gcry_sexp_new): New.
331
332 2002-05-15  Werner Koch  <wk@gnupg.org>
333
334         * mutex.h (DEFINE_LOCAL_MUTEX): Macro to define a mutex and
335         initialize it so that we can detect an unitialized mutex and don't
336         read from stdin.
337
338 2002-05-14  Werner Koch  <wk@gnupg.org>
339
340         Changed license of all files to the LGPL.
341
342 2002-05-07  Werner Koch  <wk@gnupg.org>
343
344         * global.c (gcry_control): Add commands
345         GCRYCTL_ANY_INITIALIZATION_P and GCRYCTL_INITIALIZATION_FINISHED_P
346         so that other libraries are able to check for required
347         initializations.
348
349 2002-05-02  Werner Koch  <wk@gnupg.org>
350
351         * gcrypt.h (GCRYCTL_DISABLE_INTERNAL_LOCKING): New.
352         * global.c (gcry_control): Implement it.
353         (_gcry_no_internal_locking): New.
354         * mutex.h: Prefixed all fucntions with _gcry_.  Bypass all
355         functions when desired.
356
357         * gcrypt.h (GCRYCTL_DISABLE_SECMEM): New.
358         * global.c (gcry_control,gcry_malloc_secure,gcry_is_secure):
359         Implement it here.
360         * secmem.c (_gcry_private_is_secure): Return false if the pool is
361         not initialized.
362
363         * gcrypt.h (GCRYCTL_INITIALIZATION_FINISHED): New.
364
365         * gcrypt.h (gcry_cipher_algos): Replaced RINDAEL by AES and change
366         the macros to expand from rijdael to aes.
367
368         * stdmem.c (_gcry_private_malloc): Return NULL for 0 byte allocation.
369         (_gcry_private_malloc_secure): Ditto.
370
371         * g10lib.h:  Copied the JNLIB_GCC macros from ../jnlib/mischelp.h
372         and removed the inclusion of that file.
373
374 2002-04-15  Werner Koch  <wk@gnupg.org>
375
376         * global.c (gcry_strdup): New.
377
378 2002-03-18  Werner Koch  <wk@gnupg.org>
379
380         * mutex.h: New file with a portable thread mutex implementation
381         written by Marcus Brinkmann.  Taken from GPGME.
382
383 2002-02-18  Werner Koch  <wk@gnupg.org>
384
385         * sexp.c (gcry_sexp_sscan): Don't initialize the dummy
386         variable.  Suggested by Jordi Mallach.
387
388 2002-01-31  Werner Koch  <wk@gnupg.org>
389
390         * sexp.c (suitable_encoding,convert_to_hex,convert_to_string)
391         (convert_to_token): New.
392         (gcry_sexp_sprint): Better formatting of advanced encoding, does
393         now insert LFs and escapes all unprintable characters.
394         (unquote_string): New.
395         (sexp_sscan): Implemented the missing conversion of quoted strings.
396
397 2002-01-26  Werner Koch  <wk@gnupg.org>
398
399         * libgcrypt-config.in: Add copyright notice.
400
401 2002-01-11  Werner Koch  <wk@gnupg.org>
402
403         * sexp.c (gcry_sexp_canon_len): Fixed last change.
404
405 2002-01-01  Timo Schulz <ts@winpt.org>
406
407         * stdmem.c (_gcry_private_realloc): If pointer is NULL now realloc
408         behaves like malloc.
409
410 2001-12-20  Werner Koch  <wk@gnupg.org>
411
412         * sexp.c (gcry_sexp_canon_len): Describe the error codes and
413         return an error if this is not a S-Exp; i.e. it does not start
414         with an open parenthesis.
415
416 2001-12-18  Werner Koch  <wk@gnupg.org>
417
418         * sexp.c (gcry_sexp_canon_len): Fixed the test on NULL buffer.
419
420         * Makefile.am (DISTCLEANFILES): Include libgcrypt.sym
421
422         * sexp.c: Removed the commented test code because we now have a
423         test in ../tests/
424
425 2001-12-17  Werner Koch  <wk@gnupg.org>
426
427         * sexp.c (gcry_sexp_canon_len): New.
428
429 2001-12-11  Werner Koch  <wk@gnupg.org>
430
431         * gcrypt.h: Fixed AES128 macro, add enum for OFB mode.
432
433 2001-12-05  Werner Koch  <wk@gnupg.org>
434
435         * misc.c (_gcry_log_printf): New.
436         * sexp.c (dump_string,gcry_sexp_dump): Use logging functions
437         instead of stderr.
438
439 2001-11-16  Werner Koch  <wk@gnupg.org>
440
441         * gcrypt.h: New constant GCRYCTL_IS_ALGO_ENABLED.
442
443 2001-10-02  Werner Koch  <wk@gnupg.org>
444
445         * gcrypt.h: Removed a couple of trailing commas.
446
447 2001-08-28  Werner Koch  <wk@gnupg.org>
448
449         * sexp.c (sexp_sscan): Add an argument to enable the
450         arg_ptr. Changed all callers.  Suggested by Tom Holroyd.
451
452 2001-08-03  Werner Koch  <wk@gnupg.org>
453
454         * global.c (gcry_strerror): Updated list of error codes.
455
456 2001-07-23  Werner Koch  <wk@gnupg.org>
457
458         * gcrypt.h: Replaced the last ulong.  Noted by Rami Lehti.
459
460 2001-05-31  Werner Koch  <wk@gnupg.org>
461
462         * gcrypt.h, mpi.h: Made some mpi functions public.
463
464         * wrapper.c: Removed.
465         * global.c: Renamed all g10_ prefixed functions which had wrappers 
466         to gcry_xxx. So we now use the exported memory functions inernally.
467
468         Renamed all g10_ prefixed functions to _gcry_ prefixed ones.
469         
470         * g10lib.h (_GCRYPT_IN_LIBGCRYPT): Replace defintion by a test on it.
471
472 2001-05-28  Werner Koch  <wk@gnupg.org>
473
474         * libgcrypt.m4: Check GCRYPT_VERSION macro and not LIBGCRYPT_VERSION.
475
476         * mpi.h: Removed mpi_fromstr prototype.
477
478 2001-01-11  Werner Koch  <wk@gnupg.org>
479
480         * Makefile.am (libgcrypt_la_SOURCES): Add mpi.h
481
482 2000-12-19  Werner Koch  <wk@gnupg.org>
483
484         * types.h: Moved from ../include to here.
485
486         Major change:
487         Removed all GnuPG stuff and renamed this piece of software
488         to gcrypt. 
489
490 2000-11-14  Werner Koch  <wk@gnupg.org>
491
492         * mpi.h: Moved to ../mpi.
493
494         * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency
495         problems.
496
497 2000-10-11  Werner Koch  <wk@gnupg.org>
498
499         * mpi.h: Changed the way mpi_limb_t is defined.
500
501 2000-10-10  Werner Koch  <wk@gnupg.org>
502
503         * Makefile.am: Take version-info from configure.
504
505 2000-10-09  Werner Koch  <wk@gnupg.org>
506
507         * gcrypt.h: New cipher mode, new algo Arcfour and new error code
508         GCRYERR_INV_CIPHER_MODE.
509         * global.c (gcry_strerror): New errorcode.
510
511 Wed Oct  4 13:16:18 CEST 2000  Werner Koch  <wk@openit.de>
512
513         * gcrypt.h (gcry_md_setkey): Replaced macro by function prototype.
514
515 Mon Sep 18 16:35:45 CEST 2000  Werner Koch  <wk@openit.de>
516
517         * gcrypt.h (GCRYCTL_GET_ALGO_USAGE): New.
518
519         * secmem.c (secmem_realloc): check for failed secmem_malloc.  By
520         Matt Kraai.
521
522 Mon Jul 31 10:04:47 CEST 2000  Werner Koch  <wk@openit.de>
523
524   * sexp.c: Removed the datalen fields from list tags.
525   (gcry_sexp_car_data,gcry_sexp_cdr_data,gcry_sexp_car_mpi,
526    gcry_sexp_cdr_mpi): Removed.
527   (gcry_sexp_nth,gcry_sexp_nth_data,gcry_sexp_nth_mpi): New.
528
529 Fri Jul 28 18:19:11 CEST 2000  Werner Koch  <wk@openit.de>
530
531   * sexp.c (sexp_sscan): Fixed reallocation to secure memory.
532   (new_empty_list): Removed
533   (gcry_sexp_length): New.
534   (gcry_sexp_enum): Removed.
535   (normalize): New. Reworked the whole thing to use NULL for an empty list.
536   (make_space): New instead of the macro.
537
538 Tue Jul 25 17:44:15 CEST 2000  Werner Koch  <wk@openit.de>
539
540   * sexp.c: Major rewrite.
541   (gcry_sexp_sscan): Reordered arguments.  Moved functionality to ..
542   (sexp_sscan): .. this.
543   (gcry_sexp_build): New.
544   (gcry_sexp_new_name_mpi, gcry_sexp_new_name_data, gcry_sexp_new_data,
545    gcry_sexp_new_mpi): Removed.
546
547 Fri Jul 14 19:38:23 CEST 2000  Werner Koch  <wk@>
548
549   * gcrypt.h (gcry_md_start_debug, gcry_md_stop_debug): New.
550   (gcry_ctl_cmds): New control values
551
552   * sexp.c (gcry_sexp_sscan): Add hex format parsing.
553
554   * secmem.c (lock_pool): Check for ENOSYS return my mlock() on old SCOs.
555   (pool_is_mmapped): Made volatile.
556   (lock_pool): No more warning for QNX. By Sam Roberts.
557   (lock_pool,secmem_init): Additional check for dropped privs.
558
559 2000-03-21 09:18:48  Werner Koch  (wk@habibti.gnupg.de)
560
561         * gcrypt.h (gcry_md_setkey): New.
562         (GCRY_MD_FLAG_HMAC): New.
563
564 Mon Jan 31 16:37:34 CET 2000  Werner Koch  <wk@gnupg.de>
565
566         * Makefile.am: Add g10lib.h
567
568 Thu Jan 27 18:00:44 CET 2000  Werner Koch  <wk@gnupg.de>
569
570         * sexp.c (gcry_sexp_sscan): Allow NULL for erroff.
571
572 Mon Jan 24 22:24:38 CET 2000  Werner Koch  <wk@gnupg.de>
573
574         * sexp.c (gcry_sexp_alist): New.
575
576 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
577
578         * secmem.c: Moved from ../util to here.
579         * secmem.h: New.
580         * stdmem.c: New. Based on the old ../util/memory.c.
581         * stdmem.h: New.
582
583 Wed Dec  8 21:58:32 CET 1999  Werner Koch  <wk@gnupg.de>
584
585         * gcrypt.m4: New.
586         * gcrypt-config: New.
587
588         * mpi.h (mpi_get_nbit_info): Removed
589         (mpi_set_nbit_info): Removed.
590         (struct gcry_mpi): Removed the nbits field.
591
592         * misc.c (g10_log_verbosity): New.
593
594         * global.c (g10_xstrdup): New.
595
596         * mpiapi.c: Removed.
597
598         * mpi.h: Moved from ../include to here.  Removed some obsolete
599         prototypes and the iobuf.h header.
600         * cipher.h: Moved from ../include to here. Removed the mpi.h header.
601         * g10lib.h: Moved from ../include to here.
602
603 Fri Nov 19 17:15:20 CET 1999  Werner Koch  <wk@gnupg.de>
604
605         * sexp.c (dump_string): New.  Taken from gnupg/util/miscutil.c.
606         (do_dump_list): s/print_string/dump_string/.
607
608         * testapi.c: New.
609
610         * mpiapi.c (gcry_mpi_randomize): Use new random API.
611
612 Sat Nov 13 17:44:23 CET 1999  Werner Koch  <wk@gnupg.de>
613
614         * gloabl.c (gcry_control): Add cases for dumping random
615         and secmem stats.
616
617 Tue Oct 26 14:10:21 CEST 1999  Werner Koch  <wk@gnupg.de>
618
619         * pkapi.c: Removed.
620
621         * symapi.c: Removed.
622
623         * g10lib.h:  Moved to ../include.
624
625         * mdapi.c: Removed.
626
627 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
628
629         * sexp.c: New.
630
631 Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
632
633         * gcrypt.h: New
634         * mpiapi.c: New
635
636         
637  Copyright 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
638
639  This file is free software; as a special exception the author gives
640  unlimited permission to copy and/or distribute it, with or without
641  modifications, as long as this notice is preserved.
642
643  This file is distributed in the hope that it will be useful, but
644  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
645  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.