See ChangeLog: Fri Mar 24 11:25:45 CET 2000 Werner Koch
[gnupg.git] / g10 / ChangeLog
1 Fri Mar 24 11:25:45 CET 2000  Werner Koch  <wk@openit.de>
2
3         * gpg.c (print_mds): Add arg keys as a kludge to print hmacs
4         (main): New option --print-hmac.
5
6         * trustdb.c (verify_own_keys): Do not print warning about unprotected
7         key when in quiet mode.
8
9 Mon Mar 13 19:22:46 CET 2000  Werner Koch  <wk@openit.de>
10
11         * build-paket.c (do_user_id): Save offset where name has been stored.
12
13         * ringedit.c : Add new access method KBXF
14
15         * kbxfile.c: New.
16
17 Mon Feb 21 22:43:01 CET 2000  Werner Koch  <wk@>
18
19         * kbx.h: New.
20         * kbxblob.c: Started to work on the keybox stuff.
21
22 Mon Jan 31 16:37:34 CET 2000  Werner Koch  <wk@gnupg.de>
23
24         * keygen.c (gen_dsa): Modified to work with gcry_pk_genkey.
25
26         * Removed dummy-cipher.h from all files.
27
28 Thu Jan 27 18:00:44 CET 2000  Werner Koch  <wk@gnupg.de>
29
30         * keygen.c (gen_elg): Modified to work with gcry_pk_genkey.
31         (key_from_sexp): New.
32         (factors_from_sexp): New.
33
34         * g10.c : Renamed to ...
35         * gpg.c : ... this
36         * Makefile.am: And fixed it here.
37
38         * Changed all "g10_"/"GPG_" prefixes to "gpg_"/"GPG_".
39
40 Mon Jan 24 22:24:38 CET 2000  Werner Koch  <wk@gnupg.de>
41
42         * misc.c (mpi_read_opaque): Fixed double counting.
43
44         * seckey-cert.c (do_check): Removed buffer and the unmotivated free
45         on it.
46
47         * pubkey-enc.c (pk_decrypt): New wrapper for the gcry_ function.
48         * seckey-cert.c (pk_check_secret_key): Likewise.
49         * encode.c (pk_encrypt): Likewise.
50
51         * parse-packet.c (parse_key): Fixed case of unencrypted secret keys.
52
53 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
54
55         * misc.c (mpi_print): Use gcry_mpi_aprint.
56         (pubkey_nbits): Kludge to use the gcry_pk_ API.
57
58         * seskey.c (encode_session_key): Replaced mpi_set_buffer by *_scan.
59         (do_encode_md): Ditto.
60         (encode_md_value): Ditto.
61         * seckey-cert.c (protect_secret_key): Ditto.
62         * comment.c (make_mpi_comment_node): Replaced mpi_get_buffer by _print.
63         * pubkey-enc.c (get_it): Ditto.
64         * sig-check.c (do_signature_check): Ditto.
65
66 Fri Dec 31 12:48:31 CET 1999  Werner Koch  <wk@gnupg.de>
67
68         * keyid.c (do_fingerprint_md): Replaced mpi_get_buffer by gcry_mpi_print.
69         (v3_keyid): New.
70         (keyid_from_sk): And use it here.
71         (keyid_from_pk): Ditto.
72         (fingerprint_from_sk): Ditto.
73         (fingerprint_from_pk): Ditto.
74
75         * misc.c (mpi_print): New.
76
77         * misc.c (checksum_mpi): Now uses gcry_mpi_print to get the data.
78
79         * seckey-cert.c (do_check): Replaced mpi_read_from_buffer.
80
81         * armor.c (armor_filter): Made the "Comment:" header translatable.
82
83 Wed Dec  8 21:58:32 CET 1999  Werner Koch  <wk@gnupg.de>
84
85         * seckey-cert.c: Removed obsolete mpi_*_protect_flag.
86         * parse-packet.c: Ditto.
87
88         * misc.c (mpi_read): Removed the secure argumet becuase it is
89         never used.  Changed all Callers.
90         (mpi_read_opaque): New.
91         (mpi_write_opaque): New.
92         * parse-packet.c (parse_key): Use the opaque method also for
93         v3 keys.
94         * build-packet.c (do_secret_key): Likewise.
95
96         * g10.c (main): Check libgcrypt version.
97
98         * packet.h: replaced inclusion of mpi.h by a plain typeedef of the
99         gcry_mpi structure and removed all inclusions of "mpi.h" in all
100         sources.
101
102         * g10.c: Add --delete-secret-key to the help page.
103
104         * g10.c (main): Changed the default homedir to "~/.gnupg-test" so
105         that we don't mess up with the stable version.
106
107         * misc.c (mpi_write): New.
108         (mpi_write): New.
109
110         * misc.c (checksum_u16_nobug): Removed.
111         (checksum_mpi_counted_nbits): Renamed to ...
112         (checksum_mpi): ... this to superseed the old one. Changed all
113         callers. This is because we do not emulate the old gpg bug anymore.
114         * g10.c (oEmuChecksumBug): Removed.
115
116 Fri Nov 19 17:15:20 CET 1999  Werner Koch  <wk@gnupg.de>
117
118         * g10.c (register_extension): New...
119         (main): Use it here instead of register_cipher_extesnion.
120         (strusage): s/strusage/my_strusage/ . Made static.
121         (main): Use set_strusage().
122
123         * tdbdump.c (HEXTOBIN): Changed the name of the argument, so that
124         traditional cpp don't mess up the macros. Suggested by Jos Backus.
125
126         * armor.c (parse_header_line): Stop parsing on a only WS line too.
127         Suggested by Aric Cyr.
128
129 Mon Nov 15 21:36:02 CET 1999  Werner Koch  <wk@gnupg.de>
130
131         * misc.c (pull_in_libs): Removed.
132
133 Sat Nov 13 17:44:23 CET 1999  Werner Koch  <wk@gnupg.de>
134
135         * mainproc.c (list_node): Print the PK algo in the --with-colon mode.
136         * keylist.c (list_keyblock): Ditto.
137
138         * misc.c (pull_in_libs): Removed pull in of g10c.
139
140         * misc.c (map_gcry_rc): Removed here and chnaged all users.
141
142         * getkey.c: Replaced check_pubkey_algo by openpgp_pk_test_algo.
143         * import.c (delete_inv_parts): Ditto.
144         * pkclist.c: Ditto.
145         * skclist.c: Ditto.
146         * pubkey-enc.c: Ditto.
147
148         * g10.c (main): Replaced the function to diable PK algos.
149
150         * g10.c (main): Replaced get_random_bits by gcry_random_bytes.
151         * seskey.c (encode_session_key): Likewise.
152         (make_session_key): Renamed randomize_buffer to gcry_randomize
153         and use the GCRY_xxx_RANDOM constants.
154         * cipher.c (write_header): Ditto.
155         * passphrase.c (hash_passphrase): Ditto.
156         * seckey-cert.c (protect_secret_key): Ditto.
157
158         * getkey.c (find_by_name): Replaced rmd160_hash_buffer
159         by gcry_md_hash_buffer.
160         * keyedit.c (show_prefs): Ditto.
161         * keylist.c (list_keyblock): Ditto.
162         * trustdb.c (print_uid_from_keyblock): Ditto.
163         (make_uid_records): Ditto.
164
165         * skclist.c (build_sk_list): Removed the test on faked RNGs.
166         (is_insecure): Removed.
167         * g10.c (--quick-random): Removed this option.
168
169         * Replaced all PUBKEY_ALGO_xxx by GCRY_PK_xxxx.
170
171         * misc.c (pubkey_algo_npkey): New as a wrapper around the gcry fucntion.
172         (pubkey_algo_nskey): Ditto.
173         (pubkey_algo_nsig): Ditto.
174         (pubkey_algo_nenc): Ditto.
175
176 Tue Oct 26 20:03:44 CEST 1999  Werner Koch  <wk@gnupg.de>
177
178         * Makefile.am (basicdefs.h): Added.
179         (install-data-local): Removed the handling for historic gpgm.
180
181 Tue Oct 26 14:10:21 CEST 1999  Werner Koch  <wk@gnupg.de>
182
183         * misc.c (openpgp_cipher_test_algo): New.
184         (openpgp_pk_test_algo): New.
185         (openpgp_md_test_algo): New.
186
187         * g10.c (build_list): Changed to use the new functions from libgcrypt.
188
189         * ringedit.c (enum_keyblocks): Set .rt to 0 on open.
190
191         * encode.c (encode_simple): Use new CTB when we don't have the
192         length of the file.  This is somewhat strange as the comment above
193         indicates that this part is actually fixed for PGP 5 - maybe I simply
194         lost the source line, tsss.
195
196         * sign.c (clearsign_file): Avoid duplicated Entries in the "Hash:"
197         line.  Those headers are now only _not_ printed when there are
198         only old-style keys _and_ all hashs are MD5.
199
200         (clearsign_file): Use gcry_md_test_algo() and gcry_md_algo_name().
201
202         * openfile.c (make_outfile_name): Use case-insenstive compare for
203         DOS systems.  Add ".pgp" to the list of know extensions.
204         (open_outfile): For DOS systems try to replace the suffix instead of
205         appending it.
206
207         * encr-data.c (decrypt_data): Reset error on a weak key.
208
209         * cipher.c: Replaced the cipher and digest functions by the gcry_ ones.
210         * seckey-cert.c: Ditto.
211         * seskey.c: Ditto.
212         * g10.c (print_mds): Replaced digst functions with the new gcry_ ones.
213         * keyid.c: Ditto.
214         * mainproc.c: Ditto.
215         * passphrase.c: Ditto.
216         * sig-check.c: Ditto.
217         * sign.c: Ditto.
218
219         * pkclist.c (do_edit_ownertrust): Made the answer string const.
220
221         * basicdefs.h: New.  Move some defs and decl to this header.
222
223         * openfile.c (open_outfile): Fixed the 8dot3 handling.
224
225         * passphrase.c (passphrase_to_dek): Print uid using utf8 func.
226         * delkey.c (delete_key): Ditto.
227         * pkclist.c (show_paths,do_edit_ownertrust,do_we_trust): Ditto
228         (do_we_trust_pre): Ditto.
229         * trustdb.c (print_user_id,check_uidsigs): Ditto.
230         * revoke.c (gen_revoke,ask_revoke_sig): Ditto.
231
232 Sat Sep 18 12:16:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
233
234         * filter.h: Changed cipher handle types to the the GCRY_xxx ones.
235         replaces include cipher by system header include gcrypt.h.
236         * cipher.c: replaced the cipher functions by the gcry_ ones.
237         Ditto for the md functions.
238
239         * misc.c (map_gcry_rc): New.
240
241 Fri Sep 17 12:56:42 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
242
243
244         * g10.c: Add UK spelling as alias for armor options ;-)
245
246         * import.c (append_uid): Fixed a SEGV when there is no selfsig and
247         no subkey.
248         (merge_sigs): Ditto.  Removed the assertion.
249
250 Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
251
252
253         * g10.c: New option --entropy-dll-name
254
255 Mon Sep 13 10:51:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
256
257
258         * signal.c (got_fatal_signal): Print message using write(2) and
259         only for development versions.
260
261
262 Mon Sep  6 19:59:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
263
264         * tdbio.c (tdbio_set_dbname): Use mkdir macro
265         * ringedit.c (add_keyblock_resource): Ditto.
266
267 Fri Sep  3 10:04:45 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
268
269         * pkclist.c (build_pk_list): Skip keys set with --encrypt-to also
270         when asking for a key.
271
272         * plaintext.c (handle_plaintext): Make sure that we don't read a
273         second EOF in the read loop for partial length packets.
274
275         * mainproc.c (check_sig_and_print): print user ID as utf-8.
276
277 Thu Sep  2 16:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
278
279         * import.c (merge_blocks): First add new subkeys, then merge subkey
280         certificates.
281         (merge_sigs): Don't merge subkey signatures here.
282
283 Wed Sep  1 15:30:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
284
285         * keygen.c (ask_expire_interval): Fixed bug related to cpr_xx (tnx
286         Francis J. Lacoste).
287
288 Tue Aug 31 17:20:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
289
290         * plaintext.c (do_hash): Hash CR,LF for a single CR.
291         (ask_for_detached_datafile): Changed arguments to be closer to
292         those of hash_datafiles and cleanup the code a bit.
293         * mainproc.c (proc_tree): Workaround for pgp5 textmode detached
294         signatures.  Changed behavior of asking for data file to be the same
295         as with provided data files.
296
297         * keylist.c (list_keyblock): Use UTF8 print functions.
298
299 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
300
301         * import.c (chk_self_sigs): some s/log_error/log_info/ so that gpg
302         does not return an error if a key has some invalid packets.
303
304         * helptext.c: Fixed some typos and changed the way the
305         translation works.  The english text is now the keyword for gettext
306         and not anymore the keyword supplied to the function.  Done after
307         some discussion with Walter who thinks this is much easier for the
308         translators.
309
310         * misc.c (disable_core_dumps): Don't do it for DOSish systems.
311
312         * signal.c (signal_name): Bounds check on signum.
313
314 Wed Aug  4 10:34:18 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
315
316         * pubring.asc: Updated.
317
318         * pkclist.c (do_we_trust_pre,check_signatures_trust): Do not print
319         the warning about --always_trust when --quiet is used.
320
321         * pkclist.c (fpr_info): New and called at several places.
322
323         * parse-packet.c (dump_sig_subpkt): List revocation key contents.
324
325 Mon Jul 26 09:34:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
326
327         * pkclist.c (build_pk_list): Fixed typo in format string.
328
329         * trustdb.c (create_shadow_dir): Don't translate the error string.
330
331         * g10.c (main): Fixed spelling of user-id.
332         * getkey.c (find_by_name_pk,find_by_name_sk,
333         find_by_keyid,find_by_keyid_sk): Ditto and translate it.
334         * import.c (mark_non_selfsigned_uids_valid,delete_inv_parts): Ditto.
335
336
337 Mon Jul 26 01:01:39 CEST 1999  Michael Roth <mroth@nessie.de>
338
339         * g10.c, options.h: New options --no-literal and --set-filesize
340
341         * encode.c (encode_simple, encode_crypt): Support for the options
342         --no-literal and --set-filesize.
343
344         * sign.c (sign_file): ditto.
345
346 Fri Jul 23 13:53:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
347
348
349         * ringedit.c (enum_keyblocks): Removed annoying error message in cases
350         when we have no keyring at all to enum.
351
352         * getkey.c (classify_user_id): Rewrote to relax the recognition of
353         keyIDs and fingerprints (Michael).
354
355         * mainproc.c (check_sig_and_print): Print status NO_PUBKEY.
356         (print_failed_pkenc): Print status NO_SECKEY.
357
358         * import.c (mark_non_selfsigned_uids_valid): New.
359         * g10.c: New option --allow-non-selfsigned-uid.
360
361         * pkclist.c (print_fpr): New.
362         (do_we_trust_pre): Print the fpr before asking whether to use the key
363         anyway.
364         (do_edit_ownertrust): Likewise.
365
366 Thu Jul 22 20:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
367
368
369         * ringedit.c (enum_keyblocks): Removed annoying error message in cases
370         when we have no keyring at all to enum.
371
372         * getkey.c (classify_user_id): Rewrote to relax the recognition of
373         keyIDs and fingerprints (Michael).
374
375         * mainproc.c (check_sig_and_print): Print status NO_PUBKEY.
376         (print_failed_pkenc): Print status NO_SECKEY.
377
378         * import.c (mark_non_selfsigned_uids_valid): New.
379         * g10.c: New option --allow-non-selfsigned-uid.
380
381 Thu Jul 15 10:15:35 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
382
383         * g10.c: New options --disable-{cipher,pubkey}-algo.
384
385 Wed Jul 14 19:42:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
386
387         * status.h (STATUS_IMPORTED): New.
388         * import.c (import): Print some status information (Holger Schurig).
389
390         * g10.c (main): Make --no-greeting work again. Add a warning when
391         --force-mds is used.
392
393 Tue Jul 13 17:39:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
394
395         * pkclist.c (do_edit_ownertrust): Changed the way help works.
396         (build_pk_list): Implemented default recipient stuff.
397         * g10.c: New options --default-recipient[-self]
398         (main): Suppress greeting in most cases, entering a passphrase or
399         a missing value is not considered to be interactive use.
400         Merged --print-md and --print-mds; the latter is now obsolete.
401         Changed the way --gen-random works and documented it.
402         Changed the way --gen-prime works and add a man entry.
403         * g10.c (MAINTAINER_OPTIONS): Removed.
404
405 Mon Jul 12 18:45:57 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
406
407         * keyedit.c (keyedit_menu): Add arg sign_mode and changed callers
408         * g10.c (main): New command --lsign-key.
409
410 Mon Jul 12 14:55:34 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
411
412         * mainproc.c (kidlist_item): New.
413         (release_list): Release failed pk-enc-list.
414         (print_failed_pkenc): New
415         (proc_encrypted): Print info about failed PK enc.
416
417         * openfile.c (make_outfile_name): s/error/info/
418
419         * passphrase.c (passphrase_to_dek): Return an empty passphrase when
420         in batch mode and don't make the warning message fatal
421         * seckey-cert.c (check_secret_key): Try only once when in batch mode.
422
423         * g10.c (make_username): New.
424
425 Thu Jul  8 16:21:27 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
426
427
428         * packet.h (PKT_ring_trust): New
429         * parse-packet.c (parse_trust): Store trust value
430         * build-packet (build_packet): Ignore ring trust packets.
431         * mainproc.c (add_ring_trust): New.
432         (list_node): Print "rtv" records.
433         * g10.c: New option --with-fingerprint.
434
435         * trustdb.c (verify_own_keys): Don't insert if we are dry running
436         (check_trust): Ditto.
437
438 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
439
440         * Makefile.am: Support for libtool.
441
442         * keygen.c (ask_expire_interval): Hack to allow for an expire date.
443
444         * trustdb.c (do_update_trust_record,update_trust_record): Splitted.
445         (check_trust_record): New.
446         (check_trust,build_cert_tree): Check the dir record as needed.
447         (upd_pref_record): Removed.
448         (make_pref_record): New.
449         (propagate_validity): Stop as soon as we have enough validity.
450
451         * tbdio.c (MAX_CACHE_ENTRIES_HARD): Increased the limit.
452
453
454 Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
455
456         * g10.c (g10_exit): Dump random stats.
457
458         * sig-check.c (check_key_signature,check_key_signature2): Enhanced
459         version and wrapper for old function.
460         (do_signature_check,signature_check): Ditto.
461
462 Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
463
464
465         * keyedit.c (show_key_with_all_names): Print a notice for disabled keys.
466         (enable_disable_keys): Add functionality
467         * pkclist.c (edit_ownertrust): preserve disabled state.
468         (build_pk_list): Skip disabled keys.
469         * trustdb.c (upd_one_ownertrust): Ditto.
470         (build_cert_tree): Mask the ownertrust.
471         (trust_letter): Mask the value.
472         (do_check): Take disabled flag into account.
473
474         * passphrase.c (passphrase_to_dek): Add a pubkey_algo arg and changed
475         all callers.
476
477         * g10.c (utf8_strings): 2 new options.
478
479         * trustdb.c (insert_trust_record_by_pk): New, replaces the next one.
480         (insert_trust_record): Now takes a keyblock as arg.  Changed all
481         callers to use the appropritae function.
482
483         * openfile.c (ask_outfile_name): New.
484         * plaintext.c (handle_plaintext): Ask for filename if there is
485         no valid syntax. Don't use fname varbatim but filter it.
486
487 Tue Jun 29 21:44:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
488
489
490         * trustdb.h (TRUST_FLAG_DISABLED): New.
491
492         * status.c (USE_CAPABILITIES): Capabilities support (Remi).
493
494         * tdbio.c : Added new fields to the DIR record.
495         (tdbio_write_record): Fixed the update of the hash tables.
496         (tdbio_delete_record): Drop the record from the hash tables.
497         (drop_from_hashtbl): New.
498
499         * status.c (cpr_get): Special online help mode.
500         * helptext.c ("keyedit.cmd"): Removed.
501         * keyedit.c (keyedit_menu): Use only help system.
502         (enable_disable_key): New bit doies not yet work.
503
504 Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
505
506
507         * dearmor.c (enarmor_file): Fixed comment string.
508         * tdbdump.c (export_ownertrust): Text fix.
509         * tbio.c (tdbio_invalid): Ditto.
510
511         * parse-packet.c (parse_key): Made temp buffer larger.
512
513         * Makefile.am (install-data-local): Add missing backslashes
514
515 Tue Jun 15 12:21:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
516
517         * g10.c (main): Made iterated+salted the default S2K method.
518
519         * Makefile.am (install-data-local): Use DESTDIR.
520
521         * passphrase.c (passphrase_to_dek): Emit missing-passphrase while in
522         batchmode.
523
524         * parse-packet.c (parse_pubkeyenc): Fixed a SEGV.
525
526 Mon Jun 14 21:18:54 CEST 1999 Michael Roth <mroth@nessie.de>
527
528         * g10.c: New options --openpgp, --no-tty, --emit-version,
529           --default-comment and --lock-multiple
530
531 Thu Jun 10 14:18:23 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
532
533         * free-packet.c (free_encrypted): Fixed EOF case (Remi).
534         (free_plaintext): Ditto.
535
536         * helptext.c (keyedit.delsig.unknown): New (Remi).
537         * keyedit.c (print_and_check_one_sig): Add arg print_without_key and
538         changed all callers to make use of it (Remi):
539
540 Tue Jun  8 13:36:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
541
542         * keylist.c (print_key_data): New and called elsewhere.
543         * g10.c: New option --with-key-data
544
545 Wed Jun  2 14:17:19 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
546
547         * mainproc.c (proc_tree): Yet another bad hack to cope with
548         broken pgp2 created detached messages in textmode.
549
550 Tue Jun  1 16:01:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
551
552         * openfile.c (make_outfile_name): New.
553         * plaintext.c (handle_plaintext): Outputfile is now the inputfile
554         without the suffix.
555         * g10.c: New option --use-embedded-filename
556
557 Mon May 31 19:41:10 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
558
559         * g10.c (main): Fix for SHM init (Michael).
560
561         * compress.c, encr-data.c, mdfilter.c,
562           plaintext.c, free-packet.c: Speed patches (Rémi).
563
564 Thu May 27 09:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
565
566         * status.c (cpr_get_answer_yes_no_quit): New.
567         * keyedit.c (menu_delsig): New.
568         (check_all_keysigs): Splitted.
569         (print_and_check_one_sig): New.
570
571 Wed May 26 14:36:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
572
573         * build-packet.c (build_sig_subpkt): Support large packets.
574         * parse-packet.c (enum_sig_subpkt): Replaces parse_sig_subpkt.
575         * mainproc.c (print_notation_data): Print all notation packets.
576         * g10.c (add_notation_data): Add a way to specify the critical flag.
577         (main): Add option --set-policy-url.
578         (check_policy_url): Basic checks.
579         * sign.c (mk_notation_and_policy): Replaces mk_notation.
580
581         * parse-packet.c (can_handle_critical): Moved decision whether we can
582         handle critical subpacket to an extra function.
583
584 Tue May 25 19:50:32 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
585
586         * sign.c (sign_file): Always use compression algo 1 for signed
587         onyl file becuase we can´ be sure the the verifier supports other
588         algorithms.
589
590         * build-packet.c (build_sig_subpkt): Support for notation data.
591         * sign.c (sign_file,clearsign_file,make_keysig_packet): Ditto.
592         (mk_notation): New.
593         * g10.c (add_notation_data): New and add option -N
594         * mainproc.c (print_notation_data): New.
595         (check_sig_and_print): Print any notation data of the signed text.
596
597 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
598
599         * pkclist.c (check_signatures_trust): Print a warning and return
600         immediateley if opt.always_trust is true.
601
602         * g10.c (main): Corrected handling of no-default-keyring
603
604         * pkclist.c (algo_available): Disable Twofish until we have settled
605         how to do the MDC.
606
607         * hkp.c: Disable everything for mingw32
608
609 Sat May 22 22:47:26 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
610
611         * mainproc.c (check_sig_and_print): Add sig creation time to the
612         VALIDSIG status output. Add more info to the ERRSIG output.
613         * sig-check.c (signature_check): Add sig time after epoch to SIG_ID.
614
615         * import.c (import_one): Merge duplicate user IDs.
616         (collapse_uids): New.
617         * kbnode.c (move_kbnode): New.
618         (remove_kbnode): New.
619         * keyedit.c (keyedit_menu): Call collapse_uids.
620
621         * g10.c: new option --logger-fd.
622
623         * import.c: s/log_*_f/log_*/
624
625 Thu May 20 14:04:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
626
627         * misc.c (pull_in_libs): do the volatile only for gcc
628
629         * sig-check (signature_check): Emit SIG_iD only for classes 0 and 1.
630
631         * armor.c (armor_filter): Add detection of PGP2 created clearsigs.
632         (fake_packet): A tab is not a WS for pgp2 - handle this.
633         * textfilter.c (len_without_trailing_chars): New.
634         (copy_clearsig_text): Add pgp2mode arg.
635         * sign.c (clearsign_file): pass old_style to the above fnc.
636
637
638 Wed May 19 16:04:30 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
639
640         * g10.c: New option --interactive.
641
642         * mainproc.c (proc_plaintext): Add workaround for pgp2 bug
643         (do_check_sig): Ditto.
644         (proc_tree): Ditto.
645         * plaintext.c (do_hash): Ditto.
646         (hash_datafiles): Ditto, add an arg, changed all callers.
647         * mdfilter.c (md_filter): Add support for the alternate hash context.
648
649 Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
650
651         * parse-packet.c (parse_encrypted): Support for PKT_ENCRYPTED_MDC.
652         * build-packet.c (do_encrypted_mdc): Ditto.
653         * cipher.c (write_header): Add mdc hashing.
654         (cipher_filter): write out the hash.
655         * mainproc.c (do_proc_packets): Add PKT_ENCRYPTED_MDC.
656         * encr-data.c (decrypt_data): Add mdc hashing.
657         (mdc_decode_filter): New.
658
659         * parse-packet.c (parse_sig_subpkt): Fixed stupid bug for subpkt
660         length calculation
661         (parse_signature): Fixed even more stupid bug.
662
663 Sat May  8 19:28:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
664
665         * build-packet.c (do_signature): Removed MDC hack.
666         * encode.c (encode_crypt_mdc): Removed.
667         * mainproc.c (do_check_sig): Removed MDC hack.
668         (check_sig_and_print): Ditto.
669         * parse-packet.c (parse_signature): Ditto.
670         * sig-check.c (mdc_kludge_check): Ditto.
671         * free-packte.c (copy_signature, free_seckey_enc): Ditto.
672
673         * parse-packet.c (parse_signature,parse_key): Store data of
674         unknown algorithms with mpi_set_opaque inseatd of the old
675         faked data stuff.
676         (read_rest): Removed.
677         (read_rest2): Renamed to read_rest
678         * build-packet.c (write_fake_data): Use mpi_get_opaque.
679         * free-packet.c (cp_fake_data): Removed and cahnged all callers
680         to use mpi_copy.
681         (free_pubkey_enc,free_seckey_enc,release_public_key_parts,
682          release_secret_key_parts): Use mpi_free for opaque data.
683
684 Thu May  6 14:18:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
685
686         * trustdb.c (check_trust): Check for revoked subkeys.
687         * pkclist.c (do_we_trust): Handled revoked subkeys.
688         (do_we_trust_pre): Ditto.
689         (check_signatures_trust): Ditto.
690
691         * build-packet.c (hash_public_key): Fix for ancient g10 keys.
692
693         * mainproc.c (do_proc_packets): Return EOF if no data has been read.
694         * g10.c (main): Catch errors for default operation.
695
696 Thu Apr 29 12:29:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
697
698         * sign.c (sign_file): Fixed hashing in case of no subpackets.
699         (clearsign_file): Ditto.
700         (make_keysig_packet): Ditto.
701
702 Wed Apr 28 13:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
703
704         * keyedit.c (keyedit_menu): Add new command revkey.
705         * (menu_revkey): New.
706
707
708 Mon Apr 26 17:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
709
710         * parse-packet.c (parse_signature): Add the MDC hack.
711         * build-packet.c (do_signature): Ditto.
712         * free-packet.c (free_seckey_enc,copy_signature,cmp_signatures): Ditto.
713         * mainproc.c (do_check_sig): Ditto.
714         * sig-check.c (mdc_kludge_check): New.
715         * encode.c (encrypt_mdc_file): New.
716
717         * keyedit.c (check_all_keysigs): List revocations.
718         * (menu_revsig): New.
719         * sign (make_keysig_packet): Support for class 0x30.
720
721 Sun Apr 18 20:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
722
723         * pkclist.c (select_algo_from_prefs): Fixed the case that one key
724         has no preferences (Remi Guyomarch).
725
726         keylist.c (list_keyblock): ulti_hack to propagate trust to all uids.
727
728 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
729
730         * seckey-cert.c (do_check): Use real IV instead of a 0 one, so that
731         it works even if the length of the IV doesn't match the blocksize.
732         Removed the save_iv stuff.
733         (protect_secret_key): Likewise.  Create the IV here.
734         * packet.h (PKT_secret_key): Increased size of IV field and add a
735         ivlen field.
736         * parse-packet.c (parse_key): Use the len protect.ivlen.
737         * build-packet.c (do_secret_key). Ditto.
738
739         * getkey.c (key_byname): Close keyblocks.
740
741         * Makefile.am (gpgm): Removed this
742         * g10.c: Merged gpg and gpgm
743
744         * import.c (import): Utilize option quiet.
745         * tdbio.c (tdbio_set_dbname): Ditto.
746         * ringedit.c (add_keyblock_resource,keyring_copy): Ditto.
747
748         * keyedit.c (sign_uids): Add some batch support.
749
750         * g10.c (main): add call to tty_batchmode.
751
752 Fri Apr  9 12:26:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
753
754         * status.c (write_status_text): Some more status codes.
755         * passphrase_to_dek (passphrase_to_dek): add a status code.
756         * seckey_cert.c (check_secret_key): Likewise.
757
758         * encr-data.c (decrypt_data): Reverse the last changes
759         * cipher.c (write_header): Ditto.
760
761         * parse-packet.c (parse_key): Dropped kludge for ancient blowfish mode.
762
763 Thu Apr  8 09:35:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
764
765         * mainproc.c (proc_encrypted): Add a new status output
766         * passphrase.c (passphrase_to_dek): Ditto.
767         * status.h status.c: Add new status tokens.
768
769 Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
770
771         * encr-data.c (decrypt_data): Fixes for 128 bit blocksize
772         * cipher.c (write_header): Ditto.
773         * seckey-cert.c (do_check): Ditto.
774         (protect_secret_key). Ditto.
775         * misc.c (print_cipher_algo_note): Twofish is now a standard algo.
776
777         * keygen.c (do_create): Fixed spelling (Gaël Quéri)
778         (ask_keysize): Only allow keysizes up to 4096
779
780         * ringedit.c (add_keyblock_resource): chmod newly created secrings.
781
782         * import.c (delete_inv_parts): Fixed accidently deleted subkeys.
783
784 Tue Apr  6 19:58:12 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
785
786         * armor.c: Removed duped include (John Bley)
787         * mainproc.c: Ditto.
788
789         * build-packet.c (hash_public_key): Fixed hashing of the header.
790
791         * import.c (delete_inv_parts): Allow import of own non-exportable sigs.
792
793 Sat Mar 20 13:59:47 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
794
795         * armor.c (fake_packet): Fix for not not-dash-escaped
796
797 Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
798
799         * g10.c (main): Added command --recv-keys
800         * hkp.c (hkp_import): New.
801
802 Wed Mar 17 13:09:03 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
803
804         * trustdb.c (check_trust): add new arg add_fnc and changed all callers.
805         (do_check): Ditto.
806         (verify_key): Ditto.
807         (propagate_validity): Use the new add_fnc arg.
808         (print_user_id): Add the FILE arg.
809         (propagate_ownertrust): New.
810         * pkclist.c (add_ownertrust_cb): New and changed the add_ownertrust
811         logic.
812
813         * getkey.c (get_keyblock_bylid): New.
814         * trustdb.c (print_uid_from_keyblock): New.
815         (dump_tn_tree_with_colons): New.
816         (list_trust_path): Add colon print mode.
817
818         * trustdb.c (insert_trust_record): Always use the primary key.
819
820         * encode.c (encode_simple): Added text_mode filter (Rémi Guyomarch)
821         (encode_crypt): Ditto.
822
823         * mainproc.c (proc_pubkey_enc): Added status ENC_TO.
824         * armor.c (armor_filter): Added status NODATA.
825         * passphrase.c (passphrase_to_dek): Always print NEED_PASSPHRASE
826         * seckey_cert.c (check_secret_key): Added BAD_PASS status.
827
828         * g10.c (main): Set g10_opt_homedir.
829
830 Sun Mar 14 19:34:36 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
831
832         * keygen.c (do_create): Changed wording of the note (Hugh Daniel)
833
834 Thu Mar 11 16:39:46 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
835
836         * tdbdump.c: New
837
838         * trustdb.c (walk_sigrecs,do_list_sigs,list_sigs,
839         list_records,list_trustdb,export_ownertrust,import_ownertrust): Moved
840         to tdbdump.c
841         (init_trustdb): renamed to setup_trustdb.  Changed all callers.
842         (do_init_trustdb): renamed to init_trustdb().
843         * trustdb.c (die_invalid_db): replaced by tdbio_invalid.
844         * tdbio.c (tdbio_invalid): New.
845
846         * import.c (delete_inv_parts): Skip non exportable signatures.
847         * keyedit.c (sign_uid_mk_attrib): New.
848         (sign_uids): Add the local argument.
849         (keyedit_menu): New "lsign" command.
850         * trustdb.c (register_trusted_key): Removed this and all related stuff.
851         * g10.c (oTrustedKey): Removed option.
852
853         * tdbio.h (dir.valcheck): New trustdb field.
854         * tdbio.c: Add support for this field
855         (tdbio_read_modify_stamp): New.
856         (tdbio_write_modify_stamp): New.
857         * trustdb.c (do_check): Check against this field. Removed cache update.
858         (verify_key): Add cache update.
859         (upd_uid_record): Some functional changes.
860         (upd_cert_record): Ditto
861
862 Wed Mar 10 11:26:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
863
864         * keylist.c (list_keyblock): Fixed segv in uid. Print 'u' as
865         validity of sks.
866
867 Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
868
869         * getkey.c (classify_user_id): Add new mode 12 (#<lid>).
870
871         * seckey-cert.c (check_secret_key): replaced error by info.
872
873         * trustdb.c (query_trust_info): Add another arg, changed all callers.
874         (check_trust): Ditto.
875         (do_check): Ditto.
876         (verify_key): Handle namehash.
877         * keylist.c (list_keyblock): print trust info for user ids.
878
879         * sig-check.c (signature_check): Add sig-created to status output.
880
881 Tue Mar  2 16:44:57 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
882
883         * textfilter.c (copy_clearsig_text): New.
884         (clearsign): Removed.
885         * sign.c (clearsign_file): does not use textfiler anymore.
886
887         * keygen.c (ask_user_id): print a note about the used charset.
888
889 Tue Mar  2 10:38:42 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
890
891         * sig-check.c (signature_check): sig-id now works for all algos.
892
893         * armor.c (armor_filter): Fixed armor bypassing.
894
895 Sun Feb 28 19:11:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
896
897         * keygen.c (ask_user_id): Don't change the case of email addresses.
898         (has_invalid_email_chars): Adjusted.
899
900         * keylist.c (list_one): Really list serect keys (Remi Guyomarch)
901
902         * keyedit.c (menu_select_uid): Add some braces to make egcs happy.
903         (menu_select_key): Ditto.
904
905         * mainproc.c (do_proc_packets): List sym-enc packets (Remi Guyomarch)
906
907 Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
908
909         * pkclist.c (build_pk_list): Return error if there are no recipients.
910
911         * sig-check.c (signature_check): New signature id feature.
912         * armor.c (make_radic64_string): New.
913
914         * mainproc.c (proc_pubkey_enc): early check for seckey availability.
915
916         * pkclist.c (do_we_trust_pre): print user id before asking.
917
918         * ringedit.c (add_keyblock_resource,get_keyblock_handle): Cleaner
919         handling of default resource.
920
921
922 Thu Feb 25 18:47:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
923
924         * pkclist.c (algo_available): New.
925         (select_algo_from_prefs): Check whether algo is available.
926
927         * ringedit.c (keyring_copy): Take care of opt.dry_run.
928         (do_gdbm_store): Ditto.
929         * openfile.c (open_outfile). Ditto.
930         (copy_options_file): Ditto.
931         * trustdb.c (update_trustdb): Ditto.
932         (clear_trust_checked_flag): Ditto.
933         (update_trust_record): Ditto.
934         (insert_trust_record): Ditto.
935
936 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
937
938         * keylist.c (secret_key_list): Now really list the secret key.
939
940         * trustdb.c (do_init_trustdb): New. Init is now deferred.
941
942 Mon Feb 22 20:04:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
943
944         * getkey.c (lookup_sk): Return G10ERR_NO_SECKEY and not x_PUBKEY.
945
946 Fri Feb 19 15:49:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
947
948         * pkclist.c (select_algo_from_prefs): retrieve LID if not there.
949
950         * armor.c (fake_packet): Replaced ugly lineending handling.
951
952         * g10.c (oNoEncryptTo): New.
953         * pkclist.c (build_pk_list): Implemented this option.
954
955         * g10.c (main): Greeting is now printed to stderr and not to tty.
956         Use add_to_strlist() instead of direct coding.
957
958         * import.c (import): Use iobuf_push_filter2.
959
960         * mainproc.c (check_sig_and_print): Print all user ids
961         for good signatures.
962         * getkey.c (get_pubkeyblock): New.
963
964         * import.c (chk_self_sigs): Fixed SEGV for unbounded class 0x18 keys.
965         (delete_inv_parts): Delete special marked packets.
966
967 Tue Feb 16 14:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
968
969         * g10.c (main): New option --encrypt-to
970
971         * pkclist.c (build_pk_list): Implemented encrypt-to.
972
973         * parse-packet.c (parse_user_id): Removed the hack to work with
974         utf-8 strings.
975
976         * g10.c (main): Install lockfile cleanup handler.
977         * tdbio.c (cleanup): Removed: this is now handled by dotlock.
978
979 Sat Feb 13 14:13:04 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
980
981         * tdbio.c (tdbio_set_dbname): Init lockhandle for a new trustdb
982
983 Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
984
985         * g10.c (main): check for development version now in configure
986
987         * tdbio.c (tdbio_write_record): Add uid.validity
988         (tdbio_read_record) : Ditto.
989         (tdbio_dump_record) : Ditto.
990
991         * keygen.c (keygen_add_std_prefs): Replaced Blowfish by Twofish,
992         removed MD5 and Tiger.
993         * pubkey-enc.c (get_it): Suppress warning about missing Blowfish
994         in preferences in certain cases.
995
996         * ringedit.c (lock_rentry,unlock_rentry): New.
997
998         * getkey.c (key_byname): Pass ret_kb down to lookup_xx.
999
1000         * armor.c (armor_filter): No output of of empty comment lines.
1001         Add option --no-version to suppress the output of the version string.
1002
1003         * getkey.c: Release the getkey context for auto context variables.
1004
1005 Sun Jan 24 18:16:26 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1006
1007         * getkey.c: Changed the internal design to allow simultaneous
1008         lookup of multible user ids
1009         (get_pubkey_bynames): New.
1010         (get_seckey_bynames): New.
1011         (get_seckey_next): New.
1012         (get_seckey_end): New.
1013         * keylist.c (list_one): Use the new functions.
1014
1015         * keylist.c (list_keyblock): add a newline for normal listings.
1016
1017         * g10.c (--recipient): New option name to replace --remote-user
1018
1019
1020 Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1021
1022         * textfilter.c: Mostly rewritten
1023         * plaintext.c (handle_plaintext): Use now text_filter semantics.
1024
1025 Tue Jan 19 19:34:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1026
1027         * export.c (export_pubkeys_stream): New.
1028         (do_export_stream): New.
1029         * g10.c (aSendKeys): New command.
1030         * hkp.c (hkp_export): New.
1031
1032         * compress.c (do_uncompress): Hack for algo 1 and 1.1.3
1033
1034 Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1035
1036         * textfilter.c (text_filter): Now uses iobuf_read_line().
1037         (read_line): Removed.
1038
1039         * armor.c (trim_trailing_spaces): Removed and replaced
1040         by trim_trailing_ws from libutil
1041
1042 Sat Jan 16 12:03:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1043
1044         * hkp.c (hkp_ask_import): Use only the short keyid
1045
1046 Sat Jan 16 09:27:30 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1047
1048         * import.c (import_key_stream): New
1049         (import): New, moved most of import_keys here.
1050         * g10.c: New option --keyserver
1051         * mainproc.c (check_sig_and_print): Hook to import a pubkey.
1052
1053         * pref.c pref.h : Removed
1054
1055         * hkp.c hkp.h: New
1056
1057 Wed Jan 13 14:10:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1058
1059         * armor.c (radix64_read): Print an error if a bad armor was detected.
1060
1061 Wed Jan 13 12:49:36 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1062
1063         * armor.c (radix64_read): Now handles malformed armors produced
1064         by some buggy MUAs.
1065
1066 Tue Jan 12 11:17:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1067
1068         * ringedit.c (find_keyblock_bysk): New.
1069
1070         * skc_list.c (is_insecure): New.
1071         (build_sk_list): usage check for insecure keys.
1072
1073         * import.c (chk_self_sigs): Add handling for subkeys.
1074         (delete_inv_parts): Skip unsigned subkeys
1075
1076         * sig-check.c (do_check): Print info if the signature is older
1077         than the key.
1078         * keygen.c (generate_subkeypair): Fail on time warp.
1079         * sign.c (do_sign): Ditto.
1080
1081 Sun Jan 10 15:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1082
1083         * armor.c (fake_packet): Fixed not-dash-escaped bug.
1084
1085 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1086
1087         * sig-check.c (do_check): Output time diff on error
1088
1089         * status.c (STATUS_VALIDSIG): New.
1090         (is_status_enabled): New.
1091         * mainproc.c (check_sig_and_print): Issue that status message.
1092
1093         * plaintext.c (special_md_putc): Removed
1094
1095         * armor.c (armor_filter): print error for truncated lines.
1096
1097         * free-packet.c (free_encrypted): Revomed call to set_block_mode.
1098         (free_plaintext): Ditto.
1099
1100 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1101
1102         * pkclist.c (add_ownertrust): Fixed return value.
1103
1104         * encr-data.c (decrypt_data): Disabled iobuf_set_limit and
1105         iobuf_pop_filter stuff.
1106         * compress.c (handle_compressed): Disabled iobuf_pop_filter.
1107
1108         * packet.h (PKT_secret_key): Add is_primary flag.
1109         * parse-packet.c (parse_key): Set this flag.
1110         * passphrase.c (passphrase_to_dek): Kludge to print the primary
1111         keyid - changed the API: keyid must now hold 2 keyids.
1112         * getkey.c (get_primary_seckey): New.
1113         * seckey-cert.c (do_check): pass primary keyid to passphrase query
1114
1115         * tbdio.c (open_db): removed the atexit
1116         (tdbio_set_dbname): and moved it to here.
1117
1118         * armor.c: Rewrote large parts.
1119
1120 Tue Dec 29 19:55:38 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1121
1122         * revoke.c (gen_revoke): Removed compression.
1123
1124         * pkclist.c (do_we_trust_pre): special check for revoked keys
1125
1126         * trustdb.c (update_trust_record): Fixed revoke flag.
1127
1128 Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1129
1130         * misc.c (disable_core_dumps): Check for EINVAL (Atari)
1131
1132         * getkey (merge_one_pk_and_selfsig): Fixed search of expiredate.
1133         (merge_keys_and_selfsig): Ditto.
1134
1135         * free-packet.c (cmp_public_keys): cmp expire only for v3 packets
1136         (cmp_secret_keys): Ditto.
1137         (cmp_public_secret_key): Ditto.
1138
1139 Wed Dec 23 17:12:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1140
1141         * armor.c (find_header): Reset not_dashed at every header
1142
1143 Wed Dec 23 13:18:14 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1144
1145         * pkclist.c (add_ownertrust): Refresh validity values.
1146
1147         * trustdb.c (enum_cert_paths_print): New arg refresh.
1148
1149         * ringedit.c: Fixed problems fix keyrings
1150         * parse-packet.c (dbg_parse_packet): New debug functions.
1151
1152         * getkey.c (getkey_disable_caches): New.
1153         * import.c (import_keys): Disable caches.
1154
1155 Thu Dec 17 18:31:15 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1156
1157         * misc.c (trap_unaligned): Only for glibc 1
1158
1159         * sign.c (write_dash_escaped): Now escapes "From " lines
1160         * g10.c: New option --escape-from-lines
1161
1162         * trustdb.c (sort_tsl_list): New
1163         (list_trust_path): Now prints sorted list.
1164         (enum_cert_paths): Likewise.
1165         (enum_cert_paths_print): New.
1166         (print_paths): New printing format.
1167         * pkclist.c (add_ownertrust): New arg quit.
1168         (edit_ownertrust): New quit selection and does not query
1169         the recipients ownertrust anymore.
1170         (add_ownertrust): Print the ceritficate path.
1171
1172
1173 Mon Dec 14 21:18:49 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1174
1175         * parse-packet.c (parse_signature): Now checks for critical bit
1176         (parse_sig_subpkt): Splitted.
1177         (parse_one_sig_subpkt): New.
1178         * sig-check.c (do_check): handle critical bit.
1179
1180 Sun Dec 13 14:10:56 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1181
1182         * pcklist.c (select_algo_from_prefs): Preferences should
1183         now work (lost the != ? )
1184
1185 Thu Dec 10 20:15:36 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1186
1187         * ringedit.c (gdbm_store): Fix for inserts
1188
1189         * g10.c (main): New option --export-all
1190         * export.c (export_pubkeys): New arg.
1191         (do_export): Now may skip old keys.
1192
1193         * status.c: Minor patches for Sun's cc
1194
1195         * keygen.c (ask_algo): Disabled v3 ElGamal choice, rearranged
1196          the numbers.  Add a warning question when a sign+encrypt key
1197          is selected.
1198
1199         * g10.c (do_not_use_RSA): Removed.
1200         * misc.c (print_pubkey_algo_note): New as replacement for the
1201         do_not_use_RSA() and chnaged all callers.
1202         (print_cipher_algo_note): New.
1203         (print_hash_algo_note): New.
1204
1205         * cipher.c (write_header): Add a call to print_cipher_algo_note.
1206         * seckey-cert.c (protect_secret_key): Ditto
1207         * sign.c (do_sign): Add a call to print_digest_algo_note.
1208
1209         * getkey.c (get_long_user_id_string): New.
1210         * mainproc.c (check_sig_and_print): Changed the format of the
1211         status output.
1212
1213         * encrypt.c (write_pubkey_enc_from_list): print used symmetric cipher.
1214
1215         * pkclist.c (do_we_trust): Changed a message.
1216
1217 Wed Dec  9 13:41:06 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1218
1219         * misc.c (trap_unaligned) [ALPHA]: Only if UAC_SIGBUS is defined.
1220
1221         * sign.c (write_dash_escaped): Add the forgotten patch by Brian Moore.
1222
1223         * compress.c (do_uncompress): Fixed the inflating bug.
1224
1225
1226 Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1227
1228         * trustdb.c (upd_uid_record): Now uses the newest self-signature
1229         (insert_trust_record): Now calls update with recheck set to true.
1230         (register_trusted_key): New.
1231         (verify_own_keys): Enhanced by list of trusted keys.
1232
1233         * g10.c (main): Print a warning when a devel version is used.
1234         (main): New option --trusted-key
1235
1236         * import.c (merge_blocks): Fixed merging of new user ids and
1237         added merging of subkeys.
1238         (append_uid): Ditto.
1239         (merge_keysig): New.
1240         (append_key): New.
1241         * getkey.c (merge_one_pk_and_selfsig): Get the expiration time
1242         from the newest self-signature.
1243         (merge_keys_and_selfsig): Ditto.
1244
1245         * free-packet.c (cmp_secret_key): New.
1246
1247
1248 Fri Nov 27 21:37:41 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1249
1250         * g10.c: New option --lock-once
1251         * tdbio.c (open_db): Add an atexit
1252         (cleanup): New.
1253         (tdbio_sync): Add locking.
1254         (tdbio_end_transaction): Ditto.
1255         (put_record_into_cache): Ditto.
1256         * ringedit.c (keyring_copy): Ditto.
1257         (cleanup): New.
1258         (add_keyblock_resource): Add an atexit.
1259
1260 Fri Nov 27 15:30:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1261
1262          * armor.c (find_header): Another fix for clearsigs.
1263
1264 Fri Nov 27 12:39:29 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1265
1266
1267         * status.c (display_help): Removed.
1268         * helptext.c: New and removed the N_() from all cpr_gets.
1269
1270
1271 Fri Nov 20 16:54:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1272
1273         * g10.c (main): New option --not-dash-escaped
1274         * sign.c (write_dashed_escaped): Ditto.
1275         * armor.c (find_header): Support for NotDashEscaped header.
1276
1277         * getkey.c: print "disabled cache.." only if verbose is used.
1278
1279 Thu Nov 19 07:17:31 1998  Werner Koch  <werner.koch@guug.de>
1280
1281         * parse-packet.c (dump_sig_subpkt): Fixed expire listing
1282         * getkey.c (merge_keys_and_selfsig): Fixed expire calculation.
1283         (merge_one_pk_and_selfsig): Ditto.
1284         * keyedit.c (menu_expire). Ditto.
1285         * keygen.c (keygen_add_key_expire): Ditto.
1286         (ask_expire_interval): New and changed all local function to use
1287         this instead.
1288         (keygen_add_key_expire): Opaque should now be a public key;
1289         changed all callers.
1290
1291         * parse.packet.c (parse): use skip_rest to skip packets.
1292
1293         * keyedit.c (keyedit_menu): New arg for cmdline cmds.
1294
1295 Wed Nov 18 20:33:50 1998  Werner Koch  (wk@isil.d.shuttle.de)
1296
1297         * trustdb.c (check_trustdb): Now rechecks all gived userids.
1298         (collect_paths): Some fixes.
1299         (upd_pref_records): Skips empty items, evaluate all items.
1300
1301         * parse-packet.c (dump_sig_subpkt): Better listing of prefs.
1302         (skip_packet): Now knows about marker packet
1303
1304         * g10.c: removed cmd "--edit-sig".
1305
1306         * pubring.asc: Updated.
1307
1308 Sat Nov 14 14:01:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
1309
1310         * g10.c (main): Changed syntax of --list-trust-path
1311         * trustdb.c (list_trust_path): Replaced max_depth by
1312         opt.max_cert_depth
1313
1314 Fri Nov 13 07:39:58 1998  Werner Koch  <werner.koch@guug.de>
1315
1316         * trustdb.c (collect_paths): Removed a warning message.
1317         (enum_trust_web): Removed.
1318         (enum_cert_paths): New.
1319         * pkclist.c (add_ownertrust): Changed to use enum_cert_paths.
1320         (edit_ownertrust): Now list ceritficates on request.
1321         (show_paths): New.
1322
1323 Wed Nov 11 18:05:44 1998  Werner Koch  <werner.koch@guug.de>
1324
1325         * g10.c (main): New option --max-cert-depth
1326         * tdbio.h: add new fields to ver and dir record.
1327         * tdbio.c: read/write/dump of these fields.
1328         (tdbio_db_matches_options): New.
1329         * trustdb.c: replaced MAC_CERT_DEPTH by opt.max_cert_depth.
1330         (do_check): cache validity and changed other functions
1331         to reset the cached value.
1332
1333         * keylist.c (list_one): Now lists the ownertrust.
1334         * mainproc.c (list_node): Ditto.
1335
1336 Tue Nov 10 10:08:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
1337
1338         * g10.c (g10_exit): Now looks at the new g10_errors_seen.
1339         * mainproc.c (check_sig_and_print): Sets g10_errors_seen.
1340
1341         * *.c : i18n many more strings.
1342
1343         * ringedit.c (locate_keyblock_by_keyid): Add HAVE_LIBGDBM
1344         (locate_keyblock_by_fpr): Ditto.
1345
1346         * g10.c (main): removed unsused "int errors".
1347         (main): Add new option --charset.
1348
1349         * g10.c (main): special message for the unix newbie.
1350
1351 Mon Nov  9 07:17:42 1998  Werner Koch  <werner.koch@guug.de>
1352
1353         * getkey.c (finish_lookup): Kludge to prefere algo 16.
1354
1355         * trustdb.c (new_lid_table): Clear cached item.
1356
1357         * status.c (cpr_get_utf8): New.
1358         * pkclist.c (build_pk_list): Uses this.
1359
1360 Sun Nov  8 17:20:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
1361
1362         * mainproc.c (check_sig_and_print): Why did I use strlen()-1
1363         in the printf? - This truncated the TZ.
1364
1365 Sat Nov  7 15:57:28 1998  me,,,  (wk@tobold)
1366
1367         * getkey.c (lookup): Changes to support a read_next.
1368         (get_pubkey): Fixed a memory leak.
1369
1370         * keylist.c (list_one): Now lists all matching user IDs.
1371
1372 Tue Nov  3 16:19:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
1373
1374         * keygen.c (ask_user_id): Now converted to UTF-8
1375
1376         * g10.c (main): Kludge for pgp clearsigs and textmode.
1377
1378 Fri Oct 30 16:40:39 1998  me,,,  (wk@tobold)
1379
1380         * signal.c (block_all_signals): New.
1381         (unblock_all_signals): New
1382         * tdbio.c (tdbio_end_transaction): Now blocks all signals.
1383
1384         * trustdb.c (new_lid_table): Changed the representation of the
1385         former local_lid_info stuff.
1386
1387         * trustdb.c (update_trust_record): Reorganized the whole thing.
1388         * sig-check.c (check_key_signature): Now handles class 0x28
1389
1390
1391 Wed Oct 28 18:56:33 1998  me,,,  (wk@tobold)
1392
1393         * export.c (do_export): Takes care of the exportable sig flag.
1394
1395 Tue Oct 27 14:53:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
1396
1397         * trustdb.c (update_trust_record): New "fast" parameter.
1398
1399 Sun Oct 25 19:32:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
1400
1401         * openfile.c (copy_options_File): New.
1402         * ringedit.c (add_keyblock_resource): Creates options file
1403         * tdbio.c (tdbio_set_dbname): Ditto.
1404
1405 Sat Oct 24 14:10:53 1998  brian moore <bem@cmc.net>
1406
1407         * mainproc.c (proc_pubkey_enc): Don't release the DEK
1408         (do_proc_packets): Ditto.
1409
1410 Fri Oct 23 06:49:38 1998  me,,,  (wk@tobold)
1411
1412         * keyedit.c (keyedit_menu): Comments are now allowed
1413
1414         * trustdb.c: Rewrote large parts.
1415
1416
1417 Thu Oct 22 15:56:45 1998  Michael Roth  (mroth@nessie.de)
1418
1419         * encode.c: (encode_simple): Only the plain filename without
1420         a given directory is stored in generated packets.
1421         (encode_crypt): Ditto.
1422
1423         * sign.c: (sign_file) Ditto.
1424
1425
1426 Thu Oct 22 10:53:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
1427
1428         * trustdb.c (update_trust_record): Add new optional arg.
1429
1430         * import.c (import_keys): Add statistics output
1431         * trustdb.c (update_trustdb): Ditto.
1432         (insert_trustdb): Ditto.
1433
1434         * tdbio.c (tdbio_begin_transaction): New.
1435         (tdbio_end_transaction): New.
1436         (tdbio_cancel_transaction): New.
1437
1438         * g10.c (main): New option --quit.
1439
1440         * trustdb.c (check_hint_sig): No tests for user-id w/o sig.
1441         This caused an assert while checking the sigs.
1442
1443         * trustdb.c (upd_sig_record): Splitted into several functions.
1444
1445         * import.c (import_keys): New arg "fast".
1446         * g10.c (main): New command --fast-import.
1447
1448 Wed Oct 21 18:19:36 1998  Michael Roth <mroth@nessie.de>
1449
1450         * ringedit.c (add_keyblock_resource): Directory is now created.
1451         * tdbio.c (tdbio_set_dbname): New info message.
1452
1453 Wed Oct 21 11:52:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
1454
1455         * trustdb.c (update_trustdb): released keyblock in loop.
1456
1457         * keylist.c (list_block): New.
1458         (list_all): Changed to use list_block.
1459
1460         * trustdb.c: Completed support for GDBM
1461
1462         * sign.c (only_old_style): Changed the way force_v3 is handled
1463         (sign_file): Ditto.
1464         (clearsign_file): Ditto.
1465
1466         * keygen.c (has_invalid_email_chars): Splitted into mailbox and
1467         host part.
1468
1469         * keylist.c (list_one): Add a merge_keys_and_selfsig.
1470         * mainproc.c (proc_tree): Ditto.
1471
1472 Sun Oct 18 11:49:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1473
1474         * sign.c (only_old_style): Add option force_v3_sigs
1475         (sign_file): Fixed a bug in sig->version
1476         (clearsign_file): Ditto.
1477
1478         * parse-packet.c (dump_sig_subpkt): New
1479
1480         * keyedit.c (menu_expire): New.
1481         * free-packet.c (cmp_signatures): New
1482
1483
1484 Sat Oct 17 10:22:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
1485
1486         * armor.c: changed output line length from 72 to 64.
1487
1488         * keyedit.c (fix_keyblock): New.
1489
1490 Fri Oct 16 10:24:47 1998  Werner Koch  (wk@isil.d.shuttle.de)
1491
1492         * trustdb.c: Rewrote most.
1493         * tdbio.c: Add cache and generalized hash tables.
1494
1495         * options.h (ENABLE_COMMENT_PACKETS): New but undef'ed.
1496         * encode.c, sign.c, keygen.c: Disabled comment packets.
1497         * export.c (do_export): Comment packets are never exported,
1498         except for those in the secret keyring.
1499
1500         * g10.c (main): Removed option do-no-export-rsa; should be
1501         be replaced by a secpial tool.
1502         * export.c (do_export): Removed the code for the above option.
1503
1504         * armor.c (find_header): Support for new only_keyblocks.
1505         * import.c (import_keys): Only looks for keyblock armors.
1506
1507         * packet.h: replaced valid_days by expiredate and changed all users.
1508         * build-packet.c (do_public_key): calculates valid-days
1509         (do_secret_key): Ditto.
1510         * parse-packet.c (parse_key): expiredate is calucated from the
1511         valid_period in v3 packets.
1512         * keyid.c (do_fingerprint_md): calculates valid_dates.
1513
1514         * keygen.c (add_key_expire): fixed key expiration time for v4 packets.
1515
1516         * armor.c (find_header): A LF in the first 28 bytes
1517         was skipped for non-armored data.
1518
1519 Thu Oct  8 11:35:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
1520
1521         * armor.c (is_armored): Add test on old comment packets.
1522
1523         * tdbio.c (tdbio_search_dir_bypk): fixed memory leak.
1524
1525         * getkey.c: Changed the caching algorithms.
1526
1527 Wed Oct  7 19:33:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
1528
1529         * kbnodes.c (unused_nodes): New.
1530
1531 Wed Oct  7 11:15:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
1532
1533         * keyedit.c (sign_uids): Fixed a problem with SK which could caused
1534         a save of an unprotected key.
1535         (menu_adduid): Ditto.
1536
1537         * keyedit.c (keyedit_menu): Prefs are now correctly listed for
1538         new user ids.
1539
1540         * trustdb.c (update_trust_record): New.
1541         (insert_trust_record): Now makes use of update_trust_record.
1542
1543 Tue Oct  6 16:18:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1544
1545         * trustdb.c (read_record): replaces most of the tdbio_read_records.
1546         (write_record): Ditto.
1547
1548 Sat Oct  3 11:01:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
1549
1550         * keygen.c (ask_alogo): enable ElGamal enc-only only for addmode.
1551
1552 Wed Sep 30 10:15:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
1553
1554         * import.c (import_one): Fixed update of wrong keyblock.
1555
1556 Tue Sep 29 08:32:08 1998  me,,,  (wk@tobold)
1557
1558         * mainproc.c (proc_plaintext): Display note for special filename.
1559         * plaintext.c (handle_plaintext): Suppress output of special file.
1560
1561 Mon Sep 28 12:57:12 1998  Werner Koch  (wk@isil.d.shuttle.de)
1562
1563         * g10.c (verify_own_keys): Add warning if a key is not protected.
1564
1565         * passphrase (hash_passphrase): Fixed iterated+salted mode and
1566         setup for keysizes > hashsize.
1567
1568         * g10.c (main): New options: --s2k-{cipher,digest,mode}.
1569
1570 Fri Sep 25 09:34:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
1571
1572         * g10.c: Chnaged some help texts.
1573
1574 Tue Sep 22 19:34:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
1575
1576         * passphrase.c (read_passphrase_from_fd): fixed bug for long
1577         passphrases.
1578
1579 Mon Sep 21 11:28:05 1998  Werner Koch  (wk@(none))
1580
1581         * getkey.c (lookup): Add code to use the sub key if the primary one
1582         does not match the usage.
1583
1584         * armor.c (armor_filter): New error message: no valid data found.
1585         (radix64_read): Changes to support multiple messages.
1586         (i18n.h): New.
1587         * mainproc.c (add_onepass_sig): bug fix.
1588
1589 Mon Sep 21 08:03:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
1590
1591         * pkclist.c (do_we_trust): Add keyid to most messages.
1592
1593         * passphrase.c (read_passphrase_from_fd): New.
1594         (have_static_passphrase): New
1595         (get_passphrase_fd): Removed.
1596         (set_passphrase_fd): Removed.
1597         * g10.c (main): passphrase is now read here.
1598
1599         * keyedit.c (keyedit_menu): "help" texts should now translate fine.
1600
1601 Mon Sep 21 06:40:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
1602
1603         * encode.c (encode_simple): Now disables compression
1604         when --rfc1991 is used.
1605         (encode_crypt): Ditto.
1606
1607 Fri Sep 18 16:50:32 1998  Werner Koch  (wk@isil.d.shuttle.de)
1608
1609         * getkey.c (merge_key_and_selfsig): New.
1610
1611 Fri Sep 18 10:20:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
1612
1613         * pkclist.c (select_algo_from_prefs): Removed 3DES kludge.
1614
1615         * seskey.c (make_session_key): Fixed SERIOUS bug introduced
1616         by adding the weak key detection code.
1617
1618         * sign.c (sign_file): Changed aremor header in certain cases.
1619
1620 Tue Sep 15 17:52:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
1621
1622         * mainproc.c (check_sig_and_print): Replaced ascime by asctimestamp.
1623
1624 Mon Sep 14 11:40:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1625
1626         * seskey.c (make_session_key): Now detects weak keys.
1627
1628         * trustdb (clear_trust_checked_flag): New.
1629
1630         * plaintext.c (handle_plaintext): Does no anymore suppress CR from
1631         cleartext signed messages.
1632
1633 Sun Sep 13 12:54:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
1634
1635         * trustdb.c (insert_trust_record): Fixed a stupid bug in the free
1636         liunked list loops.
1637
1638 Sat Sep 12 15:49:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
1639
1640         * status.c (remove_shmid): New.
1641         (init_shm_comprocess): Now sets permission to the real uid.
1642
1643 Wed Sep  9 11:15:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1644
1645         * packet.h (PKT_pubkey_enc): New flah throw_keyid, and add logic to
1646         implement it.
1647         * g10.c (main): New Option --throw-keyid
1648
1649         * getkey.c (enum_secret_keys): Add new ar and changed all callers.
1650
1651 Tue Sep  8 20:04:09 1998  Werner Koch  (wk@isil.d.shuttle.de)
1652
1653         * delkey.c (delete_key): Moved from keyedit.c.
1654
1655 Mon Sep  7 16:37:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1656
1657         * build-packet.c (calc_length_header): New arg new_ctb to correctly
1658         calculate the length of new style packets.
1659
1660         * armor.c (is_armored): Checks for symkey_enc packets.
1661
1662         * pkclist.c (select_algo_from_prefs): 3DEs substitute is now CAST5.
1663
1664 Tue Aug 11 17:54:50 1998  Werner Koch  (wk@isil.d.shuttle.de)
1665
1666         * build-packet.c (do_secret_key): Fixed handling of old keys.
1667
1668         * getkey.c (compare_name): Fixed exact and email matching
1669
1670         * openfile.c (open_outfile): Changed arguments and all callers.
1671
1672 Tue Aug 11 09:14:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
1673
1674         * encode.c (encode_simple): Applied option set-filename and comment.
1675         (encode_crypt): Ditto.
1676         * sign.c (sign_file): Ditto.
1677         * armor.c (armor_filter): Applied option comment.
1678
1679         * encode.c (encode_crypt): Moved init_packet to the begin.
1680         (encode_simple): add an init_packet().
1681
1682         * comment (write_comment): Now enforces a hash sign as the 1st byte.
1683
1684         * import.c (import_one): Add explanation for "no user ids".
1685
1686         * compress.c (do_uncompress): Applied Brian Warner's patch to support
1687         zlib 1.1.3 etc.
1688
1689         * trustdb.c (check_trust): Fixed a problem after inserting new keys.
1690
1691         * getkey (lookup): do not return the primary key if usage is given
1692         (lookup_sk): Ditto and take usage into account.
1693
1694         * status.c (cpr_get_answer_is_yes): add display_help.
1695
1696 Mon Aug 10 10:11:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
1697
1698         * getkey.c (lookup_sk): Now always returns the primary if arg
1699         primary is true.
1700         (lookup): Likewise.
1701         (get_pubkey_byname): Now returns the primary key
1702         (get_seckey_byname): Ditto.
1703
1704
1705 Mon Aug 10 08:34:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1706
1707         * keyid.c (pubkey_letter): ELG_E is now a small g.
1708
1709 Sat Aug  8 17:26:12 1998  Werner Koch  (wk@isil.d.shuttle.de)
1710
1711         * openfile (overwrite_filep): Changed semantics and all callers.
1712
1713 Sat Aug  8 12:17:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
1714
1715         * status.c (display_help): New.
1716
1717 Thu Aug  6 16:30:41 1998  Werner Koch,mobil,,,  (wk@tobold)
1718
1719         * seskey.c (encode_session_key): Now uses get_random_bits().
1720
1721 Thu Aug  6 07:34:56 1998  Werner Koch,mobil,,,  (wk@tobold)
1722
1723         * ringedit.c (keyring_copy): No more backupfiles for
1724         secret keyrings and add additional warning in case of
1725         a failed secret keyring operation.
1726
1727 Wed Aug  5 11:54:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
1728
1729         * g10.c (check_opts): Moved to main.  Changed def_cipher_algo
1730         semantics and chnaged all users.
1731
1732         * pubkey-enc.c (get_sssion_key): New informational output
1733         about preferences.
1734
1735         * parse-packet.c (parse_symkeyenc): Fixed salted+iterated S2K
1736         (parse_key): Ditto.
1737         * build-packet.c (do_secret_key): Ditto.
1738         (do_symkey_enc): Ditto.
1739
1740 Tue Aug  4 08:59:10 1998  Werner Koch  (wk@isil.d.shuttle.de)
1741
1742         * getkey.c (enum_secret_keys): Now returns only primary keys.
1743
1744         * getkey (lookup): Now sets the new namehash field.
1745
1746         * parse-packet.c (parse_sig_subpkt2): New.
1747
1748         * sign.c (sign_file): one-pass sigs are now emiited reverse.
1749         Preference data is considered when selecting the compress algo.
1750
1751 Wed Jul 29 12:53:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1752
1753         * free-packet.c (copy_signature): New.
1754
1755         * keygen.c (generate_subkeypair): rewritten
1756         * g10.c (aKeyadd): Removed option --add-key
1757
1758 Mon Jul 27 10:37:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
1759
1760         * seckey-cert.c (do_check): Additional check on cipher blocksize.
1761         (protect_secret_key): Ditto.
1762         * encr-data.c: Support for other blocksizes.
1763         * cipher.c (write_header): Ditto.
1764
1765 Fri Jul 24 16:47:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
1766
1767         * kbnode.c (insert_kbnode): Changed semantics and all callers.
1768         * keyedit.c : More or less a complete rewrite
1769
1770 Wed Jul 22 17:10:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
1771
1772         * build-packet.c (write_sign_packet_header): New.
1773
1774 Tue Jul 21 14:37:09 1998  Werner Koch  (wk@isil.d.shuttle.de)
1775
1776         * import.c (import_one): Now creates a trustdb record.
1777
1778         * g10.c (main): New command --check-trustdb
1779
1780 Mon Jul 20 11:15:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
1781
1782         * genkey.c (generate_keypair): Default key is now DSA with
1783         encryption only ElGamal subkey.
1784
1785 Thu Jul 16 10:58:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
1786
1787         * keyid.c (keyid_from_fingerprint): New.
1788         * getkey.c (get_pubkey_byfprint): New.
1789
1790 Tue Jul 14 18:09:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
1791
1792         * keyid.c (fingerprint_from_pk): Add argument and changed all callers.
1793         (fingerprint_from_sk): Ditto.
1794
1795 Tue Jul 14 10:10:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1796
1797         * plaintext.c (handle_plaintext): Now returns create error if
1798         the file could not be created or the user responded not to overwrite
1799         the file.
1800         * mainproc.c (proc_plaintext): Tries again if the file could not
1801         be created to check the signature without output.
1802
1803         * misc.c (disable_core_dumps): New.
1804         * g10.c (main): disable coredumps for gpg
1805
1806         * g10.c (MAINTAINER_OPTIONS): New to disable some options
1807
1808 Mon Jul 13 16:47:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
1809
1810         * plaintext.c (hash_datafiles): New arg for better support of
1811         detached sigs. Changed all callers.
1812         * mainproc.c (proc_signature_packets): Ditto.
1813
1814         * g10.c (main): New option "compress-sigs"
1815         * sig.c (sign_file): detached signatures are not anymore compressed
1816         unless the option --compress-sigs is used.
1817
1818 Thu Jul  9 19:54:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
1819
1820         * armor.c: Fixes to allow zero length cleartext signatures
1821
1822 Thu Jul  9 14:52:47 1998  Werner Koch  (wk@isil.d.shuttle.de)
1823
1824         * g10.c (build_list): Now drops setuid.
1825         (main): Changed the way keyrings  and algorithms are registered .
1826
1827 Wed Jul  8 14:17:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
1828
1829         * packet.h (PKT_public_key): Add field keyid.
1830         * parse-packet.c (parse_key): Reset the above field.
1831         * keyid.c (keyid_from_pk): Use above field as cache.
1832
1833         * tdbio.c, tdbio.h: New
1834         * trustdb.c: Moved some functions to tdbio.c.
1835         (print_keyid): New.
1836
1837         * pkclist.c (check_signatures_trust): New.
1838
1839 Wed Jul  8 10:45:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
1840
1841         * plaintext.c (special_md_putc): New.
1842         (handle_plaintext): add clearsig argument
1843         * mainproc.c (proc_plaintext): detection of clearsig
1844         * sign.c (write_dased_escaped): Changed clearsig format
1845
1846 Tue Jul  7 18:56:19 1998  Werner Koch  (wk@isil.d.shuttle.de)
1847
1848         * armor.c (find_header): Now makes sure that there is only one
1849         empty line for clearsigs, as this is what OP now says.
1850
1851 Mon Jul  6 13:09:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
1852
1853         * g10.c (main): New option default-secret-key
1854         * getkey.c (get_seckey_byname): support for this option.
1855
1856 Mon Jul  6 09:03:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
1857
1858         * getkey.c (add_keyring): Keyrings are now added to end of the
1859         list of keyrings.  The first added keyringwill be created.
1860         (add_secret_keyring): Likewise.
1861
1862         * ringedit.c (add_keyblock_resource): Files are created here.
1863
1864         * g10.c (aNOP): Removed
1865
1866         * getkey.c (lookup): Add checking of usage for name lookups
1867         * packet.h (pubkey_usage): Add a field which may be used to store
1868         usage capabilities.
1869         * pkclist.c (build_pk_list): getkey now called with usage arg.
1870         * skclist.c (build_sk_list): Ditto.
1871
1872         * sign.c (clearsign_file): Fixed "Hash:" headers
1873
1874 Sat Jul  4 13:33:31 1998  Werner Koch  (wk@isil.d.shuttle.de)
1875
1876         * trustdb.c (list_ownertrust): New.
1877         * g10.c (aListOwnerTrust): New.
1878
1879         * g10.c (def_pubkey_algo): Removed.
1880
1881         * trustdb.c (verify_private_data): Removed and also the call to it.
1882         (sign_private_data): Removed.
1883
1884 Fri Jul  3 13:26:10 1998  Werner Koch  (wk@isil.d.shuttle.de)
1885
1886         * g10.c (aEditKey): was aEditSig. Changed usage msg.
1887
1888         * keyedit.c: Done some i18n stuff.
1889
1890         * g10.c (do_not_use_RSA): New.
1891         * sign.c (do_sign): Add call to above function.
1892         * encode.c (write_pubkey_enc_from_list): Ditto.
1893
1894 Thu Jul  2 21:01:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
1895
1896         * parse-packet.c: Now is able sto store data of unknown
1897         algorithms.
1898         * free-packet.c: Support for this.
1899         * build-packet.c: Can write data of packet with unknown algos.
1900
1901 Thu Jul  2 11:46:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
1902
1903         * parse-packet.c (parse): fixed 4 byte length header
1904
1905 Wed Jul  1 12:36:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
1906
1907         * packet.h (new_ctb): New field for some packets
1908         * build-packet.c (build_packet): Support for new_ctb
1909         * parse-packet.c (parse): Ditto.
1910
1911 Mon Jun 29 12:54:45 1998  Werner Koch  (wk@isil.d.shuttle.de)
1912
1913         * packet.h: changed all "_cert" to "_key", "subcert" to "subkey".
1914
1915         * free-packet.c (free_packet): Removed memory leak for subkeys.
1916
1917 Sun Jun 28 18:32:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
1918
1919         * import.c (import_keys): Renamed from import_pubkeys.
1920         (import_secret_one): New.
1921
1922         * g10.c (aExportSecret): New.
1923
1924         * export.c (export_seckeys): New.
1925
1926         * parse-packet.c (parse_certificate): Cleaned up.
1927         (parse_packet): Trust packets are now considered as unknown.
1928         (parse_pubkey_warning): New.
1929
1930 Fri Jun 26 10:37:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
1931
1932         * keygen.c (has_invalid_email_chars): New.
1933
1934 Wed Jun 24 16:40:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
1935
1936         * armor.c (armor_filter): Now creates valid onepass_sig packets
1937         with all detected hash algorithms.
1938         * mainproc.c (proc_plaintext): Now uses the hash algos as specified
1939         in the onepass_sig packets (if there are any)
1940
1941 Mon Jun 22 11:54:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
1942
1943         * plaintext.c (handle_plaintext): add arg to disable outout
1944         * mainproc.c (proc_plaintext): disable output when in sigs_only mode.
1945
1946 Thu Jun 18 13:17:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
1947
1948         * keygen.c: Removed all rsa packet stuff, chnaged defaults
1949         for key generation.
1950
1951 Sun Jun 14 21:28:31 1998  Werner Koch  (wk@isil.d.shuttle.de)
1952
1953         * misc.c (checksum_u16): Fixed a stupid bug which caused a
1954         wrong checksum calculation for the secret key protection and
1955         add a backward compatibility option.
1956         * g10.c (main): Add option --emulate-checksum-bug.
1957
1958 Thu Jun 11 13:26:44 1998  Werner Koch  (wk@isil.d.shuttle.de)
1959
1960         * packet.h: Major changes to the structure of public key material
1961         which is now stored in an array and not anaymore in a union of
1962         algorithm specific structures.  These is needed to make the system
1963         more extendable and makes a lot of stuff much simpler. Changed
1964         all over the system.
1965
1966         * dsa.c, rsa.c, elg.c: Removed.
1967
1968 Wed Jun 10 07:22:02 1998  Werner Koch,mobil,,,  (wk@tobold)
1969
1970         * g10.c ("load-extension"): New option.
1971
1972 Mon Jun  8 22:23:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
1973
1974         * seckey-cert.c (do_check): Removed cipher constants
1975         (protect_secret_key): Ditto.
1976
1977 Fri May 29 10:00:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
1978
1979         * trustdb.c (query_trust_info): New.
1980         * keylist.c (list_one): Add output of trust info
1981         * mainproc (list_node): ditto.
1982         * g10.c (main): full trustdb init if -with-colons and any of the
1983         key list modes.
1984
1985 Thu May 28 10:34:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
1986
1987         * status.c (STATUS_RSA_OR_IDEA): New.
1988         * sig-check.c (check_signature): Output special status message.
1989         * pubkey-enc.c (get_session_key): Ditto.
1990
1991         * mainproc.c (check_sig_and_print): Changed format of output.
1992         * passpharse.c (passphrase_to_dek): Likewise.
1993
1994 Wed May 27 13:46:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
1995
1996         * g10.c (aListSecretKeys): New option --list-secret-keys
1997         * keylist.c (std_key_list): Renamed to public_key_list.
1998         (secret_key_list): New
1999         (list_one, list_all): Add support for secret keys.
2000         * getkey.c (get_secret_keyring): New.
2001         * mainproc.c (list_node): Add option --with-colons for secret keys
2002
2003         * sig-check.c (check_key_signature): detection of selfsigs
2004         * mainproc.c (list_node): fixed listing.
2005
2006         * g10.c (aListSecretKeys): New option --always-trust
2007         * pkclist.c (do_we_trust): Override per option added
2008
2009         * status.c (write_status_text): Add a prefix to every output line.
2010
2011 Wed May 27 07:49:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
2012
2013         * g10 (--compress-keys): New.
2014         * options.h (compress_keys): New.
2015         * export.c (export_pubkeys): Only compresses with the new option.
2016
2017 Tue May 26 11:24:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2018
2019         * passphrase.c (get_last_passphrase): New
2020         (set_next_passphrase): New.
2021         (passphrase_to_dek): add support for the above functions.
2022         * keyedit.c (make_keysig_packet): Add sigclass 0x18,
2023         changed all callers due to a new argument.
2024         * keygen.c (write_keybinding): New
2025         (generate_subkeypair): Add functionality
2026         (ask_algo, ask_keysize, ask_valid_days): Broke out of generate_keypair
2027         (ask_user_id, ask_passphrase): Ditto.
2028
2029 Thu May 21 11:26:13 1998  Werner Koch  (wk@isil.d.shuttle.de)
2030
2031         * g10.c,gpgd.c (main): Does now return an int, so that egcs does
2032         not complain.
2033
2034         * armor.c (fake_packet): Removed erro message and add a noticed
2035         that this part should be fixed.
2036
2037         * sign.c (sign_file): Compression now comes in front of encryption.
2038         * encode.c (encode_simple): Ditto.
2039         (encode_crypt): Ditto.
2040
2041 Tue May 19 16:18:19 1998  Werner Koch  (wk@isil.d.shuttle.de)
2042
2043         * armor.c (fake_packet): Changed assertion to log_error
2044
2045 Sat May 16 16:02:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
2046
2047         * build-packet.c (build_packet): Add SUBKEY packets.
2048
2049 Fri May 15 17:57:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
2050
2051         * sign.c (hash_for): New and used in all places here.
2052         * main.h (DEFAULT_): new macros.
2053         * g10.c  (opt.def_digest_algo): Now set to 0
2054
2055         * compress.c (init_compress): Add support for algo 1
2056         * options.h (def_compress_algo): New
2057         * g10.c (main): New option --compress-algo
2058
2059 Fri May 15 13:23:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2060
2061         * g10.c (print_mds): New feature to print only one hash,
2062         chnaged formatting.
2063
2064 Thu May 14 15:36:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
2065
2066         * misc.c (trap_unaligned) [__alpha__]: New
2067         * g10.c (trap_unaligned): Add call to this to track down SIGBUS
2068         on Alphas (to avoid the slow emulation code).
2069
2070 Wed May 13 11:48:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
2071
2072         * build-packet.c (do_signature): Support for v4 pakets.
2073         * keyedit.c (make_keysig_packet): Ditto.
2074         * build-packet.c (build_sig_subpkt_from_sig): New.
2075         (build_sig_subpkt): New.
2076
2077         * elg.c (g10_elg_sign): removed keyid_from_skc.
2078         * dsa.c (g10_dsa_sign): Ditto.
2079         * rsa.c (g10_rsa_sign): Ditto.
2080         * keyedit.c (make_keysig_packet): Add call to keyid_from_skc
2081
2082         * sign.c (clearsign_file): Support for v4 signatures.
2083         (sign_file): Ditto.
2084
2085 Wed May  6 09:31:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
2086
2087         * parse-packet.c (do_parse): add support for 5 byte length leader.
2088         (parse_subpkt): Ditto.
2089         * build-packet.c (write_new_header): Ditto.
2090
2091         * packet.h (SIGSUBPKT_): New constants.
2092         * parse-packet.c (parse_sig_subpkt): Changed name, made global,
2093         and arg to return packet length, chnaged all callers
2094
2095
2096 Tue May  5 22:11:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2097
2098         * keygen.c (gen_dsa): New.
2099         * build_packet.c (do_secret_cert): Support for DSA
2100
2101 Mon May  4 19:01:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
2102
2103         * compress.c: doubled buffer sizes
2104         * parse-packet.c (do_plaintext): now uses iobuf_read/write.
2105
2106 Mon May  4 09:35:53 1998  Werner Koch  (wk@isil.d.shuttle.de)
2107
2108         * seskey.c (encode_md_value): Add optional argument hash_algo,
2109         changed all callers.
2110
2111         * passphrase.c (make_dek_from_passphrase): Removed
2112         * (get_passhrase_hash): Changed name to passphrase_to_dek, add arg,
2113         changed all callers.
2114
2115         * all: Introduced the new ELG identifier and added support for the
2116         encryption only one (which is okay to use by GNUPG for signatures).
2117
2118 Sun May  3 17:50:26 1998  Werner Koch  (wk@isil.d.shuttle.de)
2119
2120         * packet.h (PKT_OLD_COMMENT): New name for type 16.
2121         * parse-packet.c (parse_comment): Now uses type 61
2122
2123 Fri May  1 12:44:39 1998  Werner Koch,mobil,,,  (wk@tobold)
2124
2125         * packet.h (count): Chnaged s2k count from byte to u32.
2126         * seckey-cert.c (do_check): Changed s2k algo 3 to 4, changed
2127         reading of count.
2128         * build-packet.c (do_secret_cert): ditto.
2129         * parse-packet.c (parse_certificate): ditto.
2130
2131         * parse-packet.c (parse_symkeyenc): New.
2132         * build-packet.c (do_symkey_enc): New.
2133
2134 Thu Apr 30 16:33:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
2135
2136         * sign.c (clearsign_file): Fixed "Hash: " armor line.
2137
2138 Tue Apr 28 14:27:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
2139
2140         * parse-packet.c (parse_subpkt): Some new types.
2141
2142 Mon Apr 27 12:53:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2143
2144         * g10.c (main): Add option --skip-verify.
2145         * mainproc.c (check_sig_and_print): Ditto.
2146
2147         * g10.c (print_mds): Add output for Tiger.
2148
2149         * sign.c (sign_file): Now uses partial length headers if used
2150         in canonical textmode (kludge to fix a bug).
2151
2152         * parse-packet.c (parse_certificate): Changed BLOWFISH id.
2153         * pubkey-enc.c (get_session_key): Ditto.
2154         * seskey.c (make_session_key): Ditto.
2155         * seckey-cert.c (protect_secret_key,do_check): Add BLOWFISH160.
2156
2157 Fri Apr 24 17:38:48 1998  Werner Koch,mobil,,,  (wk@tobold)
2158
2159         * sig-check.c (check_key_signature): Add sig-class 0x14..0x17
2160         * keyedit.c (sign-key): Some changes to start with support of
2161         the above new sig-classes.
2162
2163 Wed Apr 22 09:01:57 1998  Werner Koch,mobil,,,  (wk@tobold)
2164
2165         * getkey.c (compare_name): add email matching
2166
2167 Tue Apr 21 16:17:12 1998  Werner Koch,mobil,,,  (wk@tobold)
2168
2169         * armor.c (armor_filter): fixed missing last LF before CSUM.
2170
2171 Thu Apr  9 11:35:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
2172
2173         * seckey-cert.c (do_check): New; combines all the check functions
2174         into one.
2175
2176         * sign.c: removed all key management functions
2177         * keyedit.c: New.
2178
2179 Thu Apr  9 09:49:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
2180
2181         * import.c (chk_self_sigs): Changed an error message.
2182
2183 Wed Apr  8 16:19:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
2184
2185         * packet.h: packet structs now uses structs from the pubkey,
2186         removed all copy operations from packet to pubkey structs.
2187
2188 Wed Apr  8 13:40:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2189
2190         * trustdb.c (verify_own_certs): Fixed "public key not found".
2191
2192         * getkey.c (key_byname): New, combines public and secret key search.
2193
2194         * pkclist.c (build_pkc_list): Add new arg usage, changed all callers.
2195         * skclist.c (build_skc_list): Likewise.
2196
2197         * ringedit.c (find_keyblock, keyring_search2): Removed.
2198
2199 Wed Apr  8 09:47:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
2200
2201         * sig-check.c (do_check): Applied small fix from Ulf Möller.
2202
2203 Tue Apr  7 19:28:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
2204
2205         * cipher.c, encr-data.c, seckey-cert.c: Now uses cipher_xxxx
2206         functions instead of blowfish_xxx or cast_xxx
2207
2208 Tue Apr  7 11:04:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
2209
2210         * Makefile.am (g10maint.o): Changed the way it is created.
2211
2212 Mon Apr  6 11:17:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
2213
2214         * misc.c: New.
2215         * keygen.c (checksum,checksum_u16,checksum_mpi): Moved to misc.c
2216         * seckey-cert.c: Kludge for wrong ELG checksum implementation.
2217
2218 Sat Apr  4 20:07:01 1998  Werner Koch  (wk@isil.d.shuttle.de)
2219
2220         * cipher.c (cipher_filter): Support for CAST5
2221         * encr-data.c (decode_filter): Ditto.
2222         (decrypt_data): Ditto.
2223         * seskey.c (make_session_key): Ditto.
2224         * seckey-cert.c (check_elg, check_dsa): Ditto,
2225         (protect_secret_key): Ditto.
2226         * pubkey-enc.c (get_session_key): Ditto.
2227         * passphrase.c (hash_passphrase): Ditto.
2228
2229 Thu Apr  2 20:22:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
2230
2231         * gpgd.c: New
2232
2233 Thu Apr  2 10:38:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
2234
2235         * keygen.c (generate_keypair): Add valid_days stuff.
2236         * trustdb.c (check_trust): Add check for valid_days.
2237
2238 Wed Apr  1 16:15:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
2239
2240         * keygen.c (generate_keypair): Addional question whether the
2241         selected large keysize is really needed.
2242
2243 Wed Apr  1 15:56:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2244
2245         * seckey-cert.c (protect_secret_key): merged protect_xxx to here.
2246
2247 Wed Apr  1 10:34:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
2248
2249         * Makefile.am (g10maint.c): Changed creation rule, so that it works
2250         on FreeBSD (missing CFLAGS).
2251
2252         * parse-packet.c (parse_subkey): Removed.
2253
2254 Thu Mar 19 15:22:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
2255
2256         * ringedit.c (keyring_enum): Fixed problem with reading too
2257         many packets. Add support to read secret keyrings.
2258
2259         * getkey.c (scan_keyring): Removed
2260         (lookup): New to replace scan_keyring.
2261         (scan_secret_keyring): Removed.
2262         (lookup_skc): New.
2263
2264 Wed Mar 18 11:47:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
2265
2266         * ringedit.c (enum_keyblocks): New read mode 11.
2267
2268         * keyid.c (elg_fingerprint_md): New and changed all other functions
2269         to call this if the packet version is 4 or above.
2270
2271 Tue Mar 17 20:46:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
2272
2273         * parse-packet.c (parse_certificate): Add listing support for subkeys.
2274
2275 Tue Mar 17 20:32:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
2276
2277         * armor.c (is_armored): Allow marker packet.
2278
2279 Thu Mar 12 13:36:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
2280
2281         * trustdb.c (check_trust): Checks timestamp of pubkey.
2282         * sig-check. (do_check): Compares timestamps.
2283
2284 Tue Mar 10 17:01:56 1998  Werner Koch  (wk@isil.d.shuttle.de)
2285
2286         * g10.c (main): Add call to init_signals.
2287         * signal.c: New.
2288
2289 Mon Mar  9 12:43:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
2290
2291         * dsa.c: New
2292         * packet.h, free-packet.c, parse-packet.c : Add support for DSA
2293         * sig-check.c, getkey.c, keyid.c, ringedit.c: Ditto.
2294         * seckey-cert.c: Ditto.
2295
2296         * packet.h : Moved .digest_algo of signature packets to outer
2297         structure. Changed all references
2298
2299 Sun Mar  8 13:06:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
2300
2301         * openfile.c : Support for stdout filename "-".
2302
2303         * mainproc.c (check_sig_and_print): Enhanced status output:
2304         * status.c (write_status_text): New.
2305
2306 Fri Mar  6 16:10:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
2307
2308         * kbnode.c (clone_kbnode): Fixed private_flag.
2309
2310         * mainproc.c (list_node): Output of string "Revoked" as user-id.
2311
2312 Fri Mar  6 14:26:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
2313
2314         * g10.c (main): Add userids to "-kv" and cleaned up this stuff.
2315
2316 Fri Mar  6 12:45:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
2317
2318         * g10.c (main): Changed semantics of the list-... commands
2319         and added a new one. Removed option "-d"
2320
2321         * decrypt.c: New.
2322
2323         * trustdb.c (init_trustdb): Autocreate directory only if it ends
2324         in "/.gnupg".
2325
2326 Thu Mar  5 12:12:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
2327
2328         * mainproc.c (do_proc_packets): New. Common part of proc_packet.
2329         (proc_signature_packets): special version to handle signature data.
2330         * verify.c: New.
2331         * g10.c (aVerify): New.
2332         * plaintext.c (hash_datafiles): New.
2333         * compress.c (handle_compressed): Add callback arg, changed caller.
2334
2335 Thu Mar  5 10:20:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
2336
2337         * g10.c: Is nom the common source for gpg and gpgm
2338         * g10maint.c: Removed
2339         * Makefile.am: Add rule to build g10maint.c
2340
2341 Thu Mar  5 08:43:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2342
2343         * g10.c (main): Changed the way clear text sigs are faked.
2344
2345 Wed Mar  4 19:47:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
2346
2347         * g10maint.c (aMuttKeyList): New
2348         * keylist.c: New.
2349
2350 Wed Mar  4 17:20:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2351
2352         * getkey.c (get_pubkey_byname): Kludge to allow 0x prefix.
2353
2354 Tue Mar  3 13:46:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
2355
2356         * g10maint.c (main): New option --gen-random.
2357
2358 Tue Mar  3 09:50:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
2359
2360         * g10.c (aDeleteSecretKey): New.
2361         (aEditSig): Add option "--edit-key" as synonym for "--edit-sig".
2362         (aDeleteSecretKey): New.
2363         * getkey.c (seckey_available): New.
2364         * sign.c (delete_key): Enhanced to delete secret keys, changed all
2365         callers.
2366
2367 Mon Mar  2 21:23:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
2368
2369         * pkc_list.c (build_pkc_list): Add interactive input of user ID.
2370
2371 Mon Mar  2 20:54:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
2372
2373         * pkclist.c (do_we_trust_pre): New.
2374         (add_ownertrust): Add message.
2375         * trustdb.c (enum_trust_web): Quick fix.
2376
2377 Mon Mar  2 13:50:53 1998  Werner Koch  (wk@isil.d.shuttle.de)
2378
2379         * g10.c (main): New action aDeleteKey
2380         * sign.c (delete_key): New.
2381
2382 Sun Mar  1 16:38:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
2383
2384         * trustdb.c (do_check): No returns TRUST_UNDEFINED instead of
2385         eof error.
2386
2387 Fri Feb 27 18:14:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2388
2389         * armor.c (find_header): Removed trailing CR on headers.
2390
2391 Fri Feb 27 18:02:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
2392
2393         * ringedit.c (keyring_search) [MINGW32]: Open and close file here
2394         because rename does not work on open files. Chnaged callers.
2395
2396 Fri Feb 27 16:43:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
2397
2398         * sig-check.c (do_check): Add an md_enable.
2399         * mainproc.c (do_check_sig): Use md_open in case of detached sig
2400         (proc_tree): Take detached sigs into account.
2401
2402 Fri Feb 27 15:22:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
2403
2404         * g10.c (main): Make use of GNUPGHOME envvar.
2405         * g10main.c (main): Ditto.
2406
2407 Wed Feb 25 11:40:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
2408
2409         * plaintext.c (ask_for_detached_datafile): add opt.verbose to
2410         info output.
2411
2412         * openfile.c (open_sigfile): Try also name ending in ".asc"
2413
2414 Wed Feb 25 08:41:00 1998  Werner Koch  (wk@isil.d.shuttle.de)
2415
2416         * keygen.c (generate_keypair): Fixed memory overflow.
2417
2418 Tue Feb 24 15:51:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
2419
2420         * parse-packet.c (parse_certificate): Support for S2K.
2421         * build-packet.c (do_secret_cert): Ditto.
2422         * keygen.c (gen_elg): Ditto.
2423         * seckey-cert.c (check_elg): Ditto
2424         (protect_elg): Ditto.
2425         * sign.c (chnage_passphrase): Ditto.
2426         * passphrase.c (get_passphrase_hash): Support for a salt and
2427         changed all callers.
2428         (make_dek_from_passphrase): Ditto.
2429
2430 Tue Feb 24 12:30:56 1998  Werner Koch  (wk@isil.d.shuttle.de)
2431
2432         * build-packet.c (hash_public_cert): Disabled debug output.
2433
2434 Fri Feb 20 17:22:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2435
2436         * trustdb.c (init_trustdb) [MINGW32]: Removed 2nd mkdir arg.
2437         (keyring_copy) [MINGW32]: Add a remove prior to the renames.
2438
2439 Wed Feb 18 18:39:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
2440
2441         * Makefile.am (OMIT_DEPENDENCIES): New.
2442
2443         * rsa.c: Replaced log_bug by BUG.
2444
2445 Wed Feb 18 13:35:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
2446
2447         * mainproc.c (do_check_sig): Now uses hash_public_cert.
2448         * parse-packet.c (parse_certificate): Removed hashing.
2449         * packet.h (public_cert): Removed hash variable.
2450         * free-packet.c (copy_public_cert, free_public_cert): Likewise.
2451
2452         * sig-check.c (check_key_signatures): Changed semantics.
2453
2454 Wed Feb 18 12:11:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2455
2456         * trustdb.c (do_check): Add handling for revocation certificates.
2457         (build_sigrecs): Ditto.
2458         (check_sigs): Ditto.
2459
2460 Wed Feb 18 09:31:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
2461
2462         * armor.c (armor_filter): Add afx->hdrlines.
2463         * revoke.c (gen_revoke): Add comment line.
2464         * dearmor.c (enarmor_file): Ditto.
2465
2466         * sig-check.c (check_key_signature): Add handling for class 0x20.
2467         * mainproc.c : Ditto.
2468
2469 Tue Feb 17 21:24:17 1998  Werner Koch  (wk@isil.d.shuttle.de)
2470
2471         * armor.c : Add header lines "...ARMORED FILE .."
2472         * dearmor.c (enarmor_file): New.
2473         * g10maint.c (main): New option "--enarmor"
2474
2475 Tue Feb 17 19:03:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2476
2477         * mainproc.c : Changed a lot, because the packets are now stored
2478         a simple linlked list and not anymore in a complicatd tree structure.
2479
2480 Tue Feb 17 10:14:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
2481
2482         * free_packet.c (cmp_public_certs): New.
2483         (cmp_user_ids): New.
2484
2485         * kbnode.c (clone_kbnode): New.
2486         (release_kbnode): Add clone support.
2487
2488         * ringedit.c (find_keyblock_bypkc): New.
2489
2490         * sign.c (remove_keysigs): Self signatures are now skipped,
2491         changed arguments and all callers.
2492
2493         * import.c : Add functionality.
2494
2495 Tue Feb 17 09:31:40 1998  Werner Koch  (wk@isil.d.shuttle.de)
2496
2497         * options.h (homedir): New option.
2498         * g10.c, g10maint.c, getkey.c, keygen.c, trustdb.c (opt.homedir): New.
2499
2500         * trustdb.c (init_trustdb): mkdir for hoem directory
2501         (sign_private_data): Renamed "sig" to "g10.sig"
2502
2503 Mon Feb 16 20:02:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2504
2505         * kbnode.c (commit_kbnode): New.
2506         (delete_kbnode): removed unused first arg. Changed all Callers.
2507
2508         * ringedit.c (keyblock_resource_name): New.
2509         (get_keyblock_handle): NULL for filename returns default resource.
2510
2511 Mon Feb 16 19:38:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
2512
2513         * sig-check.s (check_key_signature): Now uses the supplied
2514         public key to check the signature and not any more the one
2515         from the getkey.c
2516         (do_check): New.
2517         (check_signature): Most work moved to do_check.
2518
2519 Mon Feb 16 14:48:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
2520
2521         * armor.c (find_header): Fixed another bug.
2522
2523 Mon Feb 16 12:18:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
2524
2525         * getkey.c (scan_keyring): Add handling of compressed keyrings.
2526
2527 Mon Feb 16 10:44:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
2528
2529         * g10.c, g10maint.c (strusage): Rewrote.
2530         (build_list): New
2531
2532 Mon Feb 16 08:58:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
2533
2534         * armor.c (use_armor): New.
2535
2536 Sat Feb 14 14:30:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
2537
2538         * mainproc.c (proc_tree): Sigclass fix.
2539
2540 Sat Feb 14 14:16:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2541
2542         * armor.c (armor_filter): Changed version and comment string.
2543         * encode.c, sign.c, keygen.c: Changed all comment packet strings.
2544
2545 Sat Feb 14 12:39:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
2546
2547         * g10.c (aGenRevoke): New command.
2548         * revoke.c: New.
2549         * sign.c (make_keysig_packet): Add support for sigclass 0x20.
2550
2551 Fri Feb 13 20:18:14 1998  Werner Koch  (wk@isil.d.shuttle.de)
2552
2553         * ringedit.c (enum_keyblocks, keyring_enum): New.
2554
2555 Fri Feb 13 19:33:40 1998  Werner Koch  (wk@isil.d.shuttle.de)
2556
2557         * export.c: Add functionality.
2558
2559         * keygen.c (generate_keypair): Moved the leading comment behind the
2560         key packet.
2561         * kbnode.c (walk_kbnode): Fixed.
2562
2563         * g10.c (main): listing armored keys now work.
2564
2565 Fri Feb 13 16:17:43 1998  Werner Koch  (wk@isil.d.shuttle.de)
2566
2567         * parse-packet.c (parse_publickey, parse_signature): Fixed calls
2568         to mpi_read used for ELG b.
2569
2570 Fri Feb 13 15:13:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
2571
2572         * g10.c (main): changed formatting of help output.
2573
2574 Thu Feb 12 22:24:42 1998  Werner Koch  (wk@frodo)
2575
2576         * pubkey-enc.c (get_session_key): rewritten
2577