541e4626ace16f26195b2a5a2a6dfa07b9b944a7
[libgcrypt.git] / src / ChangeLog
1 2003-10-27  Werner Koch  <wk@gnupg.org>
2
3         * ath.h (ATH_MUTEX_INITIALIZER): Removed spurious semicolon.
4
5 2003-10-27  Moritz Schulte  <mo@g10code.com>
6
7         * libgcrypt-config.in: Include libs/cflags of libgpg-error.
8
9         * sexp.c (sexp_sscan): Cleaned up, deallocate scanned sexp on
10         error.
11
12         * module.c (MODULE_ID_MIN): New symbol, use it.
13
14 2003-10-27  Werner Koch  <wk@gnupg.org>
15
16         * gcrypt.h (gcry_pk_testkey): Doc fix.
17
18 2003-09-29  Moritz Schulte  <mo@g10code.com>
19
20         * libgcrypt-config.in: Fix --algorithms option.
21
22 2003-10-23  Werner Koch  <wk@gnupg.org>
23
24         * gcrypt.h (gcry_err_code): Use GPG_ERR_INLINE instead of
25         __inline__.
26
27         * secmem.c (lock_pool): Don't print the warning for certain
28         systems, handle ENOMEM.
29
30 2003-10-21  Werner Koch  <wk@gnupg.org>
31
32         * secmem.c (_gcry_secmem_dump_stats): Fixed format sepcifier for a
33         size_t.  Reported by Stephane Corthesy.
34
35 2003-10-10  Werner Koch  <wk@gnupg.org>
36
37         * global.c (_gcry_malloc): Handle the no_secure_memory option.
38
39         * gcrypt.h (gcry_prime_group_generator): New.
40         (gcry_prime_release_factors): New.
41
42 2003-10-07  Werner Koch  <wk@gnupg.org>
43
44         * sexp.c (sexp_sscan): Check that parenthesis are matching.
45
46 2003-09-28  Moritz Schulte  <mo@g10code.com>
47
48         * g10lib.h: Declare: _gcry_malloc.
49         (GCRY_ALLOC_FLAG_SECURE): New symbol.
50
51         * global.c (_gcry_malloc): New function...
52         (gcry_malloc): ... use it.
53         (gcry_malloc_secure): Likewise.
54
55         * ath.c: Change License to LGPL.
56         * ath-pthread-compat.c: Likewise.
57         * ath-pthread.c: Likewise.
58         * ath-pth-compat.c: Likewise.
59         * ath-pth.c: Likewise.
60         * ath.h: Likewise.
61         * ath-compat.c: Likewise.
62
63         * secmem.c (_gcry_secmem_realloc): Do not forget to release secmem
64         lock.  Thanks to low halo for triggering this bug.
65
66 2003-09-04  Werner Koch  <wk@gnupg.org>
67
68         * gcrypt.h (_GCRY_ERR_SOURCE_DEFAULT): Removed cruft.
69         (gcry_prime_check_func_t): Renamed arg for clarity.
70
71 2003-09-02  Moritz Schulte  <mo@g10code.com>
72
73         * gcrypt.h (GCRY_PRIME_FLAG_SPECIAL_FACTOR): New symbol.
74
75 2003-09-01  Moritz Schulte  <mo@g10code.com>
76
77         * gcrypt.h (gcry_random_level_t): New type.
78         (gcry_prime_check_func_t): Likewise.
79         (GCRY_PRIME_FLAG_SECRET): New symbol.
80         (gcry_prime_generate, gcry_prime_check): Declare functions.
81
82 2003-08-28  Werner Koch  <wk@gnupg.org>
83
84         * Makefile.am (libgcrypt_pth_la_LDFLAGS): Removed PTH_CFLAGS cruft.
85
86 2003-08-27  Moritz Schulte  <mo@g10code.com>
87
88         * global.c (gcry_control): Remove call to ath_deinit.
89
90         * Makefile.am (libgcrypt_real_la_DEPENDENCIES): Fixed.
91         (libgcrypt_real_la_LIBADD): Fixed.
92         Removed unecessary variables.
93
94         * libgcrypt-config.in: Adjusted script for new thread handling.
95
96         * Makefile.am: New version, based on GPGMEs Makefile.am.
97
98         * ath.c, ath-compat.c, ath.h, ath-pth.c, ath-pth-compat.c,
99         ath-pthread.c, ath-pthread-compat.c: New files, merged from GPGME.
100         * ath.c, ath.h, ath-pthread.c, ath-pth.c: Removed files.
101
102 2003-08-08  Moritz Schulte  <moritz@g10code.com>
103
104         * global.c (gcry_realloc): Remove FIXME about `clearing out
105         realloced memory', since _gcry_secmem_realloc takes care of
106         overwriting old memory.
107
108 2003-08-07  Werner Koch  <wk@gnupg.org>
109
110         * module.c (_gcry_module_release): Don't act if module is NULL.
111
112 2003-07-30  Moritz Schulte  <moritz@g10code.com>
113
114         * gcrypt.h (enum gcry_ac_id): Added: GCRY_AC_ELG_E.
115         Reverted change: use gcry_md_flags enumeration list instead of
116         defines.
117
118 2003-07-29  Werner Koch  <wk@gnupg.org>
119
120         * global.c (gcry_control): Add GCRYCTL_SET_RANDOM_SEED_FILE and
121         GCRYCTL_UPDATE_RANDOM_SEED_FILE.
122         * gcrypt.h: Ditto.  Renamed index to idx, so avoid warning
123         related to the old index function.
124
125 2003-07-28  Moritz Schulte  <moritz@g10code.com>
126
127         * global.c (gcry_err_code_from_errno, gcry_err_code_to_errno)
128         (gcry_err_make_from_errno, gcry_error_from_errno): New functions.
129
130         * gcrypt.h: Declared: gcry_err_code_from_errno,
131         gcry_err_code_to_errno, gcry_err_make_from_errno,
132         gcry_error_from_errno.
133
134         * Makefile.am (include_HEADERS): Added: gcrypt-module.h.
135
136         * gcrypt.h: Include <gcrypt-module.h>.
137
138         * gcrypt-module.h: New file.
139
140 2003-07-27  Werner Koch  <wk@gnupg.org>
141
142         * gcrypt.h (gcry_mpi_scan, gcry_mpi_print): API change.
143         (gcry_mpi_dump): New.
144
145 2003-07-21  Moritz Schulte  <moritz@g10code.com>
146
147         * gcrypt.h: Declared: gcry_ac_key_data_get.
148         (gcry_pk_spec): Renamed member `sexp_names' into `aliases'.
149
150 2003-07-20  Moritz Schulte  <moritz@g10code.com>
151
152         * gcrypt.h (gcry_md_oid_spec_t): New type.
153         (gcry_md_spec): New member: oids.
154
155 2003-07-19  Moritz Schulte  <moritz@g10code.com>
156
157         * gcrypt.h (gcry_cipher_oid_spec_t): New type.
158         (gcry_cipher_spec): New member: oids;
159
160 2003-07-18  Werner Koch  <wk@gnupg.org>
161
162         * gcrypt.h (gcry_mpi_set_opaque): Add a warning comment.
163
164 2003-07-15  Moritz Schulte  <moritz@g10code.com>
165
166         * secmem.c (compress_pool): Remove function, since unused blocks
167         are automatically concatenad.
168
169         * gcrypt.h: Bumped version number up to 1.1.42-cvs.
170
171 2003-07-14  Moritz Schulte  <moritz@g10code.com>
172
173         * gcrypt.h (gcry_cipher_spec): New member: aliases.
174
175         * Makefile.am (noinst_PROGRAMS, testapi_SOURCES, testapai_LDADD,
176         benchmark_SOURCES, benchmark_LDADD): Removed.
177
178         * benchmark.c, testapi.c: Removed files.
179
180         * mpi.h: Removed disabled typedef.
181         * g10lib.h: Likewise.
182
183         * benchmark.c, g10lib.h, gcrypt.h, global.c, module.c, sexp.c:
184         Used gcry_err* wrappers for libgpg-error symbols.
185
186 2003-07-12  Moritz Schulte  <moritz@g10code.com>
187
188         * global.c: Likewise.
189
190         * gcrypt.h: New type: gcry_error_t, gcry_err_code_t and
191         gcry_err_source_t.
192         (gcry_err_make, gcry_error, gcry_err_code, gcry_err_source): New
193         functions.
194
195         * global.c (gcry_strerror): New function.
196         (gcry_strsource): New function.
197
198         * gcrypt.h: New symbol: GCRY_CIPHER_TWOFISH128.
199
200 2003-07-09  Moritz Schulte  <moritz@g10code.com>
201
202         * gcrypt.h (enum gcry_md_flags): Removed, used define instead,
203         since that is more common than an enumeration list when it comes
204         to flags that can be bitwise ORed.
205         
206 2003-07-08  Moritz Schulte  <moritz@g10code.com>
207
208         * global.c: Use new types for handlers.
209
210         * gcrypt.h: Declare: gcry_ac_data_copy.
211
212 2003-07-07  Moritz Schulte  <moritz@g10code.com>
213
214         * sexp.c (gcry_sexp_build_array): Use dummy argument pointer.
215         Thanks to Simon Josefsson <jas@extunde.com>.
216
217         * gcrypt.h: Declare: gcry_cipher_list, gcry_pk_list, gcry_md_list.
218         
219 2003-07-05  Moritz Schulte  <moritz@g10code.com>
220
221         * gcrypt.h: Declare: gcry_cipher_register, gcry_cipher_unregister,
222         gcry_md_register, gcry_md_unregister, gcry_pk_register,
223         gcry_pk_unregister.
224         (gcry_cipher_spec): Removed member: algorithm.
225         (gcry_pk_spec): Likewise.
226         (gcry_md_spec): Likewise.
227         Adjusted declarations: gcry_cipher_register, gcry_pk_register,
228         gcry_md_register.
229
230         * module.c: Replaced all occurences of `id' with `mod_id', since
231         `id' is a keyword in obj-c.
232
233         * gcrypt.h (gcry_cipher_spec): Renamed member `id' to `algorithm'.
234         (gcry_pk_spec): Likewise.
235         (gcry_md_spec): Likewise.
236
237         * cipher.h: Removed types: gcry_pubkey_generate_t,
238         gcry_pubkey_check_secret_key_t, gcry_pubkey_encrypt_t,
239         gcry_pubkey_decrypt_t, gcry_pubkey_sign_t, gcry_pubkey_verify_t,
240         gcry_pubkey_get_nbits_t, gcry_pk_spec_t, gcry_digest_init_t,
241         gcry_digest_write_t, gcry_digest_final_t, gcry_digest_read_t,
242         gcry_digest_spec_t, gcry_cipher_setkey_t, gcry_cipher_encrypt_t,
243         gcry_cipher_decrypt_t, gcry_cipher_stencrypt_t,
244         gcry_cipher_stdecrypt_t, gcry_cipher_spec_t.
245
246         * gcrypt.h: New types: gcry_pk_generate_t,
247         gcry_pk_check_secret_key_t, gcry_pk_encrypt_t, gcry_pk_decrypt_t,
248         gcry_pk_sign_t, gcry_pk_verify_t, gcry_pk_get_nbits_t,
249         gcry_pk_spec_t, gcry_md_init_t, gcry_md_write_t, gcry_md_final_t,
250         gcry_md_read_t, gcry_md_spec_t, gcry_cipher_setkey_t,
251         gcry_cipher_encrypt_t, gcry_cipher_decrypt_t,
252         gcry_cipher_stencrypt_t, gcry_cipher_stdecrypt_t,
253         gcry_cipher_spec_t, gcry_module_t.
254
255 2003-07-04  Moritz Schulte  <moritz@g10code.com>
256
257         * module.c (_gcry_module_list): New function.
258
259 2003-07-02  Moritz Schulte  <moritz@g10code.com>
260
261         * module.c (_gcry_module_lookup): Fixed typo.
262
263         * gcrypt.h: Added all definitions and declarations necessary for
264         the new ac interface.
265
266 2003-06-30  Moritz Schulte  <moritz@g10code.com>
267
268         * g10lib.h: Added declarations: _gcry_pk_module_lookup,
269         _gcry_pk_module_release.
270
271 2003-06-18  Werner Koch  <wk@gnupg.org>
272
273         * benchmark.c (cipher_bench): Adjusted for new API of get_blklen
274         and get_keylen.
275
276         * gcrypt.h (gcry_cipher_get_algo_blklen)
277         (gcry_cipher_get_algo_keylen): Replaced macro by funcion.
278
279 2003-06-18  Moritz Schulte  <moritz@g10code.com>
280
281         * cipher.h: Renamed types GcryDigestSpec, GcryCipherSpec and
282         GcryPubkeySpec into: gcry_digest_spec_t, gcry_cipher_spec_t and
283         gcry_pubkey_spec_t.
284         (gcry_pubkey_spec): Defined member `id' as unsigned.
285         (gcry_digest_spec): Likewise.
286         (gcry_cipher_spec): Likewise.
287
288         * module.c (_gcry_module_id_new): New function.
289         (_gcry_module_add): Generate a new ID via _gcry_module_id_new in
290         case `id' is zero.
291
292         * g10lib.h, module.c: Replace old type GcryModule with newer one:
293         gcry_module_t.
294
295         * module.c (_gcry_module_add): Added argument `id', use it.
296
297         * g10lib.h: Added declaration: _gcry_module_lookup_id.
298         (_gcry_module_add): Added argument `id'.
299
300         * module.c (_gcry_module_lookup_id): New function.
301
302         * g10lib.h (struct gcry_module): New member: id.
303
304         * gcrypt.h: New type: gcry_handler_progress_t,
305         gcry_handler_alloc_t, gcry_haandler_secure_check_t,
306         gcry_handler_realloc_t, gcry_handler_free_t,
307         gcry_handler_no_mem_t, gcry_handler_error_t, gcry_handler_log_t.
308         Use new types.
309
310         * cipher.h: Include <gcrypt.h>.
311         New types: gcry_pk_generate_t, gcry_pk_check_secret_key_t,
312         gcry_pk_encrypt_t, gcry_pk_decrypt_t, gcry_pk_sign_t,
313         gcry_pk_verify_t, gcry_pk_get_nbits_t, gcry_md_init_t,
314         gcry_md_write_t, gcry_md_final_t, gcry_md_read_t,
315         gcry_cipher_setkey_t, gcry_cipher_encrypt_t,
316         gcry_cipher_decrypt_t, gcry_cipher_stencrypt_t,
317         gcry_cipher_stdecrypt_t.
318         Use new types.
319
320 2003-06-17  Moritz Schulte  <moritz@g10code.com>
321
322         * Makefile.am (AM_CFLAGS): Added: @GPG_ERROR_CFLAGS@.
323
324 2003-06-16  Moritz Schulte  <moritz@g10code.com>
325
326         * g10lib.h: Replace last occurences of old type names with newer
327         names (i.e. replace MPI with gcry_mpi_t).
328         * mpi.h: Likewise.
329         * sexp.c: Likewise.
330
331 2003-06-15  Moritz Schulte  <moritz@g10code.com>
332
333         * testapi.c (test_genkey): Use gpg_strerror instead of
334         gcry_strerror.
335
336         * global.c (gcry_control): Fixed typo.
337
338         * misc.c (_gcry_fatal_error): Use gpg_strerror instead of
339         gcry_strerror.
340
341         * types.h (STRLIST): Removed type since it is not used.
342
343 2003-06-11  Moritz Schulte  <moritz@g10code.com>
344
345         * global.c (global_init): Call: _gcry_cipher_init, _gcry_md_init,
346         _gcry_pk_init.
347
348         * g10lib.h: Declare: _gcry_cipher_init, _gcry_md_init,
349         _gcry_pk_init.
350         
351         * global.c (gcry_strerror): Remove compatibility code.
352
353         * Makefile.am: Remove support libgpg-error special handling.
354         (AM_CPPFLAGS): Add @GPG_ERROR_CFLAGS@
355
356         * gcrypt.h: Likewise.
357
358 2003-06-13  Werner Koch  <wk@gnupg.org>
359
360         * gcrypt.h (gcry_md_get_algo): Reverted to old API.  This is a
361         convenience function anyway and error checking is not approriate.
362         (gcry_md_is_enabled): New.
363         (gcry_md_is_secure): Replaced macro by function and reverted to old
364         API.
365
366 2003-06-11  Werner Koch  <wk@gnupg.org>
367
368         * gcrypt.h (GCRYERR): Define _GCRY_ERR_SOURCE_DEFAULT instead of
369         GPG_ERR_SOURCE_DEFAULT, so that libgpg-error still works despite
370         the use of the old gcrypt error codes.
371         (gcry_md_copy): Swapped arguments.
372         
373 2003-06-09  Moritz Schulte  <moritz@g10code.com>
374
375         * Makefile.am: Support for libgpg-error.
376
377 2003-06-08  Moritz Schulte  <moritz@g10code.com>
378
379         * sexp.c (gcry_sexp_create): Expect sane error values from
380         gcry_sexp_canon_len instead of the `historical' values.
381
382 2003-06-07  Moritz Schulte  <moritz@g10code.com>
383
384         * ath.c, ath.c, ath-pth.c, ath-pthread.c, benchmark.c, cipher.h,
385         g10lib.h, gcrypt.h, global.c, misc.c, missing-string.c, module.c,
386         mpi.h, secmem.c, secmem.h, sexp.c, stdmem.c, stdmem.h, testapi.c,
387         types.h: Edited all preprocessor instructions to remove whitespace
388         before the '#'.  This is not required by C89, but there are some
389         compilers out there that don't like it.  Replaced any occurence of
390         the now deprecated type names with the new ones.
391         
392         * gcrypt.h: Re-organized checking for gcc features; New macro:
393         _GCRY_GCC_ATTR_DEPRECATED.
394         Include copy of libgpg-error's gpg-error.h in order to make it
395         easy to build libgcrypt without needing libgpg-error.h.
396
397         (GCRY_MPI, GcryMPI, GCRY_SEXP, GcrySexp, GCRY_CIPHER_HD,
398         GcryCipherHd, GCRY_MD_HD, GcryMDHd): Declared deprecated.
399         (gcry_mpi_t, gcry_sexp_t, gcry_cipher_hd_t, gcry_md_hd_t): New
400         types.
401
402 2003-06-04  Moritz Schulte  <moritz@g10code.com>
403
404         * sexp.c (sexp_sscan): New argument: arg_list, adjusted all
405         callers.
406         (ARG_NEXT): New macro.
407         (sexp_sscan): Use ARG_NEXT for receiving format string arguments.
408         (gcry_sexp_build_array): New function.
409
410 2003-06-02  Moritz Schulte  <moritz@g10code.com>
411
412         * gcrypt.h: Added some comments describing the gcry_sexp_*
413         functions.
414         Include <gpg-error.h> instead of <gpg/error.h>.
415
416 2003-06-01  Moritz Schulte  <moritz@g10code.com>
417
418         * sexp.c (OLDPARSECODE): Removed macro...
419         (gcry_sexp_canon_len): ... and do not use it.
420
421         * gcrypt.h (gcry_errno): Removed declaration.
422
423         * g10lib.h (string_to_pubkey_algo, pubkey_algo_to_string,
424         pubkey_nbits): Removed declarations for non-existing functions.
425
426 2003-05-31  Moritz Schulte  <moritz@g10code.com>
427
428         * cipher.h (is_RSA, is_ELGAMAL): Removed macros.
429
430         * g10lib.h (set_lasterr): Removed macro.
431         (_gcry_set_lasterr): Removed declaration.
432
433         * gcrypt.h: Changed declarations for: gcry_pk_algo_info,
434         gcry_md_open, gcry_md_copy, gcry_md_algo_info, gcry_md_info,
435         gcry_md_get_algo, gcry_random_add_bytes.
436         
437         (gcry_md_is_secure): Adjust macro for new API.
438
439 2003-05-29  Moritz Schulte  <moritz@g10code.com>
440
441         * gcrypt.h: Changed declarations for: gcry_cipher_open,
442         gcry_cipher_info, gcry_cipher_algo_info.
443         (gcry_cipher_get_algo_keylen): Adjuster for new
444         gcry_cipher_algo_info interface.
445         (gcry_cipher_get_algo_blklen): Likewise.
446
447         * global.c (gcry_errno): Removed function.
448         (gcry_strerror): Do not use gcry_errno.
449         (_gcry_set_lasterr): Removed function.
450         (last_ec): Removed variable.
451
452 2003-05-27  Moritz Schulte  <moritz@g10code.com>
453
454         * gcrypt.h (enum gcry_cipher_algos): Make Serpent IDs do not
455         conflict with OpenPGP.  Reported by Timo Schulz.
456
457         * global.c (gcry_control): Fixed name of enum list.
458
459 2003-05-25  Moritz Schulte  <moritz@g10code.com>
460
461         * cipher.h (gcry_cipher_spec): Adjust return type of `setkey' for
462         libgpg-error.
463         (gcry_pubkey_spec): Adjust return type of `generate',
464         `check_secret_key', `encrypt', `decrypt', `sign' and `verify' for
465         libgpg-error.
466
467         * sexp.c (gcry_sexp_canon_len): Adjusted for libgpg-error.
468         (gcry_sexp_create): Likewise.
469         (gcry_sexp_new): Likewise.
470         (sexp_sscan): Likewise.
471         (gcry_sexp_build): Likewise.
472         (gcry_sexp_sscan): Likewise.
473
474         * module.c (_gcry_module_add): Likewise.
475
476         * global.c (last_ec): Change type to gpg_error_t.
477         (gcry_control): Adjust for libgpg-error.
478         (gcry_errno): Likewise.
479         (gcry_strerror): Likewise.
480         (_gcry_set_lasterr): Likewise.
481         (gcry_xmalloc): Likewise.
482         (gcry_xrealloc): Likewise.
483
484 2003-05-22  Moritz Schulte  <moritz@g10code.com>
485
486         * types.h: Merged code from GnuPG regarding U64_C.
487
488         * missing-string.c (strsep): Removed function.
489
490         * g10lib.h: Removed declarations: strsep, strlwr.
491
492         * secmem.c (secmem_lock): New variable.
493         (SECMEM_LOCK, SECMEM_UNLOCK): New macros.
494         (_gcry_secmem_set_flags): Use SECMEM_LOCK and SECMEM_UNLOCK.
495         (_gcry_secmem_get_flags): Likewise.
496         (_gcry_secmem_init): Likewie.
497         (_gcry_secmem_malloc): Likewise.
498         (_gcry_secmem_free): Likewise.
499         (_gcry_secmem_malloc): Renamed to ...
500         (_gcry_secmem_malloc_internal): ... this.
501         (_gcry_secmem_malloc): New function, use SECMEM_LOCK,
502         SECMEM_UNLOCK, call _gcry_secmem_malloc_internal.
503         (_gcry_secmem_free): Renamed to ...
504         (_gcry_secmem_free_internal): ... this.
505         (_gcry_secmem_free): New function, use SECMEM_LOCK, SECMEM_UNLOCK,
506         call _gcry_secmem_free_internal.
507         (_gcry_secmem_realloc): Use SECMEM_LOCK, SECMEM_UNLOCK, call
508         _gcry_secmem_malloc_internal and _gcry_secmem_free_internal.
509         (_gcry_private_is_secure): Use SECMEM_LOCK, SECMEM_UNLOCK.
510         (_gcry_secmem_dump_stats): Likewise.
511         (_gcry_secmem_malloc_internal): Removed unused variable:
512         compressed.
513         Include "ath.h".
514
515 2003-05-21  Moritz Schulte  <moritz@g10code.com>
516
517         * gcrypt.h (GCRY_CIPHER_SERPENT128, GCRY_CIPHER_SERPENT192,
518         GCRY_CIPHER_SERPENT256): New symbols.
519
520 2003-05-19  Moritz Schulte  <moritz@g10code.com>
521
522         * gcrypt.h: Reversed changes from 2003-03-03 since they would have
523         been an unnecessary ABI break.
524
525 2003-05-13  Moritz Schulte  <moritz@g10code.com>
526
527         * secmem.c (stats_update): New function.
528         (BLOCK_HEAD_SIZE): New symbol.
529         (MB_FLAG_ACTIVE): New symbol.
530         (ADDR_TO_BLOCK, BLOCK_VALID): New macros.
531         (mb_get_next): New function.
532         (mb_get_prev): New function.
533         (mb_merge): New function.
534         (mb_get_new): New function.
535         (unused_blocks): Removed variable.
536         (init_pool): Initialize new memory pool.
537         (_gcry_secmem_malloc): Use new heap management code.
538         (_gcry_secmem_free): Likewise.
539         (_gcry_secmem_realloc): Likewise.
540         Renamed type MEMBLOCK to memblock_t.
541
542 2003-04-27  Moritz Schulte  <moritz@g10code.com>
543
544         * cipher.h (gcry_pubkey_spec): New member: sexp_names.
545
546 2003-04-23  Moritz Schulte  <moritz@g10code.com>
547
548         * cipher.h (gcry_pubkey_spec): Removed members: npkey, nskey,
549         nenc, nsig.
550         (gcry_pubkey_spec): Added members: elements_pkey, elements_skey,
551         elements_enc, elements_sig, elements_grip.
552
553 2003-04-17  Moritz Schulte  <moritz@g10code.com>
554
555         * g10lib.h (GcryModule): New typedef.
556
557         * gcrypt.h (gcry_cipher_register, gcry_cipher_unregister,
558         gcry_digest_register, gcry_digest_unregister,
559         gcry_pubkey_register, gcry_pubkey_unregister): Function
560         declarations removed - for now.
561         
562         * gcrypt.h (GcryModule): Declaration removed.
563         * gcrypt.h (GcryPubkeySpec, GcryDigestSpec, GcryCipherSpec):
564         Types Moved... 
565         * cipher.h: ... here.
566
567 2003-04-17  Moritz Schulte  <moritz@g10code.com>
568
569         * cipher.h: Declare digest_spec_sha512 and digest_spec_384.
570
571 2003-04-16  Moritz Schulte  <moritz@g10code.com>
572
573         * module.c (_gcry_module_use): New function.
574         * g10lib.h (_gcry_module_use): Declare function.
575
576         * libgcrypt-config.in: Support for --algorithms switch, which
577         prints the algorithms included in the built libgcrypt.
578
579         * global.c (gcry_set_progress_handler): Register progress
580         functions depending on the enabled algorithms.
581
582 2003-04-07  Moritz Schulte  <moritz@g10code.com>
583
584         * Makefile.am (libgcrypt_la_SOURCES): Added module.c
585
586         * module.c: New file.
587         (_gcry_module_add): New function.
588         (_gcry_module_drop): New function.
589         (_gcry_module_lookup): New function.
590         (_gcry_module_release): New function.
591
592         * g10lib.h (GcryModule): New types.
593         (FLAG_MODULE_DISABLED): New symbol.
594         Added declarations for _gcry_module_add, _gcry_module_release and
595         _gcry_module_lookup.
596
597         * gcrypt.h: New types: GcryPubkeySpec, GcryDigestSpec,
598         GcryCipherSpec.
599         Added declarations for: gcry_cipher_register,
600         gcry_cipher_unregister, gcry_digest_register,
601         gcry_digest_unregister, gcry_pubkey_register and
602         gcry_pubkey_unregister.
603
604         * cipher.h: Removed symbols: CIPHER_ALGO_NONE, CIPHER_ALGO_IDEA,
605         CIPHER_ALGO_3DES, CIPHER_ALGO_CAST5, CIPHER_ALGO_BLOWFISH,
606         CIPHER_ALGO_SAFER_SK128, CIPHER_ALGO_DES_SK, CIPHER_ALGO_TWOFISH,
607         CIPHER_ALGO_TWOFISH_OLD, CIPHER_ALGO_DUMMY, PUBKEY_USAGE_SIG,
608         PUBKEY_USAGE_ENC, DIGEST_ALGO_MD5, DIGEST_ALGO_SHA1,
609         DIGEST_ALGO_RMD160, DIGEST_ALGO_TIGER, PUBKEY_ALGO_RSA,
610         PUBKEY_ALGO_RSA_E, PUBKEY_ALGO_RSA_S, PUBKEY_ALGO_DSA,
611         PUBKEY_ALGO_ELGAMAL, PUBKEY_ALGO_ELGAMAL_E.
612
613 2003-04-02  Moritz Schulte  <moritz@g10code.com>
614
615         * benchmark.c (md_bench): Fix error message.
616
617 2003-03-31  Moritz Schulte  <moritz@g10code.com>
618
619         * benchmark.c (cipher_bench): Added CTR mode.
620
621 2003-03-30  Simon Josefsson  <jas@extundo.com>
622
623         * gcrypt.h (enum gcry_control_cmds): Add GCRY_SET_CTR.
624         (enum gcry_cipher_modes): Add GCRY_CIPHER_MODE_CTR.
625         (gcry_cipher_setctr): New macro to set counter.
626
627 2003-03-19  Moritz Schulte  <moritz@g10code.com>
628
629         * cipher.h (PUBKEY_FLAG_NO_BLINDING): New symbol.
630
631 2003-03-22  Simon Josefsson  <jas@extundo.com>
632
633         * gcrypt.h: Add GCRYCTL_SET_CBC_MAC and GCRY_CIPHER_CBC_MAC.
634
635 2003-03-19  Werner Koch  <wk@gnupg.org>
636
637         * g10lib.h: Adjusted primegen.c prototypes.
638
639 2003-03-12  Werner Koch  <wk@gnupg.org>
640
641         * sexp.c (sexp_sscan): Initialize NM.  Thanks to Ian Peters for
642         valgrinding this.
643
644 2003-03-06  Moritz Schulte  <mo@g10code.com>
645
646         * secmem.h (GCRY_SECMEM_FLAG_NO_WARNING,
647         GCRY_SECMEM_FLAG_SUSPEND_WARNING): New symbols.
648
649         * global.c (gcry_control): Use
650         GCRY_SECMEM_FLAG_{NO,SUSPEND}_WARNING, instead of hard-coded
651         values.
652         * secmem.c (_gcry_secmem_set_flags): Likewise.
653         * secmem.c (_gcry_secmem_get_flags): Likewise.
654         
655 2003-03-03  Moritz Schulte  <moritz@g10code.com>
656
657         * misc.c: Removed old FIXME, since there is already a function to
658         set the value of `verbosity_level'.
659
660         * gcrypt.h: Removed enumeration list: gcry_ctl_cmds.
661         New enumeration lists: gcry_global_control_cmds,
662         gcry_control_cmds, gcry_info_cmds, gcry_algo_info_cmds.
663
664 2003-03-02  Moritz Schulte  <moritz@g10code.com>
665
666         * gcrypt.h (gcry_cipher_reset): New macro for resetting a handle.
667
668 2003-02-28  Moritz Schulte  <moritz@g10code.com>
669
670         * secmem.c (DEFAULT_PAGESIZE): New symbol.
671         (init_pool): Use DEFAULT_PAGESIZE.
672
673 2003-02-23  Moritz Schulte  <moritz@g10code.com>
674
675         * secmem.h: Fix typo in declaration of _gcry_secmem_term.
676
677         * sexp.c: Move macro definitions of `digitp', `octdigit', `alphap'
678         and `hexdigit' ...
679         * g10lib.h: ... here.
680
681         * misc.c (_gcry_burn_stack): New function (former name:
682         burn_stack).
683
684         * g10lib.h (burn_stack): Declare _gcry_burn_stack().
685
686 2003-01-24  Werner Koch  <wk@gnupg.org>
687
688         * global.c (gcry_set_progress_handler): Register a random progress
689         handler.
690
691 2003-01-23  Werner Koch  <wk@gnupg.org>
692
693         * gcrypt.h (GCRY_ENABLE_QUICK_RANDOM): New. 
694         * global.c (gcry_control): Make use of it.
695
696 2003-01-21  Werner Koch  <wk@gnupg.org>
697
698         * gcrypt.h (gcry_random_add_bytes): Add QUALITY argument.
699
700 2003-01-21  Timo Schulz  <twoaday@freakmail.de>
701
702         * gcrypt.h (gcry_random_add_bytes): New.
703         
704 2003-01-20  Simon Josefsson  <jas@extundo.com>
705
706         * gcrypt.h (gcry_md_algos): Add GCRY_MD_CRC32,
707         GCRY_MD_CRC32_RFC1510, GCRY_MD_CRC24_RFC2440.
708
709 2003-01-16  Werner Koch  <wk@gnupg.org>
710
711         * gcrypt.h (gcry_md_write): Changed type of 2nd argument to void*.
712         (gcry_md_hash_buffer): Changed type of both buffers to void*.
713         (gcry_md_setkey): Changed type of 2nd argument to void*.
714         (gcry_md_get_asnoid): New.
715
716 2003-01-15  Werner Koch  <wk@gnupg.org>
717
718         * sexp.c (gcry_sexp_length): Fixed.  This was seriously broken.
719
720 2003-01-14  Werner Koch  <wk@gnupg.org>
721
722         * gcrypt.h (GCRYERR_INV_FLAG), global.c (gcry_strerror): New.
723
724 2003-01-02  Werner Koch  <wk@gnupg.org>
725
726         * libgcrypt.vers: Temporary export _gcry_generate_elg_prime for
727         use by GNUTLS. 
728
729 2002-12-21  Werner Koch  <wk@gnupg.org>
730
731         * gcrypt.h: Make use of gcc's pure and malloc attributes 
732         (gcry_md_putc): Use a helper variable to avoid multiple
733         evaluation of H. 
734         * g10lib.h, stdmem.h, secmem.h: Use gcc attributes pure and malloc.
735
736         * stdmem.c (use_m_guard): Don't default to yes.
737
738 2002-12-19  Werner Koch  <wk@gnupg.org>
739
740         * global.c (global_init): The meat was never run due to a faulty
741         check. Thanks to Nikos for pointing this out.
742         
743         * global.c (gcry_control): Return 1 and not -1 for the
744         initialization tests.
745
746         * libgcrypt.vers: New.
747         * Makefile.am: Use this instead of the build symbol file.
748
749         * global.c (gcry_control) <initialization>: Call the random module
750         initializer to make sure that the pool lock flag has been
751         initialized.
752
753 2002-12-09  Werner Koch  <wk@gnupg.org>
754
755         * global.c (gcry_calloc,gcry_calloc_secure): Check for overflow.
756         Noted by Florian Weimer. 
757
758 2002-11-10  Simon Josefsson  <jas@extundo.com>
759
760         * gcrypt.h (gcry_ctl_cmds): New GCRYCTL_SET_CBC_CTS control flag.
761         (gcry_cipher_flags): New GCRY_CIPHER_CBC_CTS gcry_cipher_open() flag.
762         (gcry_cipher_cts): New macro for toggling CTS.
763
764 2002-11-10  Werner Koch  <wk@gnupg.org>
765
766         * gcrypt.h (GCRY_MD_MD4): New.  We use a non OpenPGP value here. 
767
768 2002-09-20  Werner Koch  <wk@gnupg.org>
769
770         * ath.c: Include sys.time.h if sys/select.h does not exist.
771         (ath_select, ath_waitpid): Shortcut for Windows.
772         * ath.h: Include some Windows headers.  By Timo.
773
774 2002-09-18  Werner Koch  <wk@gnupg.org>
775
776         * ath.h: Prefix ath_deinit.
777
778 2002-09-17  Werner Koch  <wk@gnupg.org>
779
780         * benchmark.c: New.
781         (mpi_bench, do_powm): Add a a simple test for RSA.
782
783         * global.c (global_init): New.  Use it instead of the setting
784         any_init_done.  Initialize the ATH system.
785         (gcry_check_version): Hook global_init in.  This is the suggested
786         way to initialize the library.
787         (_gcry_no_internal_locking): Removed.  We simply call a ath_deinit
788         and leave it to ATH to disbale the locking.
789
790         * ath.c, ath.h, ath-pth.c, ath-pthread.c: New. Taken from GPGME.
791         * mutex.h: Removed.
792         * Makefile.am (ath_components): New.
793
794 2002-09-16  Werner Koch  <wk@gnupg.org>
795
796         * secmem.c (_gcry_secmem_dump_stats): Replaced fprintf by log_*.
797
798 2002-08-23  Werner Koch  <wk@gnupg.org>
799
800         * missing-string.c: Removed unneeded strlwr.
801
802         * libgcrypt.m4: Made much more simple.
803         * libgcrypt-config.in: Made --prefix work for --libs.
804
805 2002-08-14  Werner Koch  <wk@gnupg.org>
806
807         * gcrypt.h: Add GCRY_CIPGER_DES.  Included string.h for size_t.
808         Suggested by Simon Josefsson.
809
810 2002-07-25  Werner Koch  <wk@gnupg.org>
811
812         * cipher.h: Added prototypes for progress functions.
813         * global.c: Include cipher.h for those prototypes.
814
815         * stdmem.c (_gcry_private_realloc): Replaced void* by char * for
816         pointer arithmetic reasons.  Noted by Stephan Austermuehle.
817
818 2002-06-24  Werner Koch  <wk@gnupg.org>
819
820         * missing-string.c: Include ctype.h.
821
822         * gcrypt.h (gcry_mpi_invm, gcry_mpi_div, gcry_mpi_mod)
823         (gcry_mpi_swap): New.
824
825 2002-06-18  Werner Koch  <wk@gnupg.org>
826
827         * gcrypt.h: Added a bunch of brief function descriptions.
828
829 2002-05-21  Werner Koch  <wk@gnupg.org>
830
831         * misc.c (_gcry_log_printf): Don't initialize a va_list.  Noted by
832         Jeff Johnson.
833
834         * global.c (gcry_set_progress_handler): New.
835
836         * gcrypt.h: Replaced the typedef for byte.
837
838 2002-05-16  Werner Koch  <wk@gnupg.org>
839
840         * missing-string.c: New.
841
842         * gcrypt.h: Add new error codes GCRYERR_SEXP_ and typedefs
843         GcryMPI, GcrySexp, GcryCipherHd, GcryMDHd as aliases for the old
844         ones using an underscore.
845
846         * global.c (gcry_strerror): Add strings fro the new error codes.
847         * sexp.c (gcry_sexp_canon_len): Use a macro to convert from new to
848         old error codes.
849         (gcry_sexp_create,gcry_sexp_new): New.
850
851 2002-05-15  Werner Koch  <wk@gnupg.org>
852
853         * mutex.h (DEFINE_LOCAL_MUTEX): Macro to define a mutex and
854         initialize it so that we can detect an unitialized mutex and don't
855         read from stdin.
856
857 2002-05-14  Werner Koch  <wk@gnupg.org>
858
859         Changed license of all files to the LGPL.
860
861 2002-05-07  Werner Koch  <wk@gnupg.org>
862
863         * global.c (gcry_control): Add commands
864         GCRYCTL_ANY_INITIALIZATION_P and GCRYCTL_INITIALIZATION_FINISHED_P
865         so that other libraries are able to check for required
866         initializations.
867
868 2002-05-02  Werner Koch  <wk@gnupg.org>
869
870         * gcrypt.h (GCRYCTL_DISABLE_INTERNAL_LOCKING): New.
871         * global.c (gcry_control): Implement it.
872         (_gcry_no_internal_locking): New.
873         * mutex.h: Prefixed all fucntions with _gcry_.  Bypass all
874         functions when desired.
875
876         * gcrypt.h (GCRYCTL_DISABLE_SECMEM): New.
877         * global.c (gcry_control,gcry_malloc_secure,gcry_is_secure):
878         Implement it here.
879         * secmem.c (_gcry_private_is_secure): Return false if the pool is
880         not initialized.
881
882         * gcrypt.h (GCRYCTL_INITIALIZATION_FINISHED): New.
883
884         * gcrypt.h (gcry_cipher_algos): Replaced RINDAEL by AES and change
885         the macros to expand from rijdael to aes.
886
887         * stdmem.c (_gcry_private_malloc): Return NULL for 0 byte allocation.
888         (_gcry_private_malloc_secure): Ditto.
889
890         * g10lib.h:  Copied the JNLIB_GCC macros from ../jnlib/mischelp.h
891         and removed the inclusion of that file.
892
893 2002-04-15  Werner Koch  <wk@gnupg.org>
894
895         * global.c (gcry_strdup): New.
896
897 2002-03-18  Werner Koch  <wk@gnupg.org>
898
899         * mutex.h: New file with a portable thread mutex implementation
900         written by Marcus Brinkmann.  Taken from GPGME.
901
902 2002-02-18  Werner Koch  <wk@gnupg.org>
903
904         * sexp.c (gcry_sexp_sscan): Don't initialize the dummy
905         variable.  Suggested by Jordi Mallach.
906
907 2002-01-31  Werner Koch  <wk@gnupg.org>
908
909         * sexp.c (suitable_encoding,convert_to_hex,convert_to_string)
910         (convert_to_token): New.
911         (gcry_sexp_sprint): Better formatting of advanced encoding, does
912         now insert LFs and escapes all unprintable characters.
913         (unquote_string): New.
914         (sexp_sscan): Implemented the missing conversion of quoted strings.
915
916 2002-01-26  Werner Koch  <wk@gnupg.org>
917
918         * libgcrypt-config.in: Add copyright notice.
919
920 2002-01-11  Werner Koch  <wk@gnupg.org>
921
922         * sexp.c (gcry_sexp_canon_len): Fixed last change.
923
924 2002-01-01  Timo Schulz <ts@winpt.org>
925
926         * stdmem.c (_gcry_private_realloc): If pointer is NULL now realloc
927         behaves like malloc.
928
929 2001-12-20  Werner Koch  <wk@gnupg.org>
930
931         * sexp.c (gcry_sexp_canon_len): Describe the error codes and
932         return an error if this is not a S-Exp; i.e. it does not start
933         with an open parenthesis.
934
935 2001-12-18  Werner Koch  <wk@gnupg.org>
936
937         * sexp.c (gcry_sexp_canon_len): Fixed the test on NULL buffer.
938
939         * Makefile.am (DISTCLEANFILES): Include libgcrypt.sym
940
941         * sexp.c: Removed the commented test code because we now have a
942         test in ../tests/
943
944 2001-12-17  Werner Koch  <wk@gnupg.org>
945
946         * sexp.c (gcry_sexp_canon_len): New.
947
948 2001-12-11  Werner Koch  <wk@gnupg.org>
949
950         * gcrypt.h: Fixed AES128 macro, add enum for OFB mode.
951
952 2001-12-05  Werner Koch  <wk@gnupg.org>
953
954         * misc.c (_gcry_log_printf): New.
955         * sexp.c (dump_string,gcry_sexp_dump): Use logging functions
956         instead of stderr.
957
958 2001-11-16  Werner Koch  <wk@gnupg.org>
959
960         * gcrypt.h: New constant GCRYCTL_IS_ALGO_ENABLED.
961
962 2001-10-02  Werner Koch  <wk@gnupg.org>
963
964         * gcrypt.h: Removed a couple of trailing commas.
965
966 2001-08-28  Werner Koch  <wk@gnupg.org>
967
968         * sexp.c (sexp_sscan): Add an argument to enable the
969         arg_ptr. Changed all callers.  Suggested by Tom Holroyd.
970
971 2001-08-03  Werner Koch  <wk@gnupg.org>
972
973         * global.c (gcry_strerror): Updated list of error codes.
974
975 2001-07-23  Werner Koch  <wk@gnupg.org>
976
977         * gcrypt.h: Replaced the last ulong.  Noted by Rami Lehti.
978
979 2001-05-31  Werner Koch  <wk@gnupg.org>
980
981         * gcrypt.h, mpi.h: Made some mpi functions public.
982
983         * wrapper.c: Removed.
984         * global.c: Renamed all g10_ prefixed functions which had wrappers 
985         to gcry_xxx. So we now use the exported memory functions inernally.
986
987         Renamed all g10_ prefixed functions to _gcry_ prefixed ones.
988         
989         * g10lib.h (_GCRYPT_IN_LIBGCRYPT): Replace defintion by a test on it.
990
991 2001-05-28  Werner Koch  <wk@gnupg.org>
992
993         * libgcrypt.m4: Check GCRYPT_VERSION macro and not LIBGCRYPT_VERSION.
994
995         * mpi.h: Removed mpi_fromstr prototype.
996
997 2001-01-11  Werner Koch  <wk@gnupg.org>
998
999         * Makefile.am (libgcrypt_la_SOURCES): Add mpi.h
1000
1001 2000-12-19  Werner Koch  <wk@gnupg.org>
1002
1003         * types.h: Moved from ../include to here.
1004
1005         Major change:
1006         Removed all GnuPG stuff and renamed this piece of software
1007         to gcrypt. 
1008
1009 2000-11-14  Werner Koch  <wk@gnupg.org>
1010
1011         * mpi.h: Moved to ../mpi.
1012
1013         * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency
1014         problems.
1015
1016 2000-10-11  Werner Koch  <wk@gnupg.org>
1017
1018         * mpi.h: Changed the way mpi_limb_t is defined.
1019
1020 2000-10-10  Werner Koch  <wk@gnupg.org>
1021
1022         * Makefile.am: Take version-info from configure.
1023
1024 2000-10-09  Werner Koch  <wk@gnupg.org>
1025
1026         * gcrypt.h: New cipher mode, new algo Arcfour and new error code
1027         GCRYERR_INV_CIPHER_MODE.
1028         * global.c (gcry_strerror): New errorcode.
1029
1030 Wed Oct  4 13:16:18 CEST 2000  Werner Koch  <wk@openit.de>
1031
1032         * gcrypt.h (gcry_md_setkey): Replaced macro by function prototype.
1033
1034 Mon Sep 18 16:35:45 CEST 2000  Werner Koch  <wk@openit.de>
1035
1036         * gcrypt.h (GCRYCTL_GET_ALGO_USAGE): New.
1037
1038         * secmem.c (secmem_realloc): check for failed secmem_malloc.  By
1039         Matt Kraai.
1040
1041 Mon Jul 31 10:04:47 CEST 2000  Werner Koch  <wk@openit.de>
1042
1043   * sexp.c: Removed the datalen fields from list tags.
1044   (gcry_sexp_car_data,gcry_sexp_cdr_data,gcry_sexp_car_mpi,
1045    gcry_sexp_cdr_mpi): Removed.
1046   (gcry_sexp_nth,gcry_sexp_nth_data,gcry_sexp_nth_mpi): New.
1047
1048 Fri Jul 28 18:19:11 CEST 2000  Werner Koch  <wk@openit.de>
1049
1050   * sexp.c (sexp_sscan): Fixed reallocation to secure memory.
1051   (new_empty_list): Removed
1052   (gcry_sexp_length): New.
1053   (gcry_sexp_enum): Removed.
1054   (normalize): New. Reworked the whole thing to use NULL for an empty list.
1055   (make_space): New instead of the macro.
1056
1057 Tue Jul 25 17:44:15 CEST 2000  Werner Koch  <wk@openit.de>
1058
1059   * sexp.c: Major rewrite.
1060   (gcry_sexp_sscan): Reordered arguments.  Moved functionality to ..
1061   (sexp_sscan): .. this.
1062   (gcry_sexp_build): New.
1063   (gcry_sexp_new_name_mpi, gcry_sexp_new_name_data, gcry_sexp_new_data,
1064    gcry_sexp_new_mpi): Removed.
1065
1066 Fri Jul 14 19:38:23 CEST 2000  Werner Koch  <wk@>
1067
1068   * gcrypt.h (gcry_md_start_debug, gcry_md_stop_debug): New.
1069   (gcry_ctl_cmds): New control values
1070
1071   * sexp.c (gcry_sexp_sscan): Add hex format parsing.
1072
1073   * secmem.c (lock_pool): Check for ENOSYS return my mlock() on old SCOs.
1074   (pool_is_mmapped): Made volatile.
1075   (lock_pool): No more warning for QNX. By Sam Roberts.
1076   (lock_pool,secmem_init): Additional check for dropped privs.
1077
1078 2000-03-21 09:18:48  Werner Koch  (wk@habibti.gnupg.de)
1079
1080         * gcrypt.h (gcry_md_setkey): New.
1081         (GCRY_MD_FLAG_HMAC): New.
1082
1083 Mon Jan 31 16:37:34 CET 2000  Werner Koch  <wk@gnupg.de>
1084
1085         * Makefile.am: Add g10lib.h
1086
1087 Thu Jan 27 18:00:44 CET 2000  Werner Koch  <wk@gnupg.de>
1088
1089         * sexp.c (gcry_sexp_sscan): Allow NULL for erroff.
1090
1091 Mon Jan 24 22:24:38 CET 2000  Werner Koch  <wk@gnupg.de>
1092
1093         * sexp.c (gcry_sexp_alist): New.
1094
1095 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
1096
1097         * secmem.c: Moved from ../util to here.
1098         * secmem.h: New.
1099         * stdmem.c: New. Based on the old ../util/memory.c.
1100         * stdmem.h: New.
1101
1102 Wed Dec  8 21:58:32 CET 1999  Werner Koch  <wk@gnupg.de>
1103
1104         * gcrypt.m4: New.
1105         * gcrypt-config: New.
1106
1107         * mpi.h (mpi_get_nbit_info): Removed
1108         (mpi_set_nbit_info): Removed.
1109         (struct gcry_mpi): Removed the nbits field.
1110
1111         * misc.c (g10_log_verbosity): New.
1112
1113         * global.c (g10_xstrdup): New.
1114
1115         * mpiapi.c: Removed.
1116
1117         * mpi.h: Moved from ../include to here.  Removed some obsolete
1118         prototypes and the iobuf.h header.
1119         * cipher.h: Moved from ../include to here. Removed the mpi.h header.
1120         * g10lib.h: Moved from ../include to here.
1121
1122 Fri Nov 19 17:15:20 CET 1999  Werner Koch  <wk@gnupg.de>
1123
1124         * sexp.c (dump_string): New.  Taken from gnupg/util/miscutil.c.
1125         (do_dump_list): s/print_string/dump_string/.
1126
1127         * testapi.c: New.
1128
1129         * mpiapi.c (gcry_mpi_randomize): Use new random API.
1130
1131 Sat Nov 13 17:44:23 CET 1999  Werner Koch  <wk@gnupg.de>
1132
1133         * gloabl.c (gcry_control): Add cases for dumping random
1134         and secmem stats.
1135
1136 Tue Oct 26 14:10:21 CEST 1999  Werner Koch  <wk@gnupg.de>
1137
1138         * pkapi.c: Removed.
1139
1140         * symapi.c: Removed.
1141
1142         * g10lib.h:  Moved to ../include.
1143
1144         * mdapi.c: Removed.
1145
1146 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1147
1148         * sexp.c: New.
1149
1150 Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1151
1152         * gcrypt.h: New
1153         * mpiapi.c: New
1154
1155         
1156  Copyright 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
1157
1158  This file is free software; as a special exception the author gives
1159  unlimited permission to copy and/or distribute it, with or without
1160  modifications, as long as this notice is preserved.
1161
1162  This file is distributed in the hope that it will be useful, but
1163  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1164  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.