* call-agent.c (start_agent): Make copies of old locales and check
[gnupg.git] / g10 / ChangeLog
1 2000-11-13  Werner Koch  <wk@gnupg.org>
2
3         * Makefile.am: Do not install any program
4
5 2000-10-12  Werner Koch  <wk@gnupg.org>
6
7         * keygen.c (keygen_add_std_prefs): Add Rijndael to the prefs.
8
9 2000-10-11  Werner Koch  <wk@gnupg.org>
10
11         * packet.h: Add features sig subpacket definition.
12         * parse-packet.c (dump_sig_subpkt,parse_one_sig_subpkt,
13         can_handle_critical): Implemented it here.
14         * build-packet.c (build_sig_subpkt): and here.
15         * keygen.c (keygen_add_std_prefs): Generate a features packet.
16         
17 2000-10-09  Werner Koch  <wk@gnupg.org>
18
19         * keygen.c (do_generate_keypair): Removed the keyblock locking.
20
21         * ringedit.c (enum_keyblocks): Replaced by ...
22         (enum_keyblocks_begin): New.
23         (enum_keyblocks_next): New.
24         (enum_keyblocks_end): New. And changed all callers.
25         
26         * import.c (import_one): Removed keyblock locking becuase this is
27         now done inside of insert_keyblock().  Removed get_keyblock_handle
28         because insert_keyblock() now decides what is the default keyring.
29         (import_secret_one): Ditto.
30         (import_revoke_cert): Ditto.
31         (import_one): Ditto.
32
33 Fri Oct  6 14:29:16 CEST 2000  Werner Koch  <wk@openit.de>
34
35         Started to rework the whole getkey/ringedit stuff to make
36         it simpler, correcter and faster. 
37
38         * parse-packet.c (parse_packet): Add a 3rd arg to return the filepos.
39         Changed all callers.
40         * getkey.c (classify_user_id): Add new mode 21.
41         (find_by_fpr): Find using this new mode.
42         (get_seckey_byname): New arg to return the context. Changed all
43         callers.
44         * keyid.c (unified_fingerprint_from_pk): New.
45         (unified_fingerprint_from_sk): New.
46         * ringedit.c (find_keyblock_bypk): Changed to use the unified 
47         fingerprint for lookup.  I can't see a reason why we did compare
48         the entire public key.
49         (find_keyblock_bysk): Ditto.
50         (search,cmp_pubkey,cmp_seckey): Removed.
51         (keyring_search, do_kbxf_search): Removed.
52         (locate_keyblock_by_fpr,locate_keyblock_by_keyid): Removed.
53         (find_keyblock_byname): Removed use o search function.
54         (find_secret_keyblock_byname): Ditto.
55         (merge_public_with_secret): Fixed removing subkeys.
56         (premerge_public_with_secret): New.
57
58         * ringedit.c: Removed all GDBM support
59
60         * ringedit.c (read_keyblock): Removed.
61         * ringedit.c (find_keyblock_byname,find_secret_keyblock_byname,
62         find_keyblock_bypk,find_keyblock_bysk): Moved from here to ....
63         * getkey.c: ... here. Changed first arg to return a keyblock and
64         changed all callers to merge the old read_keyblock() with these
65         functions.       
66
67 Wed Oct  4 13:16:18 CEST 2000  Werner Koch  <wk@openit.de>
68
69         * getkey.c (merge_selfsigs_main): Fixed for v3 keys.
70
71         * sign.c (hash_for): New arg to take packet version in account. Changed
72         all callers.
73         (write_one_sig): New. Moved the shared code from sign_file and
74         clearsign_file to here.
75         * skclist.c (build_sk_list): Fixed usage check.
76         * pkclist.c (build_pk_list): Ditto.
77
78         * encode.c (encode_crypt): Removed duplicated stuff by using
79         encrypt_filter as sign.c already did.  Removed already disabled
80         comment-packet code.
81
82 Mon Sep 18 16:35:45 CEST 2000  Werner Koch  <wk@openit.de>
83
84         * parse-packet.c (dump_sig_subpkt): Dump key flags.
85         (parse_one_sig_subpkt,can_handle_critical): Add KeyFlags support.
86         * build-packet.c (build_sig_subpkt): Ditto.
87
88         * g10.c: New option --allow-freeform-uid. By Jeroen C. van Gelderen.
89         * keygen.c (ask_user_id): Implemented here.
90
91         * parse-packet.c (dump_sig_subpkt): Print info about the ARR.
92
93         * openfile.c (overwrite_filep): Always return okay if the file is
94         called /dev/null. 
95         (make_outfile_name): Add ".sign" to the list of know extensions.
96         (open_sigfile): Ditto.
97
98         * getkey.c: Large parts rewritten to have a better sub key selection
99         and handle some meta information from signatures more correctly.
100         (get_primary_seckey): Removed.
101         * seckey_cert.c (do_check): Set main keyid from the data in the sk.
102         * free-packet.c (copy_public_parts_to_secret_key): New.
103         * sig-check.c (check_key_signature2): Enabled shortcut for already
104         checked signatures.
105         * keydb.h: New macros IS_xxx_SIG, IS_xxx_REV.
106         * misc.c (openpgp_pk_algo_usage): New.
107         * packet.h: New field req_uage and do not use pubkey_usage anymore
108         to request a specific usage.  Changed at all places.
109         * keyid.c (keyid_from_sk): Cache the keyid in the sk
110
111         * passphrase.c (hash_passphrase): Removed funny assert.  Reported by
112         David Mathog.
113
114         * keyedit.c (keyedit_menu): Allow "debug" on secret keys.
115
116         * keygen.c (keygen_add_std_prefs): Changed order of preferences to
117         twofish, cast5, blowfish.
118
119         * gpg.c: The --trusted-key option is back.
120         * trustdb.c (verify_own_key): Handle this option.
121         (add_ultimate_key): Moved stuff from verify_own_key to this new func.
122         (register_trusted_key): New.
123
124         * openfile.c (try_make_homedir): Changes for non-Posix systems.
125         * gpg.c (main): Take the default homedir from macro.
126
127         * encode.c (encode_simple, encode_crypt): Fix for large files.
128         * sign.c (sign_file): Ditto.
129
130         * gpg.c (main): Don't set --quite along with --no-tty.  By Frank Tobin.
131
132         * misc.c (disable_core_dump): Don't display a warning here but a return
133         a status value and ...
134         * gpg.c (main): ...print warning here. Suggested by Sam Roberts.
135
136         * misc.c (print_pubkey_algo_note): Do not print the RSA notice.
137         * sig-check.c (do_signature_check): Do not emit the RSA status message.
138         * pubkey-enc.c (get_session_key): Ditto.
139
140         * ringedit.c (cmp_seckey): Fix for v4 RSA keys.
141         * seckey-cert.c (do_check): Workaround for PGP 7 bug.
142
143         * pkclist.c (algo_available): Removed hack to disable Twofish.
144
145         * gpg.c (main): Default S2K algorithms are now SHA1 and CAST5 - this
146         should solve a lot of compatibility problems with other OpenPGP
147         apps because those algorithms are SHOULD and not optional.  The old
148         way to force it was by using the --openpgp option whith the drawback 
149         that this would disable a couple of workarounds for PGP.
150
151         * gpg.c: New option --merge-only.  Suggested by Brendan O'Dea.
152         * import.c (import_one): Implemented it here.
153         (import_secret_one): Ditto.
154         (print_stats): and give some stats.
155
156         * gpg.c: New option --try-all-secrets on suggestion from
157         Matthias Urlichs.
158         * pubkey-enc.c (get_session_key): Quite easy to implement here.
159
160 Mon Aug 21 17:59:17 CEST 2000  Werner Koch  <wk@openit.de>
161
162         * gpg.c: New option --use-agent
163         * passphrase.c (agent_open,agent_close): New.
164         (agent_get_passphrase,agent_clear_passphrase): New.
165         (passphrase_to_dek): Use the agent here.
166         * seckey-cert.c (do_check): Clear wrong cached passphrases.
167
168 Fri Aug 18 14:27:14 CEST 2000  Werner Koch  <wk@openit.de>
169
170   * status.c (do_get_from_fd): Ooops, we used fd instead of opt.command_fd.
171   Thanks to Michael Tokarev.
172
173 Mon Jul 31 10:04:47 CEST 2000  Werner Koch  <wk@openit.de>
174
175   * encode.c, sign.c, keygen.c, pubkey-enc.c: Replaced all
176   gcry_sexp_{car,cdr}_{data,mpi} by the new gcry_sexp_nth_{data,mpi} functions.
177
178   * keygen.c (gen_dsa,gen_elg): Changed the way the factors are stored.
179   (factors_from_sexp): Removed.
180   * comment.c (make_mpi_comment_node): Removed.
181   (make_comment_node_from_buffer): New.
182
183 Fri Jul 28 18:19:11 CEST 2000  Werner Koch  <wk@openit.de>
184
185   * sig-check.c (pk_verify): Fixed the S-Exp withe the pkey.
186
187   * gpg.c (main): Use setmode(O_BINARY) for MSDOS while generating random bytes
188   (print_mds): Likewise for stdin.
189   * plaintext.c (handle_plaintext): Likewise for stdout.
190
191 Tue Jul 25 17:44:15 CEST 2000  Werner Koch  <wk@openit.de>
192
193   * keyedit.c (menu_expire): expire date for primary key can be set again.
194
195   * keylist.c (is_uid_valid): New.
196   (list_keyblock): Print validity information for all user IDs.  Note, this
197   has to be done at other places too; for now we have only minimal support.
198
199   * sign.c (pk_sign): Changed to use the new S-Exp interface.
200   * encode.c (pk_encrypt): Ditto.
201   * sig-check.c (pk_verify): Ditto.
202   * seckey-cert.c (pk_check_secret_key): Ditto.
203   * pubkey-enc.c (pk_decrypt): Ditto.
204   * misc.c (pubkey_nbits): Ditto.
205   * keygen.c (key_from_sexp,factors_from_sexp,gen_elg,gen_dsa): Ditto.
206
207 Fri Jul 14 19:38:23 CEST 2000  Werner Koch  <wk@>
208
209   Replaced everything with the code from the STABLE-BRANCH-1-0 and
210   started to backport the changes from the 1.1 development branch
211   which are dated according to the ChangeLog of the 1.1 from
212   Sat Sep 18 12:16:08 CEST 1999  to  Thu May 25 18:39:11 CEST 2000.
213   Here are those changes, some of them are duplicates because they
214   have been done on both branch simultaneously.
215
216   * gpg.c (print_mds): Add arg keys as a kludge to print hmacs
217   (main): New option --print-hmac.
218
219   * trustdb.c (verify_own_keys): Do not print warning about unprotected
220   key when in quiet mode.
221
222   * build-paket.c (do_user_id): Save offset where name has been stored.
223
224   * ringedit.c : Add new access method KBXF
225
226   * kbxfile.c: New.
227
228   * kbx.h: New.
229   * kbxblob.c: Started to work on the keybox stuff.
230
231   * keygen.c (gen_dsa): Modified to work with gcry_pk_genkey.
232
233   * Removed dummy-cipher.h from all files.
234
235   * keygen.c (gen_elg): Modified to work with gcry_pk_genkey.
236   (key_from_sexp): New.
237   (factors_from_sexp): New.
238
239   * g10.c : Renamed to ...
240   * gpg.c : ... this
241   * Makefile.am: And fixed it here.
242
243   * Changed all "g10_"/"GPG_" prefixes to "gpg_"/"GPG_".
244
245   * misc.c (mpi_read_opaque): Fixed double counting.
246
247   * seckey-cert.c (do_check): Removed buffer and the unmotivated free
248   on it.
249
250   * pubkey-enc.c (pk_decrypt): New wrapper for the gcry_ function.
251   * seckey-cert.c (pk_check_secret_key): Likewise.
252   * encode.c (pk_encrypt): Likewise.
253
254   * parse-packet.c (parse_key): Fixed case of unencrypted secret keys.
255
256   * misc.c (mpi_print): Use gcry_mpi_aprint.
257   (pubkey_nbits): Kludge to use the gcry_pk_ API.
258
259   * seskey.c (encode_session_key): Replaced mpi_set_buffer by *_scan.
260   (do_encode_md): Ditto.
261   (encode_md_value): Ditto.
262   * seckey-cert.c (protect_secret_key): Ditto.
263   * comment.c (make_mpi_comment_node): Replaced mpi_get_buffer by _print.
264   * pubkey-enc.c (get_it): Ditto.
265   * sig-check.c (do_signature_check): Ditto.
266
267   * keyid.c (do_fingerprint_md): Replaced mpi_get_buffer by gcry_mpi_print.
268   (v3_keyid): New.
269   (keyid_from_sk): And use it here.
270   (keyid_from_pk): Ditto.
271   (fingerprint_from_sk): Ditto.
272   (fingerprint_from_pk): Ditto.
273
274   * misc.c (mpi_print): New.
275
276   * misc.c (checksum_mpi): Now uses gcry_mpi_print to get the data.
277
278   * seckey-cert.c (do_check): Replaced mpi_read_from_buffer.
279
280   * armor.c (armor_filter): Made the "Comment:" header translatable.
281
282   * seckey-cert.c: Removed obsolete mpi_*_protect_flag.
283   * parse-packet.c: Ditto.
284
285   * misc.c (mpi_read): Removed the secure argumet becuase it is
286   never used.  Changed all Callers.
287   (mpi_read_opaque): New.
288   (mpi_write_opaque): New.
289   * parse-packet.c (parse_key): Use the opaque method also for
290   v3 keys.
291   * build-packet.c (do_secret_key): Likewise.
292
293   * g10.c (main): Check libgcrypt version.
294
295   * packet.h: replaced inclusion of mpi.h by a plain typeedef of the
296   gcry_mpi structure and removed all inclusions of "mpi.h" in all
297   sources.
298
299   * g10.c: Add --delete-secret-key to the help page.
300
301   * g10.c (main): Changed the default homedir to "~/.gnupg-test" so
302   that we don't mess up with the stable version.
303
304   * misc.c (mpi_write): New.
305   (mpi_write): New.
306
307   * misc.c (checksum_u16_nobug): Removed.
308   (checksum_mpi_counted_nbits): Renamed to ...
309   (checksum_mpi): ... this to superseed the old one. Changed all
310   callers. This is because we do not emulate the old gpg bug anymore.
311   * g10.c (oEmuChecksumBug): Removed.
312
313   * g10.c (register_extension): New...
314   (main): Use it here instead of register_cipher_extesnion.
315   (strusage): s/strusage/my_strusage/ . Made static.
316   (main): Use set_strusage().
317
318   * tdbdump.c (HEXTOBIN): Changed the name of the argument, so that
319   traditional cpp don't mess up the macros. Suggested by Jos Backus.
320
321   * armor.c (parse_header_line): Stop parsing on a only WS line too.
322   Suggested by Aric Cyr.
323
324   * misc.c (pull_in_libs): Removed.
325
326   * mainproc.c (list_node): Print the PK algo in the --with-colon mode.
327   * keylist.c (list_keyblock): Ditto.
328
329   * misc.c (pull_in_libs): Removed pull in of g10c.
330
331   * misc.c (map_gcry_rc): Removed here and chnaged all users.
332
333   * getkey.c: Replaced check_pubkey_algo by openpgp_pk_test_algo.
334   * import.c (delete_inv_parts): Ditto.
335   * pkclist.c: Ditto.
336   * skclist.c: Ditto.
337   * pubkey-enc.c: Ditto.
338
339   * g10.c (main): Replaced the function to diable PK algos.
340
341   * g10.c (main): Replaced get_random_bits by gcry_random_bytes.
342   * seskey.c (encode_session_key): Likewise.
343   (make_session_key): Renamed randomize_buffer to gcry_randomize
344   and use the GCRY_xxx_RANDOM constants.
345   * cipher.c (write_header): Ditto.
346   * passphrase.c (hash_passphrase): Ditto.
347   * seckey-cert.c (protect_secret_key): Ditto.
348
349   * getkey.c (find_by_name): Replaced rmd160_hash_buffer
350   by gcry_md_hash_buffer.
351   * keyedit.c (show_prefs): Ditto.
352   * keylist.c (list_keyblock): Ditto.
353   * trustdb.c (print_uid_from_keyblock): Ditto.
354   (make_uid_records): Ditto.
355
356   * skclist.c (build_sk_list): Removed the test on faked RNGs.
357   (is_insecure): Removed.
358   * g10.c (--quick-random): Removed this option.
359
360   * Replaced all PUBKEY_ALGO_xxx by GCRY_PK_xxxx.
361
362   * misc.c (pubkey_algo_npkey): New as a wrapper around the gcry fucntion.
363   (pubkey_algo_nskey): Ditto.
364   (pubkey_algo_nsig): Ditto.
365   (pubkey_algo_nenc): Ditto.
366
367   * Makefile.am (basicdefs.h): Added.
368   (install-data-local): Removed the handling for historic gpgm.
369
370   * misc.c (openpgp_cipher_test_algo): New.
371   (openpgp_pk_test_algo): New.
372   (openpgp_md_test_algo): New.
373
374   * g10.c (build_list): Changed to use the new functions from libgcrypt.
375
376   * ringedit.c (enum_keyblocks): Set .rt to 0 on open.
377
378   * encode.c (encode_simple): Use new CTB when we don't have the
379   length of the file.  This is somewhat strange as the comment above
380   indicates that this part is actually fixed for PGP 5 - maybe I simply
381   lost the source line, tsss.
382
383   * sign.c (clearsign_file): Avoid duplicated Entries in the "Hash:"
384   line.  Those headers are now only _not_ printed when there are
385   only old-style keys _and_ all hashs are MD5.
386
387   (clearsign_file): Use gcry_md_test_algo() and gcry_md_algo_name().
388
389   * openfile.c (make_outfile_name): Use case-insenstive compare for
390   DOS systems.  Add ".pgp" to the list of know extensions.
391   (open_outfile): For DOS systems try to replace the suffix instead of
392   appending it.
393
394   * encr-data.c (decrypt_data): Reset error on a weak key.
395
396   * cipher.c: Replaced the cipher and digest functions by the gcry_ ones.
397   * seckey-cert.c: Ditto.
398   * seskey.c: Ditto.
399   * g10.c (print_mds): Replaced digst functions with the new gcry_ ones.
400   * keyid.c: Ditto.
401   * mainproc.c: Ditto.
402   * passphrase.c: Ditto.
403   * sig-check.c: Ditto.
404   * sign.c: Ditto.
405
406   * pkclist.c (do_edit_ownertrust): Made the answer string const.
407
408   * basicdefs.h: New.  Move some defs and decl to this header.
409
410   * openfile.c (open_outfile): Fixed the 8dot3 handling.
411
412   * passphrase.c (passphrase_to_dek): Print uid using utf8 func.
413   * delkey.c (delete_key): Ditto.
414   * pkclist.c (show_paths,do_edit_ownertrust,do_we_trust): Ditto
415   (do_we_trust_pre): Ditto.
416   * trustdb.c (print_user_id,check_uidsigs): Ditto.
417   * revoke.c (gen_revoke,ask_revoke_sig): Ditto.
418
419   * filter.h: Changed cipher handle types to the the GCRY_xxx ones.
420   replaces include cipher by system header include gcrypt.h.
421   * cipher.c: replaced the cipher functions by the gcry_ ones.
422   Ditto for the md functions.
423
424   * misc.c (map_gcry_rc): New.
425
426 Wed Jun 28 11:54:44 CEST 2000  Werner Koch  <wk@>
427
428   * armor.c (armor_filter): Set sigclass to 0 in case of non-dash-escaped
429   clearsig.  This makes this mode work again.
430
431   * mainproc.c (proc_tree): Fixed handling of one-pass-sig packets in textmode.
432   Disabled the ugly workaround for PGP 5 - let's see whether thi breaks less
433   cases. Found by Ted Cabeen.
434
435   * options.h (DBG_HASHING): New.  All commented md_start_debug are now
436   controlled by this debug option.
437
438   * sign.c (print_status_sig_created): New and called from 2 places.
439
440   * keygen.c (gen_rsa): New, but commented.
441   (ask_algo): Commented support for RSA.
442
443   * seckey-cert.c (protect_secret_key): Started to fix the code for v4 RSA
444   keys - it is not solved yet. However, we have time until, Sep 20th ;)
445
446 Wed Jun 14 12:27:09 CEST 2000  Werner Koch  <wk@openit.de>
447
448   * status.c (init_shm_coprocessing): Changed the sequence of the get,attach
449   to cope with the changes in newer Linux kernels.  This bug has been found
450   by <dmitri@advantrix.com> who also proposed this solution.  Hopefully
451   this does not break gpg on to many systems.
452
453   * cipher.c (write_header): Protect the IV with the MDC too.
454   * encr-data.c (decrypt_data): Likewise.
455
456 Fri Jun  9 10:09:52 CEST 2000  Werner Koch  <wk@openit.de>
457
458   * g10.c: New options --no-auto-key-retrieve
459   * options.h (auto_key_retrieve): New.
460   * mainproc.c (check_sig_and_print): Implemented that.
461
462 Wed Jun  7 19:19:09 CEST 2000  Werner Koch  <wk@openit.de>
463
464   * sig-check.c (do_check): Use EMULATE_MDENCODE also on v4 paclets.
465
466 Wed Jun  7 17:25:38 CEST 2000  Werner Koch  <wk@openit.de>
467
468   * cipher.c (write_header): Use plain CFB mode for MDC encrypted packets.
469   * encr-data.c (decrypt_data): Ditto.
470
471 Mon Jun  5 23:41:54 CEST 2000  Werner Koch  <wk@openit.de>
472
473   * seskey.c (do_encode_md, encode_md_value): Add new arg v3compathack to work
474   around a bug in old versions.
475   * sig-check.c (do_check): use the aboved workaround when enabled.
476   * g10.c: New option --emulate-md-decode-bug
477
478 Mon Jun  5 12:37:43 CEST 2000  Werner Koch  <wk@openit.de>
479
480   * build-packet.c (do_mdc): New.
481   (do_encrypted_mdc): Changed for the new proposal.
482   * parse-packet.c (parse_mdc): New.
483   (parse_encrypted): Fixed for the new proposal.
484   * packet.h (PKT_MDC): New.
485   * cipher.c (cipher_filter): Build the MDC packet here.
486   * g10.c (main): Enable --force-mdc.
487   * encr-data.c (mdc_decode_filter): Fixed for new MDC method
488
489   * options.h(rfc2440): New.
490   * g10.c (main): Changed the selected values for --openpgp to not include
491   optional algorithms.
492
493 Thu May 18 11:38:54 CEST 2000  Werner Koch  <wk@openit.de>
494
495         * keyedit.c (keyedit_menu): Add a keyword arg to the prompt.
496
497         * status.c, status.h: Added 3 new status tokens.
498         * status.c (do_get_from_fd): New.
499         (cpr_enabled,cpr_get,cpr_get_hidden,cpr_kill_prompt,
500          cpr_get_answer_is_yes,cpr_get_answer_yes_no_quit): Modified to work
501          with the new function.
502         * g10.c: Add new option --command-fd.
503
504         * status.c (progress_cb): New.
505         (set_status_fd): Register progress functions
506
507 Fri May 12 14:01:20 CEST 2000  Werner Koch  <wk@openit.de>
508
509         * delkey.c (delete_key): Add 2 new status messages
510         * status.c, status.h (STATUS_DELETE_PROBLEM): New.
511
512         Fixed years of copyright in all source files.
513
514 Mon May  1 17:08:14 CEST 2000  Werner Koch  <wk@openit.de>
515
516         * trustdb.c (propagate_validity): Fixed the bug that only one uid
517         gets fully trusted even when all are signed by an ultimate key.
518
519 Mon May  1 15:38:04 CEST 2000  Werner Koch  <wk@openit.de>
520
521         * getkey.c (key_byname): Always returned a defined context.  Fixed
522         a segv for invalid user id specifications. Reported by Walter Koch.
523
524         * getkey.c (get_user_id): I18ned "no user id" string. By Walter.
525
526         * pkclist.c (do_show_revocation_reason): Typo fixes.
527         * helptext.c: Ditto.
528
529         * armor.c (armor_filter): Fixed some CRLF issues.  By Mike McEwan.
530
531 Fri Apr 14 19:37:08 CEST 2000  Werner Koch  <wk@openit.de>
532
533         * pkclist.c (do_show_revocation_reason): New.
534         (show_revocation_reason): New and called at various places.
535
536         * g10.c (main): Fixed small typo.
537
538         * pkclist.c (do_we_trust): Act on always_trust but not for revoked
539         keys. Suggested by Chip Salzenberg.
540
541         * g10.c: New option --lock-never.
542
543         * ringedit.c (get_writable_keyblock_file): New.
544         * keygen.c (do_generate_keypair): Use this instead of the hardwired one.
545
546         * keygen.c (ask_user_id): Check that the email address is in the
547         correct field.  Suggested by Christian Kurz.
548
549 Mon Apr 10 13:34:19 CEST 2000  Werner Koch  <wk@openit.de>
550
551         * keyedit.c (show_key_with_all_names): s/sbb/ssb/
552
553 Tue Mar 28 14:26:58 CEST 2000  Werner Koch  <wk@openit.de>
554
555         * trustdb.c (verify_own_keys): Do not print warning about unprotected
556         key when in quiet mode.
557
558 Wed Mar 22 13:50:24 CET 2000  Werner Koch  <wk@openit.de>
559
560         * mainproc.c (print_userid): Do UTF8 conversion before printing.
561         * import.c (import_one): Ditto.
562         (import_secret_one): Ditto.
563         (delete_inv_parts): Ditto.
564
565 Thu Mar 16 16:20:23 CET 2000  Werner Koch  <wk@openit.de>
566
567         * keylist.c (print_key_data): Handle a NULL pk gracefully.
568
569         * getkey.c (merge_one_pk_and_selfsig): Fixed silly code for
570         getting the primary keys keyID but kept using the one from the
571         subkey.
572         * pubkey-enc.c (get_it): Print a note for expired subkeys.
573
574         * getkey.c (has_expired): New.
575         (subkeys_expiretime): New.
576         (finish_lookup): Check for expired subkeys needed for encryption.
577         (merge_keys_and_selfsig): Fixed expiration date merging for subkeys.
578
579         * keylist.c (list_keyblock): Print expiration time for "sub".
580         (list_one): Add missing merging for public keys.
581         * mainproc.c (list_node): Ditto.
582
583 2000-03-14 13:49:38  Werner Koch  (wk@habibti.openit.de)
584
585         * keygen.c (keyedit_menu): Do not allow to use certain commands
586         while the secret key is selected.
587
588 2000-03-09 12:53:09  Werner Koch  (wk@habibti.openit.de)
589
590         * keygen.c (ask_expire_interval): Movede parsig to ...
591         (parse_expire_string): ... this new function. And some new control
592         commands.
593         (proc_parameter_file): Add expire date parsing.
594         (do_generate_keypair): Allow the use of specified output files.
595
596 2000-03-08 10:38:38  Werner Koch  (wk@habibti.openit.de)
597
598         * keygen.c (ask_algo): Removed is_v4 return value and the commented
599         code to create Elg keys in a v3 packet. Removed the rounding
600         of key sizes here.
601         (do_create): Likewise removed arg v4_packet.
602         (gen_elg): Likewise removed arg version. Now rounding keysizes here.
603         (gen_dsa): Rounding keysize now here.
604         (release_parameter_list): New
605         (get_parameter*): New.
606         (proc_parameter_file): New.
607         (read_parameter_file): New.
608         (generate_keypair): Splitted. Now uses read_parameter_file when in
609         batch mode.  Additional argument to specify a parameter file.
610         (do_generate_keypair): Main bulk of above fucntion and uses the
611         parameter list.
612         (do_create): Don't print long notice in batch mode.
613         * g10.c (main): Allow batched key generation.
614
615 Thu Mar  2 15:37:46 CET 2000  Werner Koch  <wk@gnupg.de>
616
617         * pubkey-enc.c (get_it): Print a note about unknown cipher algos.
618
619         * g10.c (opts): Add a note to the help listing about the man page
620         and removed some options from the help listing.
621
622         * keyedit.c (print_and_check_one_sig): Use a new function to truncate
623         the output of the user ID.  Suggested by Jan-Benedict Glaw.
624
625 Wed Feb 23 10:07:57 CET 2000  Werner Koch  <wk@gnupg.de>
626
627         * helptext.c: typo fix.
628
629 Thu Feb 17 13:39:32 CET 2000  Werner Koch  <wk@gnupg.de>
630
631         * revoke.c: Removed a bunch of commented code.
632
633         * packet.h (SIGSUBPKT_REVOC_REASON): New.
634         * build-packet.c (build_sig_subpkt): Support new sub packet.
635         * parse-packet.c (parse_one_sig_subpkt): Ditto.
636         (dump_sig_subpkt): Ditto.
637         * revoke.c (ask_revocation_reason): New.
638         (release_revocation_reason_info): New.
639         (revocation_reason_build_cb): New.
640         (gen_revoke): Ask for reason.
641         * main.h (struct revocation_reason_info): Add declaration.
642         * keyedit.c (menu_revsig): Add support for revocation reason.
643         (menu_revkey): Ditto.
644         (sign_uid_mk_attrib): Renamed to ...
645         (sign_mk_attrib): ... this, made static and add support for reasons.
646
647 Tue Feb 15 08:48:13 CET 2000  Werner Koch  <wk@gnupg.de>
648
649         * build-packet.c (build_packet): Fixed fixing of old comment packets.
650
651         * import.c (import_keys): Fixed importing from stdin when called with
652         nnames set to zero as it normally happens.
653
654 Mon Feb 14 14:30:20 CET 2000  Werner Koch  <wk@gnupg.de>
655
656         * sig-check.c (check_key_signature2): Add new arg r_expired.
657         (do_signature_check): New arg to pass it down to ...
658         (do_check): New arg r-expire which is set when the signature
659         has expired.
660         * trustdb.c (check_sig_record): Set SIGF_EXPIRED flag and set
661         the expiretime to zero so that thi signature will not be checked
662         anymore.
663
664 Fri Feb 11 17:44:40 CET 2000  Werner Koch  <wk@gnupg.de>
665
666         * g10.c (g10_exit): Update the random seed_file.
667         (main): Set the random seed file.  New option --no-random-seed-file.
668
669 Thu Feb 10 17:39:44 CET 2000  Werner Koch  <wk@gnupg.de>
670
671         * keyedit.c (menu_expire): Fixed segv due to unitialized sub_pk.
672         By Rémi.
673
674 Thu Feb 10 11:39:41 CET 2000  Werner Koch  <wk@gnupg.de>
675
676         * keylist.c (list_keyblock): Don't print warnings in the middle of
677         regulat output lines.  By Rémi.
678
679         * sig-check.c: Include options.h
680
681 Wed Feb  9 15:33:44 CET 2000  Werner Koch  <wk@gnupg.de>
682
683         * gpg.c: New option --ignore-time-conflict
684         * sig-check.c (do_check): Implemented this option.
685         * trustdb.c (check_trust): Ditto.
686         * sign.c (do_sign): Ditto.
687         * keygen.c (generate_subkeypair): Ditto.
688
689         * encode.c (encode_simple): use iobuf_cancel after open failure.
690         Reported by Huy Le.
691
692 Fri Jan 14 18:32:01 CET 2000  Werner Koch  <wk@gnupg.de>
693
694         * packet.h (STRING2KEY): Changed mode from byte to int.
695         * parse-packet.c (parse_key): Add the special GNU protection stuff
696         * build-packet.c (so_secret_key): Ditto.
697         * seckey-cert.c (do_check): Ditto.
698         * keyedit.c (change_passphrase): Ditto.
699         * export.c (export_secsubkeys): New.
700         (do_export_stream): Hack to export the primary key using mode 1001.
701         * g10.c: New command --export-secret-subkeys
702
703 Thu Jan 13 19:31:58 CET 2000  Werner Koch  <wk@gnupg.de>
704
705         * armor.c (is_armored): Check for 1-pass-sig packets. Reported by
706         David Hallinan <hallinan@rtd.com>.
707         (armor_filter): Replaced one LF by the LF macro.  Reported by
708         Wolfgang Redtenbacher.
709
710 Wed Jan  5 11:51:17 CET 2000  Werner Koch  <wk@gnupg.de>
711
712         * g10.c (main): Reset new global flag opt.pgp2_workarounds
713         when --openpgp is used.
714         * mainproc.c (proc_plaintext): Do the PGP2,5 workarounds only
715         when the global flag is set.
716         (proc_tree): Ditto.
717         * textfilter.c (copy_clearsig_text): Ditto.
718         * armor.c (armor_filter): Ditto.
719
720         * g10.c: New option --list-only
721         * mainproc.c (proc_tree): Don't do it if opt.list_only is active.
722         (proc_pubkey_enc): Implement option.
723
724         * status.h, status.c ({BEGIN,END}_{EN,DE}CRYPTION): New.
725         * cipher.c (cipher_filter): New status outputs.
726         * mainproc.c (proc_encrypted): New status outputs.
727
728 Fri Dec 31 14:08:15 CET 1999  Werner Koch  <wk@gnupg.de>
729
730         * armor.c (armor_filter): Made the "Comment:" header translatable.
731
732         * hkp.c (hkp_import): Make sure that the program does not return
733         success when there is a connection problem.  Reported by Phillip Jones.
734
735 Sun Dec 19 15:22:26 CET 1999  Werner Koch  <wk@gnupg.de>
736
737         * armor.c (LF): Use this new macro at all places where a line LF
738         is needed.  This way DOSish textfiles should be created when the
739         input data is also in dos mode.
740         * sign.c (LF): Ditto.
741         * textfilter.c (LF): Ditto.
742         (copy_clearsig_text): Disabled the forcing of CR,LF sequences
743         for DOS systems.
744
745         * plaintext.c (handle_plaintext): Fixes for line endings on DOS.
746         and react on a LF in cleartext.
747         * armor.c (fake_packet): Restore the original line ending after
748         removing trailing spaces.
749
750         * signal.c (got_fatal_signal): DOS fix.
751
752 Thu Dec 16 10:07:58 CET 1999  Werner Koch  <wk@gnupg.de>
753
754         * mainproc.c (print_failed_pkenc): Fix for unknown algorithm.
755         Found by fygrave@epr0.org.
756
757 Thu Dec  9 10:31:05 CET 1999  Werner Koch  <wk@gnupg.de>
758
759         * hkp.c: i18n the strings.
760
761 Sat Dec  4 15:32:20 CET 1999  Werner Koch  <wk@gnupg.de>
762
763         * trustdb.c (verify_key): Shortcut for ultimately trusted keys.
764
765 Sat Dec  4 12:30:28 CET 1999  Werner Koch  <wk@gnupg.de>
766
767         * pkclist.c (build_pk_list): Validate the trust using the namehash
768         if this one has been set by the key lookup.
769
770         * g10.c: Add --delete-secret-key to the help page.
771
772         * openfile.c (copy_options_file): Made static.
773         (try_make_homedir): New.
774         * ringedit.c (add_keyblock_resource): Use the try_make_hoemdir logic.
775         * tdbio.c (tdbio_set_dbname): Likewise.
776
777         * keygen.c (generate_user_id): Use m_alloc_clear() here. We should
778         better use an allocation function specific to the user_id packet.
779
780         * keygen.c (keygen_add_std_prefs): Changed symmetric preferences
781         to include Blowfish again.  This is due to it's better speed compared
782         to CAST5.
783
784         * g10.c (strusage): Print the home directory.
785
786         * armor.c (armor_filter): Take action on the cancel control msg.
787         * filter.h (armor_filter_context_t): Add cancel flag.
788
789 Mon Nov 29 21:52:11 CET 1999  Werner Koch  <wk@gnupg.de>
790
791         * g10.c: New option --fast-list-mode ..
792         * keylist.c (list_keyblock): .. and implemented.
793         * mainproc.c (list_node): Ditto.
794
795         * import.c (mark_non_selfsigned_uids_valid): Fixed the case that there
796         is a uid without any packet following.
797
798 Mon Nov 22 11:14:53 CET 1999  Werner Koch  <wk@gnupg.de>
799
800         * mainproc.c (proc_plaintext): Never enable the hash processing
801         when skip_verify is active.
802
803         * armor.c (parse_header_line): Stop parsing on a WS line too.
804         Suggested by Aric Cyr.
805
806         * tdbdump.c (HEXTOBIN): Changed the name of the argument, so that
807         traditional cpp don't mess up the macros. Suggested by Jos Backus.
808
809         * mainproc.c (list_node): Print the PK algo in the --with-colon mode.
810         * keylist.c (list_keyblock): Ditto.
811
812         * signal.c (got_fatal_signal): Found the reason why exit(8) did not
813         work - it is better to set the disposition back to default before
814         raising the signal.  Print the notice on stderr always.
815
816 Fri Nov 12 20:33:19 CET 1999  Werner Koch  <wk@gnupg.de>
817
818         * g10.c (make_username): Swapped the logic.
819         * keylist.c (public_key_list): Now takes a STRLIST as arg and moved
820         the creation ot this list to the caller, so that he can copy with
821         UTF-conversion of user IDs.  Changed all callers.
822         (secret_key_list): Likewise.
823
824         * getkey.c (get_user_id_string_native): New and ...
825         * encode.c (write_pubkey_enc_from_list): ... use it here.
826
827         * pubring.asc: Updated.
828
829         * packet.h (PKT_PHOTO_ID): New.
830         * parse-packet.c (parse_photo_id): New.
831         * build-packet.c (do_user_id: Handle photo IDs.
832         (build_packet): Change CTB for photo IDs
833         * free-packet.c (free_user_id): Release memory used for photo IDs
834         * sig-check.c (hash_uid_node): Handle photo IDs too.
835         * trustdb.c (print_uid_from_keyblock): Hash photo ID.
836         (make_uid_records): Ditto.
837         * getkey.c (find_by_name): Ditto.
838         * keyedit.c (show_prefs): Ditto.
839         * keylist.c (list_keyblock): Ditto.
840
841 Thu Oct 28 16:08:20 CEST 1999  Werner Koch  <wk@gnupg.de>
842
843         * keygen.c (ask_expire_interval): Print a warning for systems
844         with a signed 32 time_t if the exiration time is beyoind 2038.
845
846 Fri Oct  8 20:40:50 CEST 1999  Werner Koch  <wk@gnupg.de>
847
848         * ringedit.c (enum_keyblocks): The last fix way really stupid;
849         reverted and set rt to Unknown.
850
851 Fri Oct  8 20:32:01 CEST 1999  Werner Koch  <wk@gnupg.de>
852
853         * ringedit.c (enum_keyblocks): Zero the entire kbpos out on open.
854
855         * g10.c (oEntropyDLL): Removed option.
856         (main): Made the warning on development versions more verbose.
857
858         * g10.c (oHonorHttpProxy): New option.
859         * hkp.c (hkp_ask_import,hkp_export): Implement this option.
860         * options.skel: Enable this option for new installations
861
862 Mon Oct  4 21:23:04 CEST 1999  Werner Koch  <wk@gnupg.de>
863
864         * import.c (import_keys): Changed calling interface, adjusted caller.
865         (import): Moved printing of stats out ...
866         (print_stats): New. ... to here.
867         (import_keys_stream): Call stats print here.
868         (import_keys): Print stats as totals for all files.
869
870         * tdbio.h (DIRF_NEWKEYS): New
871         * tdbio.c (tdbio_dump_record): Print the new flag.
872         * trustdb.c (check_trust_record): New arg sigs_only.  Adapted all
873         callers.
874         (do_update_trust_record): Removed recheck arg and add a new sigs_only
875         do we can later improve on the performance.  Changed all callers too.
876         (check_trustdb): Evalutate the new flag and add a status output.
877         Do a check when the dir record has not been checked.
878         (build_cert_tree): Evaluate the new flag.
879         (check_trust): Ditto.  Do a trust_record check, when the dir record
880         is not marked as checked.
881         (mark_fresh_keys): New.
882         (clear_lid_table): New.
883         (sync_trustdb): New.
884         * import.c (import_keys): Call sync_trustdb() after processing.
885         (import_keys_stream): Ditto.
886         * tdbdump.c (import_ownertrust): Ditto.
887
888         * import.c (import_revoke_cert): Notify the trust DB.
889         (do_update_trust_record): Use |= to set the REVOKED bit and not &=;
890         shame on me for this bad copy+paste introduced bug.
891         (do_we_trust): Add trustmask to allow revoked key override to work.
892         Chnaged are to allow return of a mofified trustlevel. Adapted the
893         one caller.
894
895         * g10.c: New options --emulate-3des-s2k-bug
896         * passphrase.c (hash_passphrase): Implemented above.
897
898         * mainproc.c (proc_tree): Check for standalone signatures.
899         (do_check_sig): Print a notice for a standalone revocation
900         (check_sig_and_print): Do not print an error for unchecked standalone
901         revocations.
902
903 Tue Sep 28 20:54:37 CEST 1999  Werner Koch  <wk@gnupg.de>
904
905         * encode.c (encode_simple): Use new CTB when we don't have the
906         length of the file.  This is somewhat strange as the comment above
907         indicates that this part is actually fixed for PGP 5 - maybe I simply
908         lost the source line, tsss.
909
910         * armor.c (armor_filter): Set a flag if no OpenPGP data has been found.
911         * verify.c (verify_signatures): Add an error helptext.
912
913 Thu Sep 23 19:24:30 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
914
915         * openfile.c (open_outfile): Fixed the 8dot3 handling.
916
917         * passphrase.c (passphrase_to_dek): Print uid using utf8 func.
918         * delkey.c (delete_key): Ditto.
919         * pkclist.c (show_paths,do_edit_ownertrust,do_we_trust): Ditto
920         (do_we_trust_pre): Ditto.
921         * trustdb.c (print_user_id,check_uidsigs): Ditto.
922         * revoke.c (gen_revoke,ask_revoke_sig): Ditto.
923
924 Thu Sep 23 09:52:58 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
925
926         * verify.c (print_file_status): New.
927         (verify_one_file): Moved status print to th new fnc. Add error status.
928         * status.c, status.h (STATUS_FILE_ERROR): New
929
930 Wed Sep 22 10:14:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
931
932         * openfile.c (make_outfile_name): Use case-insenstive compare for
933         DOS systems.  Add ".pgp" to the list of know extensions.
934         (open_outfile): For DOS systems try to replace the suffiy instead of
935         appending it.
936
937         * status.c, status.h: Add STATUS_FILE_{START,DONE}.
938         * verify.c (verify_one_file): Emit these new stati.
939
940         * sign.c (clearsign_file): Avoid duplicated Entries in the "Hash:"
941         line.  Those headers are now only _not_ printed when there are
942         only old-style keys _and_ all hashs are MD5.
943
944 Mon Sep 20 12:24:41 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
945
946
947         * verify.c (verify_files, ferify_one_file): New.
948         * g10.c:  New command --verify-files
949
950 Fri Sep 17 12:56:42 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
951
952         * g10.c: Add UK spelling as alias for armor options ;-)
953
954         * import.c (append_uid): Fixed a SEGV when there is no selfsig and
955         no subkey.
956         (merge_sigs): Ditto.  Removed the assertion.
957
958 Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
959
960         * g10.c: New option --entropy-dll-name
961
962 Mon Sep 13 10:51:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
963
964         * signal.c (got_fatal_signal): Print message using write(2) and
965         only for development versions.
966
967 Mon Sep  6 19:59:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
968
969         * tdbio.c (tdbio_set_dbname): Use mkdir macro
970         * ringedit.c (add_keyblock_resource): Ditto.
971
972 Fri Sep  3 10:04:45 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
973
974         * pkclist.c (build_pk_list): Skip keys set with --encrypt-to also
975         when asking for a key.
976
977         * plaintext.c (handle_plaintext): Make sure that we don't read a
978         second EOF in the read loop for partial length packets.
979
980         * mainproc.c (check_sig_and_print): print user ID as utf-8.
981
982 Thu Sep  2 16:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
983
984         * import.c (merge_blocks): First add new subkeys, then merge subkey
985         certificates.
986         (merge_sigs): Don't merge subkey signatures here.
987
988 Wed Sep  1 15:30:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
989
990         * keygen.c (ask_expire_interval): Fixed bug related to cpr_xx (tnx
991         Francis J. Lacoste).
992
993 Tue Aug 31 17:20:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
994
995         * plaintext.c (do_hash): Hash CR,LF for a single CR.
996         (ask_for_detached_datafile): Changed arguments to be closer to
997         those of hash_datafiles and cleanup the code a bit.
998         * mainproc.c (proc_tree): Workaround for pgp5 textmode detached
999         signatures.  Changed behavior of asking for data file to be the same
1000         as with provided data files.
1001
1002         * keylist.c (list_keyblock): Use UTF8 print functions.
1003
1004 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1005
1006         * import.c (chk_self_sigs): some s/log_error/log_info/ so that gpg
1007         does not return an error if a key has some invalid packets.
1008
1009         * helptext.c: Fixed some typos and changed the way the
1010         translation works.  The english text is now the keyword for gettext
1011         and not anymore the keyword supplied to the function.  Done after
1012         some discussion with Walter who thinks this is much easier for the
1013         translators.
1014
1015         * misc.c (disable_core_dumps): Don't do it for DOSish systems.
1016
1017         * signal.c (signal_name): Bounds check on signum.
1018
1019 Wed Aug  4 10:34:18 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1020
1021         * pubring.asc: Updated.
1022
1023         * pkclist.c (do_we_trust_pre,check_signatures_trust): Do not print
1024         the warning about --always_trust when --quiet is used.
1025
1026         * pkclist.c (fpr_info): New and called at several places.
1027
1028         * parse-packet.c (dump_sig_subpkt): List revocation key contents.
1029
1030 Mon Jul 26 09:34:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1031
1032         * pkclist.c (build_pk_list): Fixed typo in format string.
1033
1034         * trustdb.c (create_shadow_dir): Don't translate the error string.
1035
1036         * g10.c (main): Fixed spelling of user-id.
1037         * getkey.c (find_by_name_pk,find_by_name_sk,
1038         find_by_keyid,find_by_keyid_sk): Ditto and translate it.
1039         * import.c (mark_non_selfsigned_uids_valid,delete_inv_parts): Ditto.
1040
1041
1042 Mon Jul 26 01:01:39 CEST 1999  Michael Roth <mroth@nessie.de>
1043
1044         * g10.c, options.h: New options --no-literal and --set-filesize
1045
1046         * encode.c (encode_simple, encode_crypt): Support for the options
1047         --no-literal and --set-filesize.
1048
1049         * sign.c (sign_file): ditto.
1050
1051 Fri Jul 23 13:53:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1052
1053
1054         * ringedit.c (enum_keyblocks): Removed annoying error message in cases
1055         when we have no keyring at all to enum.
1056
1057         * getkey.c (classify_user_id): Rewrote to relax the recognition of
1058         keyIDs and fingerprints (Michael).
1059
1060         * mainproc.c (check_sig_and_print): Print status NO_PUBKEY.
1061         (print_failed_pkenc): Print status NO_SECKEY.
1062
1063         * import.c (mark_non_selfsigned_uids_valid): New.
1064         * g10.c: New option --allow-non-selfsigned-uid.
1065
1066         * pkclist.c (print_fpr): New.
1067         (do_we_trust_pre): Print the fpr before asking whether to use the key
1068         anyway.
1069         (do_edit_ownertrust): Likewise.
1070
1071 Thu Jul 22 20:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1072
1073
1074         * ringedit.c (enum_keyblocks): Removed annoying error message in cases
1075         when we have no keyring at all to enum.
1076
1077         * getkey.c (classify_user_id): Rewrote to relax the recognition of
1078         keyIDs and fingerprints (Michael).
1079
1080         * mainproc.c (check_sig_and_print): Print status NO_PUBKEY.
1081         (print_failed_pkenc): Print status NO_SECKEY.
1082
1083         * import.c (mark_non_selfsigned_uids_valid): New.
1084         * g10.c: New option --allow-non-selfsigned-uid.
1085
1086 Thu Jul 15 10:15:35 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1087
1088         * g10.c: New options --disable-{cipher,pubkey}-algo.
1089
1090 Wed Jul 14 19:42:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1091
1092         * status.h (STATUS_IMPORTED): New.
1093         * import.c (import): Print some status information (Holger Schurig).
1094
1095         * g10.c (main): Make --no-greeting work again. Add a warning when
1096         --force-mds is used.
1097
1098 Tue Jul 13 17:39:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1099
1100         * pkclist.c (do_edit_ownertrust): Changed the way help works.
1101         (build_pk_list): Implemented default recipient stuff.
1102         * g10.c: New options --default-recipient[-self]
1103         (main): Suppress greeting in most cases, entering a passphrase or
1104         a missing value is not considered to be interactive use.
1105         Merged --print-md and --print-mds; the latter is now obsolete.
1106         Changed the way --gen-random works and documented it.
1107         Changed the way --gen-prime works and add a man entry.
1108         * g10.c (MAINTAINER_OPTIONS): Removed.
1109
1110 Mon Jul 12 18:45:57 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1111
1112         * keyedit.c (keyedit_menu): Add arg sign_mode and changed callers
1113         * g10.c (main): New command --lsign-key.
1114
1115 Mon Jul 12 14:55:34 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1116
1117         * mainproc.c (kidlist_item): New.
1118         (release_list): Release failed pk-enc-list.
1119         (print_failed_pkenc): New
1120         (proc_encrypted): Print info about failed PK enc.
1121
1122         * openfile.c (make_outfile_name): s/error/info/
1123
1124         * passphrase.c (passphrase_to_dek): Return an empty passphrase when
1125         in batch mode and don't make the warning message fatal
1126         * seckey-cert.c (check_secret_key): Try only once when in batch mode.
1127
1128         * g10.c (make_username): New.
1129
1130 Thu Jul  8 16:21:27 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1131
1132
1133         * packet.h (PKT_ring_trust): New
1134         * parse-packet.c (parse_trust): Store trust value
1135         * build-packet (build_packet): Ignore ring trust packets.
1136         * mainproc.c (add_ring_trust): New.
1137         (list_node): Print "rtv" records.
1138         * g10.c: New option --with-fingerprint.
1139
1140         * trustdb.c (verify_own_keys): Don't insert if we are dry running
1141         (check_trust): Ditto.
1142
1143 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1144
1145         * Makefile.am: Support for libtool.
1146
1147         * keygen.c (ask_expire_interval): Hack to allow for an expire date.
1148
1149         * trustdb.c (do_update_trust_record,update_trust_record): Splitted.
1150         (check_trust_record): New.
1151         (check_trust,build_cert_tree): Check the dir record as needed.
1152         (upd_pref_record): Removed.
1153         (make_pref_record): New.
1154         (propagate_validity): Stop as soon as we have enough validity.
1155
1156         * tbdio.c (MAX_CACHE_ENTRIES_HARD): Increased the limit.
1157
1158
1159 Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1160
1161         * g10.c (g10_exit): Dump random stats.
1162
1163         * sig-check.c (check_key_signature,check_key_signature2): Enhanced
1164         version and wrapper for old function.
1165         (do_signature_check,signature_check): Ditto.
1166
1167 Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1168
1169
1170         * keyedit.c (show_key_with_all_names): Print a notice for disabled keys.
1171         (enable_disable_keys): Add functionality
1172         * pkclist.c (edit_ownertrust): preserve disabled state.
1173         (build_pk_list): Skip disabled keys.
1174         * trustdb.c (upd_one_ownertrust): Ditto.
1175         (build_cert_tree): Mask the ownertrust.
1176         (trust_letter): Mask the value.
1177         (do_check): Take disabled flag into account.
1178
1179         * passphrase.c (passphrase_to_dek): Add a pubkey_algo arg and changed
1180         all callers.
1181
1182         * g10.c (utf8_strings): 2 new options.
1183
1184         * trustdb.c (insert_trust_record_by_pk): New, replaces the next one.
1185         (insert_trust_record): Now takes a keyblock as arg.  Changed all
1186         callers to use the appropritae function.
1187
1188         * openfile.c (ask_outfile_name): New.
1189         * plaintext.c (handle_plaintext): Ask for filename if there is
1190         no valid syntax. Don't use fname varbatim but filter it.
1191
1192 Tue Jun 29 21:44:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1193
1194
1195         * trustdb.h (TRUST_FLAG_DISABLED): New.
1196
1197         * status.c (USE_CAPABILITIES): Capabilities support (Remi).
1198
1199         * tdbio.c : Added new fields to the DIR record.
1200         (tdbio_write_record): Fixed the update of the hash tables.
1201         (tdbio_delete_record): Drop the record from the hash tables.
1202         (drop_from_hashtbl): New.
1203
1204         * status.c (cpr_get): Special online help mode.
1205         * helptext.c ("keyedit.cmd"): Removed.
1206         * keyedit.c (keyedit_menu): Use only help system.
1207         (enable_disable_key): New bit doies not yet work.
1208
1209 Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1210
1211
1212         * dearmor.c (enarmor_file): Fixed comment string.
1213         * tdbdump.c (export_ownertrust): Text fix.
1214         * tbio.c (tdbio_invalid): Ditto.
1215
1216         * parse-packet.c (parse_key): Made temp buffer larger.
1217
1218         * Makefile.am (install-data-local): Add missing backslashes
1219
1220 Tue Jun 15 12:21:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1221
1222         * g10.c (main): Made iterated+salted the default S2K method.
1223
1224         * Makefile.am (install-data-local): Use DESTDIR.
1225
1226         * passphrase.c (passphrase_to_dek): Emit missing-passphrase while in
1227         batchmode.
1228
1229         * parse-packet.c (parse_pubkeyenc): Fixed a SEGV.
1230
1231 Mon Jun 14 21:18:54 CEST 1999 Michael Roth <mroth@nessie.de>
1232
1233         * g10.c: New options --openpgp, --no-tty, --emit-version,
1234           --default-comment and --lock-multiple
1235
1236 Thu Jun 10 14:18:23 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1237
1238         * free-packet.c (free_encrypted): Fixed EOF case (Remi).
1239         (free_plaintext): Ditto.
1240
1241         * helptext.c (keyedit.delsig.unknown): New (Remi).
1242         * keyedit.c (print_and_check_one_sig): Add arg print_without_key and
1243         changed all callers to make use of it (Remi):
1244
1245 Tue Jun  8 13:36:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1246
1247         * keylist.c (print_key_data): New and called elsewhere.
1248         * g10.c: New option --with-key-data
1249
1250 Wed Jun  2 14:17:19 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1251
1252         * mainproc.c (proc_tree): Yet another bad hack to cope with
1253         broken pgp2 created detached messages in textmode.
1254
1255 Tue Jun  1 16:01:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1256
1257         * openfile.c (make_outfile_name): New.
1258         * plaintext.c (handle_plaintext): Outputfile is now the inputfile
1259         without the suffix.
1260         * g10.c: New option --use-embedded-filename
1261
1262 Mon May 31 19:41:10 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1263
1264         * g10.c (main): Fix for SHM init (Michael).
1265
1266         * compress.c, encr-data.c, mdfilter.c,
1267           plaintext.c, free-packet.c: Speed patches (Rémi).
1268
1269 Thu May 27 09:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1270
1271         * status.c (cpr_get_answer_yes_no_quit): New.
1272         * keyedit.c (menu_delsig): New.
1273         (check_all_keysigs): Splitted.
1274         (print_and_check_one_sig): New.
1275
1276 Wed May 26 14:36:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1277
1278         * build-packet.c (build_sig_subpkt): Support large packets.
1279         * parse-packet.c (enum_sig_subpkt): Replaces parse_sig_subpkt.
1280         * mainproc.c (print_notation_data): Print all notation packets.
1281         * g10.c (add_notation_data): Add a way to specify the critical flag.
1282         (main): Add option --set-policy-url.
1283         (check_policy_url): Basic checks.
1284         * sign.c (mk_notation_and_policy): Replaces mk_notation.
1285
1286         * parse-packet.c (can_handle_critical): Moved decision whether we can
1287         handle critical subpacket to an extra function.
1288
1289 Tue May 25 19:50:32 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1290
1291         * sign.c (sign_file): Always use compression algo 1 for signed
1292         onyl file becuase we can´ be sure the the verifier supports other
1293         algorithms.
1294
1295         * build-packet.c (build_sig_subpkt): Support for notation data.
1296         * sign.c (sign_file,clearsign_file,make_keysig_packet): Ditto.
1297         (mk_notation): New.
1298         * g10.c (add_notation_data): New and add option -N
1299         * mainproc.c (print_notation_data): New.
1300         (check_sig_and_print): Print any notation data of the signed text.
1301
1302 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1303
1304         * pkclist.c (check_signatures_trust): Print a warning and return
1305         immediateley if opt.always_trust is true.
1306
1307         * g10.c (main): Corrected handling of no-default-keyring
1308
1309         * pkclist.c (algo_available): Disable Twofish until we have settled
1310         how to do the MDC.
1311
1312         * hkp.c: Disable everything for mingw32
1313
1314 Sat May 22 22:47:26 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1315
1316         * mainproc.c (check_sig_and_print): Add sig creation time to the
1317         VALIDSIG status output. Add more info to the ERRSIG output.
1318         * sig-check.c (signature_check): Add sig time after epoch to SIG_ID.
1319
1320         * import.c (import_one): Merge duplicate user IDs.
1321         (collapse_uids): New.
1322         * kbnode.c (move_kbnode): New.
1323         (remove_kbnode): New.
1324         * keyedit.c (keyedit_menu): Call collapse_uids.
1325
1326         * g10.c: new option --logger-fd.
1327
1328         * import.c: s/log_*_f/log_*/
1329
1330 Thu May 20 14:04:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1331
1332         * misc.c (pull_in_libs): do the volatile only for gcc
1333
1334         * sig-check (signature_check): Emit SIG_iD only for classes 0 and 1.
1335
1336         * armor.c (armor_filter): Add detection of PGP2 created clearsigs.
1337         (fake_packet): A tab is not a WS for pgp2 - handle this.
1338         * textfilter.c (len_without_trailing_chars): New.
1339         (copy_clearsig_text): Add pgp2mode arg.
1340         * sign.c (clearsign_file): pass old_style to the above fnc.
1341
1342
1343 Wed May 19 16:04:30 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1344
1345         * g10.c: New option --interactive.
1346
1347         * mainproc.c (proc_plaintext): Add workaround for pgp2 bug
1348         (do_check_sig): Ditto.
1349         (proc_tree): Ditto.
1350         * plaintext.c (do_hash): Ditto.
1351         (hash_datafiles): Ditto, add an arg, changed all callers.
1352         * mdfilter.c (md_filter): Add support for the alternate hash context.
1353
1354 Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1355
1356         * parse-packet.c (parse_encrypted): Support for PKT_ENCRYPTED_MDC.
1357         * build-packet.c (do_encrypted_mdc): Ditto.
1358         * cipher.c (write_header): Add mdc hashing.
1359         (cipher_filter): write out the hash.
1360         * mainproc.c (do_proc_packets): Add PKT_ENCRYPTED_MDC.
1361         * encr-data.c (decrypt_data): Add mdc hashing.
1362         (mdc_decode_filter): New.
1363
1364         * parse-packet.c (parse_sig_subpkt): Fixed stupid bug for subpkt
1365         length calculation
1366         (parse_signature): Fixed even more stupid bug.
1367
1368 Sat May  8 19:28:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1369
1370         * build-packet.c (do_signature): Removed MDC hack.
1371         * encode.c (encode_crypt_mdc): Removed.
1372         * mainproc.c (do_check_sig): Removed MDC hack.
1373         (check_sig_and_print): Ditto.
1374         * parse-packet.c (parse_signature): Ditto.
1375         * sig-check.c (mdc_kludge_check): Ditto.
1376         * free-packte.c (copy_signature, free_seckey_enc): Ditto.
1377
1378         * parse-packet.c (parse_signature,parse_key): Store data of
1379         unknown algorithms with mpi_set_opaque inseatd of the old
1380         faked data stuff.
1381         (read_rest): Removed.
1382         (read_rest2): Renamed to read_rest
1383         * build-packet.c (write_fake_data): Use mpi_get_opaque.
1384         * free-packet.c (cp_fake_data): Removed and cahnged all callers
1385         to use mpi_copy.
1386         (free_pubkey_enc,free_seckey_enc,release_public_key_parts,
1387          release_secret_key_parts): Use mpi_free for opaque data.
1388
1389 Thu May  6 14:18:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1390
1391         * trustdb.c (check_trust): Check for revoked subkeys.
1392         * pkclist.c (do_we_trust): Handled revoked subkeys.
1393         (do_we_trust_pre): Ditto.
1394         (check_signatures_trust): Ditto.
1395
1396         * build-packet.c (hash_public_key): Fix for ancient g10 keys.
1397
1398         * mainproc.c (do_proc_packets): Return EOF if no data has been read.
1399         * g10.c (main): Catch errors for default operation.
1400
1401 Thu Apr 29 12:29:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1402
1403         * sign.c (sign_file): Fixed hashing in case of no subpackets.
1404         (clearsign_file): Ditto.
1405         (make_keysig_packet): Ditto.
1406
1407 Wed Apr 28 13:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1408
1409         * keyedit.c (keyedit_menu): Add new command revkey.
1410         * (menu_revkey): New.
1411
1412
1413 Mon Apr 26 17:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1414
1415         * parse-packet.c (parse_signature): Add the MDC hack.
1416         * build-packet.c (do_signature): Ditto.
1417         * free-packet.c (free_seckey_enc,copy_signature,cmp_signatures): Ditto.
1418         * mainproc.c (do_check_sig): Ditto.
1419         * sig-check.c (mdc_kludge_check): New.
1420         * encode.c (encrypt_mdc_file): New.
1421
1422         * keyedit.c (check_all_keysigs): List revocations.
1423         * (menu_revsig): New.
1424         * sign (make_keysig_packet): Support for class 0x30.
1425
1426 Sun Apr 18 20:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1427
1428         * pkclist.c (select_algo_from_prefs): Fixed the case that one key
1429         has no preferences (Remi Guyomarch).
1430
1431         keylist.c (list_keyblock): ulti_hack to propagate trust to all uids.
1432
1433 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1434
1435         * seckey-cert.c (do_check): Use real IV instead of a 0 one, so that
1436         it works even if the length of the IV doesn't match the blocksize.
1437         Removed the save_iv stuff.
1438         (protect_secret_key): Likewise.  Create the IV here.
1439         * packet.h (PKT_secret_key): Increased size of IV field and add a
1440         ivlen field.
1441         * parse-packet.c (parse_key): Use the len protect.ivlen.
1442         * build-packet.c (do_secret_key). Ditto.
1443
1444         * getkey.c (key_byname): Close keyblocks.
1445
1446         * Makefile.am (gpgm): Removed this
1447         * g10.c: Merged gpg and gpgm
1448
1449         * import.c (import): Utilize option quiet.
1450         * tdbio.c (tdbio_set_dbname): Ditto.
1451         * ringedit.c (add_keyblock_resource,keyring_copy): Ditto.
1452
1453         * keyedit.c (sign_uids): Add some batch support.
1454
1455         * g10.c (main): add call to tty_batchmode.
1456
1457 Fri Apr  9 12:26:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1458
1459         * status.c (write_status_text): Some more status codes.
1460         * passphrase_to_dek (passphrase_to_dek): add a status code.
1461         * seckey_cert.c (check_secret_key): Likewise.
1462
1463         * encr-data.c (decrypt_data): Reverse the last changes
1464         * cipher.c (write_header): Ditto.
1465
1466         * parse-packet.c (parse_key): Dropped kludge for ancient blowfish mode.
1467
1468 Thu Apr  8 09:35:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1469
1470         * mainproc.c (proc_encrypted): Add a new status output
1471         * passphrase.c (passphrase_to_dek): Ditto.
1472         * status.h status.c: Add new status tokens.
1473
1474 Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1475
1476         * encr-data.c (decrypt_data): Fixes for 128 bit blocksize
1477         * cipher.c (write_header): Ditto.
1478         * seckey-cert.c (do_check): Ditto.
1479         (protect_secret_key). Ditto.
1480         * misc.c (print_cipher_algo_note): Twofish is now a standard algo.
1481
1482         * keygen.c (do_create): Fixed spelling (Gaël Quéri)
1483         (ask_keysize): Only allow keysizes up to 4096
1484
1485         * ringedit.c (add_keyblock_resource): chmod newly created secrings.
1486
1487         * import.c (delete_inv_parts): Fixed accidently deleted subkeys.
1488
1489 Tue Apr  6 19:58:12 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1490
1491         * armor.c: Removed duped include (John Bley)
1492         * mainproc.c: Ditto.
1493
1494         * build-packet.c (hash_public_key): Fixed hashing of the header.
1495
1496         * import.c (delete_inv_parts): Allow import of own non-exportable sigs.
1497
1498 Sat Mar 20 13:59:47 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1499
1500         * armor.c (fake_packet): Fix for not not-dash-escaped
1501
1502 Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1503
1504         * g10.c (main): Added command --recv-keys
1505         * hkp.c (hkp_import): New.
1506
1507 Wed Mar 17 13:09:03 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1508
1509         * trustdb.c (check_trust): add new arg add_fnc and changed all callers.
1510         (do_check): Ditto.
1511         (verify_key): Ditto.
1512         (propagate_validity): Use the new add_fnc arg.
1513         (print_user_id): Add the FILE arg.
1514         (propagate_ownertrust): New.
1515         * pkclist.c (add_ownertrust_cb): New and changed the add_ownertrust
1516         logic.
1517
1518         * getkey.c (get_keyblock_bylid): New.
1519         * trustdb.c (print_uid_from_keyblock): New.
1520         (dump_tn_tree_with_colons): New.
1521         (list_trust_path): Add colon print mode.
1522
1523         * trustdb.c (insert_trust_record): Always use the primary key.
1524
1525         * encode.c (encode_simple): Added text_mode filter (Rémi Guyomarch)
1526         (encode_crypt): Ditto.
1527
1528         * mainproc.c (proc_pubkey_enc): Added status ENC_TO.
1529         * armor.c (armor_filter): Added status NODATA.
1530         * passphrase.c (passphrase_to_dek): Always print NEED_PASSPHRASE
1531         * seckey_cert.c (check_secret_key): Added BAD_PASS status.
1532
1533         * g10.c (main): Set g10_opt_homedir.
1534
1535 Sun Mar 14 19:34:36 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1536
1537         * keygen.c (do_create): Changed wording of the note (Hugh Daniel)
1538
1539 Thu Mar 11 16:39:46 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1540
1541         * tdbdump.c: New
1542
1543         * trustdb.c (walk_sigrecs,do_list_sigs,list_sigs,
1544         list_records,list_trustdb,export_ownertrust,import_ownertrust): Moved
1545         to tdbdump.c
1546         (init_trustdb): renamed to setup_trustdb.  Changed all callers.
1547         (do_init_trustdb): renamed to init_trustdb().
1548         * trustdb.c (die_invalid_db): replaced by tdbio_invalid.
1549         * tdbio.c (tdbio_invalid): New.
1550
1551         * import.c (delete_inv_parts): Skip non exportable signatures.
1552         * keyedit.c (sign_uid_mk_attrib): New.
1553         (sign_uids): Add the local argument.
1554         (keyedit_menu): New "lsign" command.
1555         * trustdb.c (register_trusted_key): Removed this and all related stuff.
1556         * g10.c (oTrustedKey): Removed option.
1557
1558         * tdbio.h (dir.valcheck): New trustdb field.
1559         * tdbio.c: Add support for this field
1560         (tdbio_read_modify_stamp): New.
1561         (tdbio_write_modify_stamp): New.
1562         * trustdb.c (do_check): Check against this field. Removed cache update.
1563         (verify_key): Add cache update.
1564         (upd_uid_record): Some functional changes.
1565         (upd_cert_record): Ditto
1566
1567 Wed Mar 10 11:26:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1568
1569         * keylist.c (list_keyblock): Fixed segv in uid. Print 'u' as
1570         validity of sks.
1571
1572 Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1573
1574         * getkey.c (classify_user_id): Add new mode 12 (#<lid>).
1575
1576         * seckey-cert.c (check_secret_key): replaced error by info.
1577
1578         * trustdb.c (query_trust_info): Add another arg, changed all callers.
1579         (check_trust): Ditto.
1580         (do_check): Ditto.
1581         (verify_key): Handle namehash.
1582         * keylist.c (list_keyblock): print trust info for user ids.
1583
1584         * sig-check.c (signature_check): Add sig-created to status output.
1585
1586 Tue Mar  2 16:44:57 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1587
1588         * textfilter.c (copy_clearsig_text): New.
1589         (clearsign): Removed.
1590         * sign.c (clearsign_file): does not use textfiler anymore.
1591
1592         * keygen.c (ask_user_id): print a note about the used charset.
1593
1594 Tue Mar  2 10:38:42 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1595
1596         * sig-check.c (signature_check): sig-id now works for all algos.
1597
1598         * armor.c (armor_filter): Fixed armor bypassing.
1599
1600 Sun Feb 28 19:11:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1601
1602         * keygen.c (ask_user_id): Don't change the case of email addresses.
1603         (has_invalid_email_chars): Adjusted.
1604
1605         * keylist.c (list_one): Really list serect keys (Remi Guyomarch)
1606
1607         * keyedit.c (menu_select_uid): Add some braces to make egcs happy.
1608         (menu_select_key): Ditto.
1609
1610         * mainproc.c (do_proc_packets): List sym-enc packets (Remi Guyomarch)
1611
1612 Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1613
1614         * pkclist.c (build_pk_list): Return error if there are no recipients.
1615
1616         * sig-check.c (signature_check): New signature id feature.
1617         * armor.c (make_radic64_string): New.
1618
1619         * mainproc.c (proc_pubkey_enc): early check for seckey availability.
1620
1621         * pkclist.c (do_we_trust_pre): print user id before asking.
1622
1623         * ringedit.c (add_keyblock_resource,get_keyblock_handle): Cleaner
1624         handling of default resource.
1625
1626
1627 Thu Feb 25 18:47:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1628
1629         * pkclist.c (algo_available): New.
1630         (select_algo_from_prefs): Check whether algo is available.
1631
1632         * ringedit.c (keyring_copy): Take care of opt.dry_run.
1633         (do_gdbm_store): Ditto.
1634         * openfile.c (open_outfile). Ditto.
1635         (copy_options_file): Ditto.
1636         * trustdb.c (update_trustdb): Ditto.
1637         (clear_trust_checked_flag): Ditto.
1638         (update_trust_record): Ditto.
1639         (insert_trust_record): Ditto.
1640
1641 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1642
1643         * keylist.c (secret_key_list): Now really list the secret key.
1644
1645         * trustdb.c (do_init_trustdb): New. Init is now deferred.
1646
1647 Mon Feb 22 20:04:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1648
1649         * getkey.c (lookup_sk): Return G10ERR_NO_SECKEY and not x_PUBKEY.
1650
1651 Fri Feb 19 15:49:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1652
1653         * pkclist.c (select_algo_from_prefs): retrieve LID if not there.
1654
1655         * armor.c (fake_packet): Replaced ugly lineending handling.
1656
1657         * g10.c (oNoEncryptTo): New.
1658         * pkclist.c (build_pk_list): Implemented this option.
1659
1660         * g10.c (main): Greeting is now printed to stderr and not to tty.
1661         Use add_to_strlist() instead of direct coding.
1662
1663         * import.c (import): Use iobuf_push_filter2.
1664
1665         * mainproc.c (check_sig_and_print): Print all user ids
1666         for good signatures.
1667         * getkey.c (get_pubkeyblock): New.
1668
1669         * import.c (chk_self_sigs): Fixed SEGV for unbounded class 0x18 keys.
1670         (delete_inv_parts): Delete special marked packets.
1671
1672 Tue Feb 16 14:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1673
1674         * g10.c (main): New option --encrypt-to
1675
1676         * pkclist.c (build_pk_list): Implemented encrypt-to.
1677
1678         * parse-packet.c (parse_user_id): Removed the hack to work with
1679         utf-8 strings.
1680
1681         * g10.c (main): Install lockfile cleanup handler.
1682         * tdbio.c (cleanup): Removed: this is now handled by dotlock.
1683
1684 Sat Feb 13 14:13:04 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1685
1686         * tdbio.c (tdbio_set_dbname): Init lockhandle for a new trustdb
1687
1688 Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1689
1690         * g10.c (main): check for development version now in configure
1691
1692         * tdbio.c (tdbio_write_record): Add uid.validity
1693         (tdbio_read_record) : Ditto.
1694         (tdbio_dump_record) : Ditto.
1695
1696         * keygen.c (keygen_add_std_prefs): Replaced Blowfish by Twofish,
1697         removed MD5 and Tiger.
1698         * pubkey-enc.c (get_it): Suppress warning about missing Blowfish
1699         in preferences in certain cases.
1700
1701         * ringedit.c (lock_rentry,unlock_rentry): New.
1702
1703         * getkey.c (key_byname): Pass ret_kb down to lookup_xx.
1704
1705         * armor.c (armor_filter): No output of of empty comment lines.
1706         Add option --no-version to suppress the output of the version string.
1707
1708         * getkey.c: Release the getkey context for auto context variables.
1709
1710 Sun Jan 24 18:16:26 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1711
1712         * getkey.c: Changed the internal design to allow simultaneous
1713         lookup of multible user ids
1714         (get_pubkey_bynames): New.
1715         (get_seckey_bynames): New.
1716         (get_seckey_next): New.
1717         (get_seckey_end): New.
1718         * keylist.c (list_one): Use the new functions.
1719
1720         * keylist.c (list_keyblock): add a newline for normal listings.
1721
1722         * g10.c (--recipient): New option name to replace --remote-user
1723
1724
1725 Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1726
1727         * textfilter.c: Mostly rewritten
1728         * plaintext.c (handle_plaintext): Use now text_filter semantics.
1729
1730 Tue Jan 19 19:34:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1731
1732         * export.c (export_pubkeys_stream): New.
1733         (do_export_stream): New.
1734         * g10.c (aSendKeys): New command.
1735         * hkp.c (hkp_export): New.
1736
1737         * compress.c (do_uncompress): Hack for algo 1 and 1.1.3
1738
1739 Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1740
1741         * textfilter.c (text_filter): Now uses iobuf_read_line().
1742         (read_line): Removed.
1743
1744         * armor.c (trim_trailing_spaces): Removed and replaced
1745         by trim_trailing_ws from libutil
1746
1747 Sat Jan 16 12:03:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1748
1749         * hkp.c (hkp_ask_import): Use only the short keyid
1750
1751 Sat Jan 16 09:27:30 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1752
1753         * import.c (import_key_stream): New
1754         (import): New, moved most of import_keys here.
1755         * g10.c: New option --keyserver
1756         * mainproc.c (check_sig_and_print): Hook to import a pubkey.
1757
1758         * pref.c pref.h : Removed
1759
1760         * hkp.c hkp.h: New
1761
1762 Wed Jan 13 14:10:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1763
1764         * armor.c (radix64_read): Print an error if a bad armor was detected.
1765
1766 Wed Jan 13 12:49:36 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1767
1768         * armor.c (radix64_read): Now handles malformed armors produced
1769         by some buggy MUAs.
1770
1771 Tue Jan 12 11:17:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1772
1773         * ringedit.c (find_keyblock_bysk): New.
1774
1775         * skc_list.c (is_insecure): New.
1776         (build_sk_list): usage check for insecure keys.
1777
1778         * import.c (chk_self_sigs): Add handling for subkeys.
1779         (delete_inv_parts): Skip unsigned subkeys
1780
1781         * sig-check.c (do_check): Print info if the signature is older
1782         than the key.
1783         * keygen.c (generate_subkeypair): Fail on time warp.
1784         * sign.c (do_sign): Ditto.
1785
1786 Sun Jan 10 15:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1787
1788         * armor.c (fake_packet): Fixed not-dash-escaped bug.
1789
1790 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1791
1792         * sig-check.c (do_check): Output time diff on error
1793
1794         * status.c (STATUS_VALIDSIG): New.
1795         (is_status_enabled): New.
1796         * mainproc.c (check_sig_and_print): Issue that status message.
1797
1798         * plaintext.c (special_md_putc): Removed
1799
1800         * armor.c (armor_filter): print error for truncated lines.
1801
1802         * free-packet.c (free_encrypted): Revomed call to set_block_mode.
1803         (free_plaintext): Ditto.
1804
1805 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1806
1807         * pkclist.c (add_ownertrust): Fixed return value.
1808
1809         * encr-data.c (decrypt_data): Disabled iobuf_set_limit and
1810         iobuf_pop_filter stuff.
1811         * compress.c (handle_compressed): Disabled iobuf_pop_filter.
1812
1813         * packet.h (PKT_secret_key): Add is_primary flag.
1814         * parse-packet.c (parse_key): Set this flag.
1815         * passphrase.c (passphrase_to_dek): Kludge to print the primary
1816         keyid - changed the API: keyid must now hold 2 keyids.
1817         * getkey.c (get_primary_seckey): New.
1818         * seckey-cert.c (do_check): pass primary keyid to passphrase query
1819
1820         * tbdio.c (open_db): removed the atexit
1821         (tdbio_set_dbname): and moved it to here.
1822
1823         * armor.c: Rewrote large parts.
1824
1825 Tue Dec 29 19:55:38 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1826
1827         * revoke.c (gen_revoke): Removed compression.
1828
1829         * pkclist.c (do_we_trust_pre): special check for revoked keys
1830
1831         * trustdb.c (update_trust_record): Fixed revoke flag.
1832
1833 Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1834
1835         * misc.c (disable_core_dumps): Check for EINVAL (Atari)
1836
1837         * getkey (merge_one_pk_and_selfsig): Fixed search of expiredate.
1838         (merge_keys_and_selfsig): Ditto.
1839
1840         * free-packet.c (cmp_public_keys): cmp expire only for v3 packets
1841         (cmp_secret_keys): Ditto.
1842         (cmp_public_secret_key): Ditto.
1843
1844 Wed Dec 23 17:12:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1845
1846         * armor.c (find_header): Reset not_dashed at every header
1847
1848 Wed Dec 23 13:18:14 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1849
1850         * pkclist.c (add_ownertrust): Refresh validity values.
1851
1852         * trustdb.c (enum_cert_paths_print): New arg refresh.
1853
1854         * ringedit.c: Fixed problems fix keyrings
1855         * parse-packet.c (dbg_parse_packet): New debug functions.
1856
1857         * getkey.c (getkey_disable_caches): New.
1858         * import.c (import_keys): Disable caches.
1859
1860 Thu Dec 17 18:31:15 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1861
1862         * misc.c (trap_unaligned): Only for glibc 1
1863
1864         * sign.c (write_dash_escaped): Now escapes "From " lines
1865         * g10.c: New option --escape-from-lines
1866
1867         * trustdb.c (sort_tsl_list): New
1868         (list_trust_path): Now prints sorted list.
1869         (enum_cert_paths): Likewise.
1870         (enum_cert_paths_print): New.
1871         (print_paths): New printing format.
1872         * pkclist.c (add_ownertrust): New arg quit.
1873         (edit_ownertrust): New quit selection and does not query
1874         the recipients ownertrust anymore.
1875         (add_ownertrust): Print the ceritficate path.
1876
1877
1878 Mon Dec 14 21:18:49 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1879
1880         * parse-packet.c (parse_signature): Now checks for critical bit
1881         (parse_sig_subpkt): Splitted.
1882         (parse_one_sig_subpkt): New.
1883         * sig-check.c (do_check): handle critical bit.
1884
1885 Sun Dec 13 14:10:56 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1886
1887         * pcklist.c (select_algo_from_prefs): Preferences should
1888         now work (lost the != ? )
1889
1890 Thu Dec 10 20:15:36 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1891
1892         * ringedit.c (gdbm_store): Fix for inserts
1893
1894         * g10.c (main): New option --export-all
1895         * export.c (export_pubkeys): New arg.
1896         (do_export): Now may skip old keys.
1897
1898         * status.c: Minor patches for Sun's cc
1899
1900         * keygen.c (ask_algo): Disabled v3 ElGamal choice, rearranged
1901          the numbers.  Add a warning question when a sign+encrypt key
1902          is selected.
1903
1904         * g10.c (do_not_use_RSA): Removed.
1905         * misc.c (print_pubkey_algo_note): New as replacement for the
1906         do_not_use_RSA() and chnaged all callers.
1907         (print_cipher_algo_note): New.
1908         (print_hash_algo_note): New.
1909
1910         * cipher.c (write_header): Add a call to print_cipher_algo_note.
1911         * seckey-cert.c (protect_secret_key): Ditto
1912         * sign.c (do_sign): Add a call to print_digest_algo_note.
1913
1914         * getkey.c (get_long_user_id_string): New.
1915         * mainproc.c (check_sig_and_print): Changed the format of the
1916         status output.
1917
1918         * encrypt.c (write_pubkey_enc_from_list): print used symmetric cipher.
1919
1920         * pkclist.c (do_we_trust): Changed a message.
1921
1922 Wed Dec  9 13:41:06 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1923
1924         * misc.c (trap_unaligned) [ALPHA]: Only if UAC_SIGBUS is defined.
1925
1926         * sign.c (write_dash_escaped): Add the forgotten patch by Brian Moore.
1927
1928         * compress.c (do_uncompress): Fixed the inflating bug.
1929
1930
1931 Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1932
1933         * trustdb.c (upd_uid_record): Now uses the newest self-signature
1934         (insert_trust_record): Now calls update with recheck set to true.
1935         (register_trusted_key): New.
1936         (verify_own_keys): Enhanced by list of trusted keys.
1937
1938         * g10.c (main): Print a warning when a devel version is used.
1939         (main): New option --trusted-key
1940
1941         * import.c (merge_blocks): Fixed merging of new user ids and
1942         added merging of subkeys.
1943         (append_uid): Ditto.
1944         (merge_keysig): New.
1945         (append_key): New.
1946         * getkey.c (merge_one_pk_and_selfsig): Get the expiration time
1947         from the newest self-signature.
1948         (merge_keys_and_selfsig): Ditto.
1949
1950         * free-packet.c (cmp_secret_key): New.
1951
1952
1953 Fri Nov 27 21:37:41 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1954
1955         * g10.c: New option --lock-once
1956         * tdbio.c (open_db): Add an atexit
1957         (cleanup): New.
1958         (tdbio_sync): Add locking.
1959         (tdbio_end_transaction): Ditto.
1960         (put_record_into_cache): Ditto.
1961         * ringedit.c (keyring_copy): Ditto.
1962         (cleanup): New.
1963         (add_keyblock_resource): Add an atexit.
1964
1965 Fri Nov 27 15:30:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1966
1967          * armor.c (find_header): Another fix for clearsigs.
1968
1969 Fri Nov 27 12:39:29 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1970
1971
1972         * status.c (display_help): Removed.
1973         * helptext.c: New and removed the N_() from all cpr_gets.
1974
1975
1976 Fri Nov 20 16:54:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
1977
1978         * g10.c (main): New option --not-dash-escaped
1979         * sign.c (write_dashed_escaped): Ditto.
1980         * armor.c (find_header): Support for NotDashEscaped header.
1981
1982         * getkey.c: print "disabled cache.." only if verbose is used.
1983
1984 Thu Nov 19 07:17:31 1998  Werner Koch  <werner.koch@guug.de>
1985
1986         * parse-packet.c (dump_sig_subpkt): Fixed expire listing
1987         * getkey.c (merge_keys_and_selfsig): Fixed expire calculation.
1988         (merge_one_pk_and_selfsig): Ditto.
1989         * keyedit.c (menu_expire). Ditto.
1990         * keygen.c (keygen_add_key_expire): Ditto.
1991         (ask_expire_interval): New and changed all local function to use
1992         this instead.
1993         (keygen_add_key_expire): Opaque should now be a public key;
1994         changed all callers.
1995
1996         * parse.packet.c (parse): use skip_rest to skip packets.
1997
1998         * keyedit.c (keyedit_menu): New arg for cmdline cmds.
1999
2000 Wed Nov 18 20:33:50 1998  Werner Koch  (wk@isil.d.shuttle.de)
2001
2002         * trustdb.c (check_trustdb): Now rechecks all gived userids.
2003         (collect_paths): Some fixes.
2004         (upd_pref_records): Skips empty items, evaluate all items.
2005
2006         * parse-packet.c (dump_sig_subpkt): Better listing of prefs.
2007         (skip_packet): Now knows about marker packet
2008
2009         * g10.c: removed cmd "--edit-sig".
2010
2011         * pubring.asc: Updated.
2012
2013 Sat Nov 14 14:01:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
2014
2015         * g10.c (main): Changed syntax of --list-trust-path
2016         * trustdb.c (list_trust_path): Replaced max_depth by
2017         opt.max_cert_depth
2018
2019 Fri Nov 13 07:39:58 1998  Werner Koch  <werner.koch@guug.de>
2020
2021         * trustdb.c (collect_paths): Removed a warning message.
2022         (enum_trust_web): Removed.
2023         (enum_cert_paths): New.
2024         * pkclist.c (add_ownertrust): Changed to use enum_cert_paths.
2025         (edit_ownertrust): Now list ceritficates on request.
2026         (show_paths): New.
2027
2028 Wed Nov 11 18:05:44 1998  Werner Koch  <werner.koch@guug.de>
2029
2030         * g10.c (main): New option --max-cert-depth
2031         * tdbio.h: add new fields to ver and dir record.
2032         * tdbio.c: read/write/dump of these fields.
2033         (tdbio_db_matches_options): New.
2034         * trustdb.c: replaced MAC_CERT_DEPTH by opt.max_cert_depth.
2035         (do_check): cache validity and changed other functions
2036         to reset the cached value.
2037
2038         * keylist.c (list_one): Now lists the ownertrust.
2039         * mainproc.c (list_node): Ditto.
2040
2041 Tue Nov 10 10:08:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2042
2043         * g10.c (g10_exit): Now looks at the new g10_errors_seen.
2044         * mainproc.c (check_sig_and_print): Sets g10_errors_seen.
2045
2046         * *.c : i18n many more strings.
2047
2048         * ringedit.c (locate_keyblock_by_keyid): Add HAVE_LIBGDBM
2049         (locate_keyblock_by_fpr): Ditto.
2050
2051         * g10.c (main): removed unsused "int errors".
2052         (main): Add new option --charset.
2053
2054         * g10.c (main): special message for the unix newbie.
2055
2056 Mon Nov  9 07:17:42 1998  Werner Koch  <werner.koch@guug.de>
2057
2058         * getkey.c (finish_lookup): Kludge to prefere algo 16.
2059
2060         * trustdb.c (new_lid_table): Clear cached item.
2061
2062         * status.c (cpr_get_utf8): New.
2063         * pkclist.c (build_pk_list): Uses this.
2064
2065 Sun Nov  8 17:20:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
2066
2067         * mainproc.c (check_sig_and_print): Why did I use strlen()-1
2068         in the printf? - This truncated the TZ.
2069
2070 Sat Nov  7 15:57:28 1998  me,,,  (wk@tobold)
2071
2072         * getkey.c (lookup): Changes to support a read_next.
2073         (get_pubkey): Fixed a memory leak.
2074
2075         * keylist.c (list_one): Now lists all matching user IDs.
2076
2077 Tue Nov  3 16:19:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
2078
2079         * keygen.c (ask_user_id): Now converted to UTF-8
2080
2081         * g10.c (main): Kludge for pgp clearsigs and textmode.
2082
2083 Fri Oct 30 16:40:39 1998  me,,,  (wk@tobold)
2084
2085         * signal.c (block_all_signals): New.
2086         (unblock_all_signals): New
2087         * tdbio.c (tdbio_end_transaction): Now blocks all signals.
2088
2089         * trustdb.c (new_lid_table): Changed the representation of the
2090         former local_lid_info stuff.
2091
2092         * trustdb.c (update_trust_record): Reorganized the whole thing.
2093         * sig-check.c (check_key_signature): Now handles class 0x28
2094
2095
2096 Wed Oct 28 18:56:33 1998  me,,,  (wk@tobold)
2097
2098         * export.c (do_export): Takes care of the exportable sig flag.
2099
2100 Tue Oct 27 14:53:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
2101
2102         * trustdb.c (update_trust_record): New "fast" parameter.
2103
2104 Sun Oct 25 19:32:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
2105
2106         * openfile.c (copy_options_File): New.
2107         * ringedit.c (add_keyblock_resource): Creates options file
2108         * tdbio.c (tdbio_set_dbname): Ditto.
2109
2110 Sat Oct 24 14:10:53 1998  brian moore <bem@cmc.net>
2111
2112         * mainproc.c (proc_pubkey_enc): Don't release the DEK
2113         (do_proc_packets): Ditto.
2114
2115 Fri Oct 23 06:49:38 1998  me,,,  (wk@tobold)
2116
2117         * keyedit.c (keyedit_menu): Comments are now allowed
2118
2119         * trustdb.c: Rewrote large parts.
2120
2121
2122 Thu Oct 22 15:56:45 1998  Michael Roth  (mroth@nessie.de)
2123
2124         * encode.c: (encode_simple): Only the plain filename without
2125         a given directory is stored in generated packets.
2126         (encode_crypt): Ditto.
2127
2128         * sign.c: (sign_file) Ditto.
2129
2130
2131 Thu Oct 22 10:53:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
2132
2133         * trustdb.c (update_trust_record): Add new optional arg.
2134
2135         * import.c (import_keys): Add statistics output
2136         * trustdb.c (update_trustdb): Ditto.
2137         (insert_trustdb): Ditto.
2138
2139         * tdbio.c (tdbio_begin_transaction): New.
2140         (tdbio_end_transaction): New.
2141         (tdbio_cancel_transaction): New.
2142
2143         * g10.c (main): New option --quit.
2144
2145         * trustdb.c (check_hint_sig): No tests for user-id w/o sig.
2146         This caused an assert while checking the sigs.
2147
2148         * trustdb.c (upd_sig_record): Splitted into several functions.
2149
2150         * import.c (import_keys): New arg "fast".
2151         * g10.c (main): New command --fast-import.
2152
2153 Wed Oct 21 18:19:36 1998  Michael Roth <mroth@nessie.de>
2154
2155         * ringedit.c (add_keyblock_resource): Directory is now created.
2156         * tdbio.c (tdbio_set_dbname): New info message.
2157
2158 Wed Oct 21 11:52:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
2159
2160         * trustdb.c (update_trustdb): released keyblock in loop.
2161
2162         * keylist.c (list_block): New.
2163         (list_all): Changed to use list_block.
2164
2165         * trustdb.c: Completed support for GDBM
2166
2167         * sign.c (only_old_style): Changed the way force_v3 is handled
2168         (sign_file): Ditto.
2169         (clearsign_file): Ditto.
2170
2171         * keygen.c (has_invalid_email_chars): Splitted into mailbox and
2172         host part.
2173
2174         * keylist.c (list_one): Add a merge_keys_and_selfsig.
2175         * mainproc.c (proc_tree): Ditto.
2176
2177 Sun Oct 18 11:49:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2178
2179         * sign.c (only_old_style): Add option force_v3_sigs
2180         (sign_file): Fixed a bug in sig->version
2181         (clearsign_file): Ditto.
2182
2183         * parse-packet.c (dump_sig_subpkt): New
2184
2185         * keyedit.c (menu_expire): New.
2186         * free-packet.c (cmp_signatures): New
2187
2188
2189 Sat Oct 17 10:22:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
2190
2191         * armor.c: changed output line length from 72 to 64.
2192
2193         * keyedit.c (fix_keyblock): New.
2194
2195 Fri Oct 16 10:24:47 1998  Werner Koch  (wk@isil.d.shuttle.de)
2196
2197         * trustdb.c: Rewrote most.
2198         * tdbio.c: Add cache and generalized hash tables.
2199
2200         * options.h (ENABLE_COMMENT_PACKETS): New but undef'ed.
2201         * encode.c, sign.c, keygen.c: Disabled comment packets.
2202         * export.c (do_export): Comment packets are never exported,
2203         except for those in the secret keyring.
2204
2205         * g10.c (main): Removed option do-no-export-rsa; should be
2206         be replaced by a secpial tool.
2207         * export.c (do_export): Removed the code for the above option.
2208
2209         * armor.c (find_header): Support for new only_keyblocks.
2210         * import.c (import_keys): Only looks for keyblock armors.
2211
2212         * packet.h: replaced valid_days by expiredate and changed all users.
2213         * build-packet.c (do_public_key): calculates valid-days
2214         (do_secret_key): Ditto.
2215         * parse-packet.c (parse_key): expiredate is calucated from the
2216         valid_period in v3 packets.
2217         * keyid.c (do_fingerprint_md): calculates valid_dates.
2218
2219         * keygen.c (add_key_expire): fixed key expiration time for v4 packets.
2220
2221         * armor.c (find_header): A LF in the first 28 bytes
2222         was skipped for non-armored data.
2223
2224 Thu Oct  8 11:35:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
2225
2226         * armor.c (is_armored): Add test on old comment packets.
2227
2228         * tdbio.c (tdbio_search_dir_bypk): fixed memory leak.
2229
2230         * getkey.c: Changed the caching algorithms.
2231
2232 Wed Oct  7 19:33:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2233
2234         * kbnodes.c (unused_nodes): New.
2235
2236 Wed Oct  7 11:15:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
2237
2238         * keyedit.c (sign_uids): Fixed a problem with SK which could caused
2239         a save of an unprotected key.
2240         (menu_adduid): Ditto.
2241
2242         * keyedit.c (keyedit_menu): Prefs are now correctly listed for
2243         new user ids.
2244
2245         * trustdb.c (update_trust_record): New.
2246         (insert_trust_record): Now makes use of update_trust_record.
2247
2248 Tue Oct  6 16:18:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2249
2250         * trustdb.c (read_record): replaces most of the tdbio_read_records.
2251         (write_record): Ditto.
2252
2253 Sat Oct  3 11:01:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
2254
2255         * keygen.c (ask_alogo): enable ElGamal enc-only only for addmode.
2256
2257 Wed Sep 30 10:15:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2258
2259         * import.c (import_one): Fixed update of wrong keyblock.
2260
2261 Tue Sep 29 08:32:08 1998  me,,,  (wk@tobold)
2262
2263         * mainproc.c (proc_plaintext): Display note for special filename.
2264         * plaintext.c (handle_plaintext): Suppress output of special file.
2265
2266 Mon Sep 28 12:57:12 1998  Werner Koch  (wk@isil.d.shuttle.de)
2267
2268         * g10.c (verify_own_keys): Add warning if a key is not protected.
2269
2270         * passphrase (hash_passphrase): Fixed iterated+salted mode and
2271         setup for keysizes > hashsize.
2272
2273         * g10.c (main): New options: --s2k-{cipher,digest,mode}.
2274
2275 Fri Sep 25 09:34:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
2276
2277         * g10.c: Chnaged some help texts.
2278
2279 Tue Sep 22 19:34:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
2280
2281         * passphrase.c (read_passphrase_from_fd): fixed bug for long
2282         passphrases.
2283
2284 Mon Sep 21 11:28:05 1998  Werner Koch  (wk@(none))
2285
2286         * getkey.c (lookup): Add code to use the sub key if the primary one
2287         does not match the usage.
2288
2289         * armor.c (armor_filter): New error message: no valid data found.
2290         (radix64_read): Changes to support multiple messages.
2291         (i18n.h): New.
2292         * mainproc.c (add_onepass_sig): bug fix.
2293
2294 Mon Sep 21 08:03:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
2295
2296         * pkclist.c (do_we_trust): Add keyid to most messages.
2297
2298         * passphrase.c (read_passphrase_from_fd): New.
2299         (have_static_passphrase): New
2300         (get_passphrase_fd): Removed.
2301         (set_passphrase_fd): Removed.
2302         * g10.c (main): passphrase is now read here.
2303
2304         * keyedit.c (keyedit_menu): "help" texts should now translate fine.
2305
2306 Mon Sep 21 06:40:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
2307
2308         * encode.c (encode_simple): Now disables compression
2309         when --rfc1991 is used.
2310         (encode_crypt): Ditto.
2311
2312 Fri Sep 18 16:50:32 1998  Werner Koch  (wk@isil.d.shuttle.de)
2313
2314         * getkey.c (merge_key_and_selfsig): New.
2315
2316 Fri Sep 18 10:20:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
2317
2318         * pkclist.c (select_algo_from_prefs): Removed 3DES kludge.
2319
2320         * seskey.c (make_session_key): Fixed SERIOUS bug introduced
2321         by adding the weak key detection code.
2322
2323         * sign.c (sign_file): Changed aremor header in certain cases.
2324
2325 Tue Sep 15 17:52:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
2326
2327         * mainproc.c (check_sig_and_print): Replaced ascime by asctimestamp.
2328
2329 Mon Sep 14 11:40:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
2330
2331         * seskey.c (make_session_key): Now detects weak keys.
2332
2333         * trustdb (clear_trust_checked_flag): New.
2334
2335         * plaintext.c (handle_plaintext): Does no anymore suppress CR from
2336         cleartext signed messages.
2337
2338 Sun Sep 13 12:54:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
2339
2340         * trustdb.c (insert_trust_record): Fixed a stupid bug in the free
2341         liunked list loops.
2342
2343 Sat Sep 12 15:49:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
2344
2345         * status.c (remove_shmid): New.
2346         (init_shm_comprocess): Now sets permission to the real uid.
2347
2348 Wed Sep  9 11:15:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2349
2350         * packet.h (PKT_pubkey_enc): New flah throw_keyid, and add logic to
2351         implement it.
2352         * g10.c (main): New Option --throw-keyid
2353
2354         * getkey.c (enum_secret_keys): Add new ar and changed all callers.
2355
2356 Tue Sep  8 20:04:09 1998  Werner Koch  (wk@isil.d.shuttle.de)
2357
2358         * delkey.c (delete_key): Moved from keyedit.c.
2359
2360 Mon Sep  7 16:37:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
2361
2362         * build-packet.c (calc_length_header): New arg new_ctb to correctly
2363         calculate the length of new style packets.
2364
2365         * armor.c (is_armored): Checks for symkey_enc packets.
2366
2367         * pkclist.c (select_algo_from_prefs): 3DEs substitute is now CAST5.
2368
2369 Tue Aug 11 17:54:50 1998  Werner Koch  (wk@isil.d.shuttle.de)
2370
2371         * build-packet.c (do_secret_key): Fixed handling of old keys.
2372
2373         * getkey.c (compare_name): Fixed exact and email matching
2374
2375         * openfile.c (open_outfile): Changed arguments and all callers.
2376
2377 Tue Aug 11 09:14:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
2378
2379         * encode.c (encode_simple): Applied option set-filename and comment.
2380         (encode_crypt): Ditto.
2381         * sign.c (sign_file): Ditto.
2382         * armor.c (armor_filter): Applied option comment.
2383
2384         * encode.c (encode_crypt): Moved init_packet to the begin.
2385         (encode_simple): add an init_packet().
2386
2387         * comment (write_comment): Now enforces a hash sign as the 1st byte.
2388
2389         * import.c (import_one): Add explanation for "no user ids".
2390
2391         * compress.c (do_uncompress): Applied Brian Warner's patch to support
2392         zlib 1.1.3 etc.
2393
2394         * trustdb.c (check_trust): Fixed a problem after inserting new keys.
2395
2396         * getkey (lookup): do not return the primary key if usage is given
2397         (lookup_sk): Ditto and take usage into account.
2398
2399         * status.c (cpr_get_answer_is_yes): add display_help.
2400
2401 Mon Aug 10 10:11:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2402
2403         * getkey.c (lookup_sk): Now always returns the primary if arg
2404         primary is true.
2405         (lookup): Likewise.
2406         (get_pubkey_byname): Now returns the primary key
2407         (get_seckey_byname): Ditto.
2408
2409
2410 Mon Aug 10 08:34:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2411
2412         * keyid.c (pubkey_letter): ELG_E is now a small g.
2413
2414 Sat Aug  8 17:26:12 1998  Werner Koch  (wk@isil.d.shuttle.de)
2415
2416         * openfile (overwrite_filep): Changed semantics and all callers.
2417
2418 Sat Aug  8 12:17:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
2419
2420         * status.c (display_help): New.
2421
2422 Thu Aug  6 16:30:41 1998  Werner Koch,mobil,,,  (wk@tobold)
2423
2424         * seskey.c (encode_session_key): Now uses get_random_bits().
2425
2426 Thu Aug  6 07:34:56 1998  Werner Koch,mobil,,,  (wk@tobold)
2427
2428         * ringedit.c (keyring_copy): No more backupfiles for
2429         secret keyrings and add additional warning in case of
2430         a failed secret keyring operation.
2431
2432 Wed Aug  5 11:54:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
2433
2434         * g10.c (check_opts): Moved to main.  Changed def_cipher_algo
2435         semantics and chnaged all users.
2436
2437         * pubkey-enc.c (get_sssion_key): New informational output
2438         about preferences.
2439
2440         * parse-packet.c (parse_symkeyenc): Fixed salted+iterated S2K
2441         (parse_key): Ditto.
2442         * build-packet.c (do_secret_key): Ditto.
2443         (do_symkey_enc): Ditto.
2444
2445 Tue Aug  4 08:59:10 1998  Werner Koch  (wk@isil.d.shuttle.de)
2446
2447         * getkey.c (enum_secret_keys): Now returns only primary keys.
2448
2449         * getkey (lookup): Now sets the new namehash field.
2450
2451         * parse-packet.c (parse_sig_subpkt2): New.
2452
2453         * sign.c (sign_file): one-pass sigs are now emiited reverse.
2454         Preference data is considered when selecting the compress algo.
2455
2456 Wed Jul 29 12:53:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2457
2458         * free-packet.c (copy_signature): New.
2459
2460         * keygen.c (generate_subkeypair): rewritten
2461         * g10.c (aKeyadd): Removed option --add-key
2462
2463 Mon Jul 27 10:37:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2464
2465         * seckey-cert.c (do_check): Additional check on cipher blocksize.
2466         (protect_secret_key): Ditto.
2467         * encr-data.c: Support for other blocksizes.
2468         * cipher.c (write_header): Ditto.
2469
2470 Fri Jul 24 16:47:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2471
2472         * kbnode.c (insert_kbnode): Changed semantics and all callers.
2473         * keyedit.c : More or less a complete rewrite
2474
2475 Wed Jul 22 17:10:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
2476
2477         * build-packet.c (write_sign_packet_header): New.
2478
2479 Tue Jul 21 14:37:09 1998  Werner Koch  (wk@isil.d.shuttle.de)
2480
2481         * import.c (import_one): Now creates a trustdb record.
2482
2483         * g10.c (main): New command --check-trustdb
2484
2485 Mon Jul 20 11:15:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
2486
2487         * genkey.c (generate_keypair): Default key is now DSA with
2488         encryption only ElGamal subkey.
2489
2490 Thu Jul 16 10:58:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2491
2492         * keyid.c (keyid_from_fingerprint): New.
2493         * getkey.c (get_pubkey_byfprint): New.
2494
2495 Tue Jul 14 18:09:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
2496
2497         * keyid.c (fingerprint_from_pk): Add argument and changed all callers.
2498         (fingerprint_from_sk): Ditto.
2499
2500 Tue Jul 14 10:10:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
2501
2502         * plaintext.c (handle_plaintext): Now returns create error if
2503         the file could not be created or the user responded not to overwrite
2504         the file.
2505         * mainproc.c (proc_plaintext): Tries again if the file could not
2506         be created to check the signature without output.
2507
2508         * misc.c (disable_core_dumps): New.
2509         * g10.c (main): disable coredumps for gpg
2510
2511         * g10.c (MAINTAINER_OPTIONS): New to disable some options
2512
2513 Mon Jul 13 16:47:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
2514
2515         * plaintext.c (hash_datafiles): New arg for better support of
2516         detached sigs. Changed all callers.
2517         * mainproc.c (proc_signature_packets): Ditto.
2518
2519         * g10.c (main): New option "compress-sigs"
2520         * sig.c (sign_file): detached signatures are not anymore compressed
2521         unless the option --compress-sigs is used.
2522
2523 Thu Jul  9 19:54:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
2524
2525         * armor.c: Fixes to allow zero length cleartext signatures
2526
2527 Thu Jul  9 14:52:47 1998  Werner Koch  (wk@isil.d.shuttle.de)
2528
2529         * g10.c (build_list): Now drops setuid.
2530         (main): Changed the way keyrings  and algorithms are registered .
2531
2532 Wed Jul  8 14:17:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
2533
2534         * packet.h (PKT_public_key): Add field keyid.
2535         * parse-packet.c (parse_key): Reset the above field.
2536         * keyid.c (keyid_from_pk): Use above field as cache.
2537
2538         * tdbio.c, tdbio.h: New
2539         * trustdb.c: Moved some functions to tdbio.c.
2540         (print_keyid): New.
2541
2542         * pkclist.c (check_signatures_trust): New.
2543
2544 Wed Jul  8 10:45:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2545
2546         * plaintext.c (special_md_putc): New.
2547         (handle_plaintext): add clearsig argument
2548         * mainproc.c (proc_plaintext): detection of clearsig
2549         * sign.c (write_dased_escaped): Changed clearsig format
2550
2551 Tue Jul  7 18:56:19 1998  Werner Koch  (wk@isil.d.shuttle.de)
2552
2553         * armor.c (find_header): Now makes sure that there is only one
2554         empty line for clearsigs, as this is what OP now says.
2555
2556 Mon Jul  6 13:09:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
2557
2558         * g10.c (main): New option default-secret-key
2559         * getkey.c (get_seckey_byname): support for this option.
2560
2561 Mon Jul  6 09:03:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
2562
2563         * getkey.c (add_keyring): Keyrings are now added to end of the
2564         list of keyrings.  The first added keyringwill be created.
2565         (add_secret_keyring): Likewise.
2566
2567         * ringedit.c (add_keyblock_resource): Files are created here.
2568
2569         * g10.c (aNOP): Removed
2570
2571         * getkey.c (lookup): Add checking of usage for name lookups
2572         * packet.h (pubkey_usage): Add a field which may be used to store
2573         usage capabilities.
2574         * pkclist.c (build_pk_list): getkey now called with usage arg.
2575         * skclist.c (build_sk_list): Ditto.
2576
2577         * sign.c (clearsign_file): Fixed "Hash:" headers
2578
2579 Sat Jul  4 13:33:31 1998  Werner Koch  (wk@isil.d.shuttle.de)
2580
2581         * trustdb.c (list_ownertrust): New.
2582         * g10.c (aListOwnerTrust): New.
2583
2584         * g10.c (def_pubkey_algo): Removed.
2585
2586         * trustdb.c (verify_private_data): Removed and also the call to it.
2587         (sign_private_data): Removed.
2588
2589 Fri Jul  3 13:26:10 1998  Werner Koch  (wk@isil.d.shuttle.de)
2590
2591         * g10.c (aEditKey): was aEditSig. Changed usage msg.
2592
2593         * keyedit.c: Done some i18n stuff.
2594
2595         * g10.c (do_not_use_RSA): New.
2596         * sign.c (do_sign): Add call to above function.
2597         * encode.c (write_pubkey_enc_from_list): Ditto.
2598
2599 Thu Jul  2 21:01:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
2600
2601         * parse-packet.c: Now is able sto store data of unknown
2602         algorithms.
2603         * free-packet.c: Support for this.
2604         * build-packet.c: Can write data of packet with unknown algos.
2605
2606 Thu Jul  2 11:46:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
2607
2608         * parse-packet.c (parse): fixed 4 byte length header
2609
2610 Wed Jul  1 12:36:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
2611
2612         * packet.h (new_ctb): New field for some packets
2613         * build-packet.c (build_packet): Support for new_ctb
2614         * parse-packet.c (parse): Ditto.
2615
2616 Mon Jun 29 12:54:45 1998  Werner Koch  (wk@isil.d.shuttle.de)
2617
2618         * packet.h: changed all "_cert" to "_key", "subcert" to "subkey".
2619
2620         * free-packet.c (free_packet): Removed memory leak for subkeys.
2621
2622 Sun Jun 28 18:32:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
2623
2624         * import.c (import_keys): Renamed from import_pubkeys.
2625         (import_secret_one): New.
2626
2627         * g10.c (aExportSecret): New.
2628
2629         * export.c (export_seckeys): New.
2630
2631         * parse-packet.c (parse_certificate): Cleaned up.
2632         (parse_packet): Trust packets are now considered as unknown.
2633         (parse_pubkey_warning): New.
2634
2635 Fri Jun 26 10:37:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
2636
2637         * keygen.c (has_invalid_email_chars): New.
2638
2639 Wed Jun 24 16:40:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
2640
2641         * armor.c (armor_filter): Now creates valid onepass_sig packets
2642         with all detected hash algorithms.
2643         * mainproc.c (proc_plaintext): Now uses the hash algos as specified
2644         in the onepass_sig packets (if there are any)
2645
2646 Mon Jun 22 11:54:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
2647
2648         * plaintext.c (handle_plaintext): add arg to disable outout
2649         * mainproc.c (proc_plaintext): disable output when in sigs_only mode.
2650
2651 Thu Jun 18 13:17:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
2652
2653         * keygen.c: Removed all rsa packet stuff, chnaged defaults
2654         for key generation.
2655
2656 Sun Jun 14 21:28:31 1998  Werner Koch  (wk@isil.d.shuttle.de)
2657
2658         * misc.c (checksum_u16): Fixed a stupid bug which caused a
2659         wrong checksum calculation for the secret key protection and
2660         add a backward compatibility option.
2661         * g10.c (main): Add option --emulate-checksum-bug.
2662
2663 Thu Jun 11 13:26:44 1998  Werner Koch  (wk@isil.d.shuttle.de)
2664
2665         * packet.h: Major changes to the structure of public key material
2666         which is now stored in an array and not anaymore in a union of
2667         algorithm specific structures.  These is needed to make the system
2668         more extendable and makes a lot of stuff much simpler. Changed
2669         all over the system.
2670
2671         * dsa.c, rsa.c, elg.c: Removed.
2672
2673 Wed Jun 10 07:22:02 1998  Werner Koch,mobil,,,  (wk@tobold)
2674
2675         * g10.c ("load-extension"): New option.
2676
2677 Mon Jun  8 22:23:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
2678
2679         * seckey-cert.c (do_check): Removed cipher constants
2680         (protect_secret_key): Ditto.
2681
2682 Fri May 29 10:00:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
2683
2684         * trustdb.c (query_trust_info): New.
2685         * keylist.c (list_one): Add output of trust info
2686         * mainproc (list_node): ditto.
2687         * g10.c (main): full trustdb init if -with-colons and any of the
2688         key list modes.
2689
2690 Thu May 28 10:34:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
2691
2692         * status.c (STATUS_RSA_OR_IDEA): New.
2693         * sig-check.c (check_signature): Output special status message.
2694         * pubkey-enc.c (get_session_key): Ditto.
2695
2696         * mainproc.c (check_sig_and_print): Changed format of output.
2697         * passpharse.c (passphrase_to_dek): Likewise.
2698
2699 Wed May 27 13:46:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
2700
2701         * g10.c (aListSecretKeys): New option --list-secret-keys
2702         * keylist.c (std_key_list): Renamed to public_key_list.
2703         (secret_key_list): New
2704         (list_one, list_all): Add support for secret keys.
2705         * getkey.c (get_secret_keyring): New.
2706         * mainproc.c (list_node): Add option --with-colons for secret keys
2707
2708         * sig-check.c (check_key_signature): detection of selfsigs
2709         * mainproc.c (list_node): fixed listing.
2710
2711         * g10.c (aListSecretKeys): New option --always-trust
2712         * pkclist.c (do_we_trust): Override per option added
2713
2714         * status.c (write_status_text): Add a prefix to every output line.
2715
2716 Wed May 27 07:49:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
2717
2718         * g10 (--compress-keys): New.
2719         * options.h (compress_keys): New.
2720         * export.c (export_pubkeys): Only compresses with the new option.
2721
2722 Tue May 26 11:24:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2723
2724         * passphrase.c (get_last_passphrase): New
2725         (set_next_passphrase): New.
2726         (passphrase_to_dek): add support for the above functions.
2727         * keyedit.c (make_keysig_packet): Add sigclass 0x18,
2728         changed all callers due to a new argument.
2729         * keygen.c (write_keybinding): New
2730         (generate_subkeypair): Add functionality
2731         (ask_algo, ask_keysize, ask_valid_days): Broke out of generate_keypair
2732         (ask_user_id, ask_passphrase): Ditto.
2733
2734 Thu May 21 11:26:13 1998  Werner Koch  (wk@isil.d.shuttle.de)
2735
2736         * g10.c,gpgd.c (main): Does now return an int, so that egcs does
2737         not complain.
2738
2739         * armor.c (fake_packet): Removed erro message and add a noticed
2740         that this part should be fixed.
2741
2742         * sign.c (sign_file): Compression now comes in front of encryption.
2743         * encode.c (encode_simple): Ditto.
2744         (encode_crypt): Ditto.
2745
2746 Tue May 19 16:18:19 1998  Werner Koch  (wk@isil.d.shuttle.de)
2747
2748         * armor.c (fake_packet): Changed assertion to log_error
2749
2750 Sat May 16 16:02:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
2751
2752         * build-packet.c (build_packet): Add SUBKEY packets.
2753
2754 Fri May 15 17:57:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
2755
2756         * sign.c (hash_for): New and used in all places here.
2757         * main.h (DEFAULT_): new macros.
2758         * g10.c  (opt.def_digest_algo): Now set to 0
2759
2760         * compress.c (init_compress): Add support for algo 1
2761         * options.h (def_compress_algo): New
2762         * g10.c (main): New option --compress-algo
2763
2764 Fri May 15 13:23:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2765
2766         * g10.c (print_mds): New feature to print only one hash,
2767         chnaged formatting.
2768
2769 Thu May 14 15:36:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
2770
2771         * misc.c (trap_unaligned) [__alpha__]: New
2772         * g10.c (trap_unaligned): Add call to this to track down SIGBUS
2773         on Alphas (to avoid the slow emulation code).
2774
2775 Wed May 13 11:48:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
2776
2777         * build-packet.c (do_signature): Support for v4 pakets.
2778         * keyedit.c (make_keysig_packet): Ditto.
2779         * build-packet.c (build_sig_subpkt_from_sig): New.
2780         (build_sig_subpkt): New.
2781
2782         * elg.c (g10_elg_sign): removed keyid_from_skc.
2783         * dsa.c (g10_dsa_sign): Ditto.
2784         * rsa.c (g10_rsa_sign): Ditto.
2785         * keyedit.c (make_keysig_packet): Add call to keyid_from_skc
2786
2787         * sign.c (clearsign_file): Support for v4 signatures.
2788         (sign_file): Ditto.
2789
2790 Wed May  6 09:31:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
2791
2792         * parse-packet.c (do_parse): add support for 5 byte length leader.
2793         (parse_subpkt): Ditto.
2794         * build-packet.c (write_new_header): Ditto.
2795
2796         * packet.h (SIGSUBPKT_): New constants.
2797         * parse-packet.c (parse_sig_subpkt): Changed name, made global,
2798         and arg to return packet length, chnaged all callers
2799
2800
2801 Tue May  5 22:11:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2802
2803         * keygen.c (gen_dsa): New.
2804         * build_packet.c (do_secret_cert): Support for DSA
2805
2806 Mon May  4 19:01:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
2807
2808         * compress.c: doubled buffer sizes
2809         * parse-packet.c (do_plaintext): now uses iobuf_read/write.
2810
2811 Mon May  4 09:35:53 1998  Werner Koch  (wk@isil.d.shuttle.de)
2812
2813         * seskey.c (encode_md_value): Add optional argument hash_algo,
2814         changed all callers.
2815
2816         * passphrase.c (make_dek_from_passphrase): Removed
2817         * (get_passhrase_hash): Changed name to passphrase_to_dek, add arg,
2818         changed all callers.
2819
2820         * all: Introduced the new ELG identifier and added support for the
2821         encryption only one (which is okay to use by GNUPG for signatures).
2822
2823 Sun May  3 17:50:26 1998  Werner Koch  (wk@isil.d.shuttle.de)
2824
2825         * packet.h (PKT_OLD_COMMENT): New name for type 16.
2826         * parse-packet.c (parse_comment): Now uses type 61
2827
2828 Fri May  1 12:44:39 1998  Werner Koch,mobil,,,  (wk@tobold)
2829
2830         * packet.h (count): Chnaged s2k count from byte to u32.
2831         * seckey-cert.c (do_check): Changed s2k algo 3 to 4, changed
2832         reading of count.
2833         * build-packet.c (do_secret_cert): ditto.
2834         * parse-packet.c (parse_certificate): ditto.
2835
2836         * parse-packet.c (parse_symkeyenc): New.
2837         * build-packet.c (do_symkey_enc): New.
2838
2839 Thu Apr 30 16:33:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
2840
2841         * sign.c (clearsign_file): Fixed "Hash: " armor line.
2842
2843 Tue Apr 28 14:27:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
2844
2845         * parse-packet.c (parse_subpkt): Some new types.
2846
2847 Mon Apr 27 12:53:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
2848
2849         * g10.c (main): Add option --skip-verify.
2850         * mainproc.c (check_sig_and_print): Ditto.
2851
2852         * g10.c (print_mds): Add output for Tiger.
2853
2854         * sign.c (sign_file): Now uses partial length headers if used
2855         in canonical textmode (kludge to fix a bug).
2856
2857         * parse-packet.c (parse_certificate): Changed BLOWFISH id.
2858         * pubkey-enc.c (get_session_key): Ditto.
2859         * seskey.c (make_session_key): Ditto.
2860         * seckey-cert.c (protect_secret_key,do_check): Add BLOWFISH160.
2861
2862 Fri Apr 24 17:38:48 1998  Werner Koch,mobil,,,  (wk@tobold)
2863
2864         * sig-check.c (check_key_signature): Add sig-class 0x14..0x17
2865         * keyedit.c (sign-key): Some changes to start with support of
2866         the above new sig-classes.
2867
2868 Wed Apr 22 09:01:57 1998  Werner Koch,mobil,,,  (wk@tobold)
2869
2870         * getkey.c (compare_name): add email matching
2871
2872 Tue Apr 21 16:17:12 1998  Werner Koch,mobil,,,  (wk@tobold)
2873
2874         * armor.c (armor_filter): fixed missing last LF before CSUM.
2875
2876 Thu Apr  9 11:35:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
2877
2878         * seckey-cert.c (do_check): New; combines all the check functions
2879         into one.
2880
2881         * sign.c: removed all key management functions
2882         * keyedit.c: New.
2883
2884 Thu Apr  9 09:49:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
2885
2886         * import.c (chk_self_sigs): Changed an error message.
2887
2888 Wed Apr  8 16:19:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
2889
2890         * packet.h: packet structs now uses structs from the pubkey,
2891         removed all copy operations from packet to pubkey structs.
2892
2893 Wed Apr  8 13:40:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2894
2895         * trustdb.c (verify_own_certs): Fixed "public key not found".
2896
2897         * getkey.c (key_byname): New, combines public and secret key search.
2898
2899         * pkclist.c (build_pkc_list): Add new arg usage, changed all callers.
2900         * skclist.c (build_skc_list): Likewise.
2901
2902         * ringedit.c (find_keyblock, keyring_search2): Removed.
2903
2904 Wed Apr  8 09:47:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
2905
2906         * sig-check.c (do_check): Applied small fix from Ulf Möller.
2907
2908 Tue Apr  7 19:28:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
2909
2910         * cipher.c, encr-data.c, seckey-cert.c: Now uses cipher_xxxx
2911         functions instead of blowfish_xxx or cast_xxx
2912
2913 Tue Apr  7 11:04:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
2914
2915         * Makefile.am (g10maint.o): Changed the way it is created.
2916
2917 Mon Apr  6 11:17:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
2918
2919         * misc.c: New.
2920         * keygen.c (checksum,checksum_u16,checksum_mpi): Moved to misc.c
2921         * seckey-cert.c: Kludge for wrong ELG checksum implementation.
2922
2923 Sat Apr  4 20:07:01 1998  Werner Koch  (wk@isil.d.shuttle.de)
2924
2925         * cipher.c (cipher_filter): Support for CAST5
2926         * encr-data.c (decode_filter): Ditto.
2927         (decrypt_data): Ditto.
2928         * seskey.c (make_session_key): Ditto.
2929         * seckey-cert.c (check_elg, check_dsa): Ditto,
2930         (protect_secret_key): Ditto.
2931         * pubkey-enc.c (get_session_key): Ditto.
2932         * passphrase.c (hash_passphrase): Ditto.
2933
2934 Thu Apr  2 20:22:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
2935
2936         * gpgd.c: New
2937
2938 Thu Apr  2 10:38:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
2939
2940         * keygen.c (generate_keypair): Add valid_days stuff.
2941         * trustdb.c (check_trust): Add check for valid_days.
2942
2943 Wed Apr  1 16:15:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
2944
2945         * keygen.c (generate_keypair): Addional question whether the
2946         selected large keysize is really needed.
2947
2948 Wed Apr  1 15:56:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
2949
2950         * seckey-cert.c (protect_secret_key): merged protect_xxx to here.
2951
2952 Wed Apr  1 10:34:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
2953
2954         * Makefile.am (g10maint.c): Changed creation rule, so that it works
2955         on FreeBSD (missing CFLAGS).
2956
2957         * parse-packet.c (parse_subkey): Removed.
2958
2959 Thu Mar 19 15:22:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
2960
2961         * ringedit.c (keyring_enum): Fixed problem with reading too
2962         many packets. Add support to read secret keyrings.
2963
2964         * getkey.c (scan_keyring): Removed
2965         (lookup): New to replace scan_keyring.
2966         (scan_secret_keyring): Removed.
2967         (lookup_skc): New.
2968
2969 Wed Mar 18 11:47:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
2970
2971         * ringedit.c (enum_keyblocks): New read mode 11.
2972
2973         * keyid.c (elg_fingerprint_md): New and changed all other functions
2974         to call this if the packet version is 4 or above.
2975
2976 Tue Mar 17 20:46:16 1998  Werner Koch  (wk@isil.d.shuttle.de)
2977
2978         * parse-packet.c (parse_certificate): Add listing support for subkeys.
2979
2980 Tue Mar 17 20:32:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
2981
2982         * armor.c (is_armored): Allow marker packet.
2983
2984 Thu Mar 12 13:36:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
2985
2986         * trustdb.c (check_trust): Checks timestamp of pubkey.
2987         * sig-check. (do_check): Compares timestamps.
2988
2989 Tue Mar 10 17:01:56 1998  Werner Koch  (wk@isil.d.shuttle.de)
2990
2991         * g10.c (main): Add call to init_signals.
2992         * signal.c: New.
2993
2994 Mon Mar  9 12:43:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
2995
2996         * dsa.c: New
2997         * packet.h, free-packet.c, parse-packet.c : Add support for DSA
2998         * sig-check.c, getkey.c, keyid.c, ringedit.c: Ditto.
2999         * seckey-cert.c: Ditto.
3000
3001         * packet.h : Moved .digest_algo of signature packets to outer
3002         structure. Changed all references
3003
3004 Sun Mar  8 13:06:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
3005
3006         * openfile.c : Support for stdout filename "-".
3007
3008         * mainproc.c (check_sig_and_print): Enhanced status output:
3009         * status.c (write_status_text): New.
3010
3011 Fri Mar  6 16:10:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
3012
3013         * kbnode.c (clone_kbnode): Fixed private_flag.
3014
3015         * mainproc.c (list_node): Output of string "Revoked" as user-id.
3016
3017 Fri Mar  6 14:26:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
3018
3019         * g10.c (main): Add userids to "-kv" and cleaned up this stuff.
3020
3021 Fri Mar  6 12:45:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
3022
3023         * g10.c (main): Changed semantics of the list-... commands
3024         and added a new one. Removed option "-d"
3025
3026         * decrypt.c: New.
3027
3028         * trustdb.c (init_trustdb): Autocreate directory only if it ends
3029         in "/.gnupg".
3030
3031 Thu Mar  5 12:12:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
3032
3033         * mainproc.c (do_proc_packets): New. Common part of proc_packet.
3034         (proc_signature_packets): special version to handle signature data.
3035         * verify.c: New.
3036         * g10.c (aVerify): New.
3037         * plaintext.c (hash_datafiles): New.
3038         * compress.c (handle_compressed): Add callback arg, changed caller.
3039
3040 Thu Mar  5 10:20:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
3041
3042         * g10.c: Is nom the common source for gpg and gpgm
3043         * g10maint.c: Removed
3044         * Makefile.am: Add rule to build g10maint.c
3045
3046 Thu Mar  5 08:43:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
3047
3048         * g10.c (main): Changed the way clear text sigs are faked.
3049
3050 Wed Mar  4 19:47:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
3051
3052         * g10maint.c (aMuttKeyList): New
3053         * keylist.c: New.
3054
3055 Wed Mar  4 17:20:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
3056
3057         * getkey.c (get_pubkey_byname): Kludge to allow 0x prefix.
3058
3059 Tue Mar  3 13:46:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
3060
3061         * g10maint.c (main): New option --gen-random.
3062
3063 Tue Mar  3 09:50:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
3064
3065         * g10.c (aDeleteSecretKey): New.
3066         (aEditSig): Add option "--edit-key" as synonym for "--edit-sig".
3067         (aDeleteSecretKey): New.
3068         * getkey.c (seckey_available): New.
3069         * sign.c (delete_key): Enhanced to delete secret keys, changed all
3070         callers.
3071
3072 Mon Mar  2 21:23:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
3073
3074         * pkc_list.c (build_pkc_list): Add interactive input of user ID.
3075
3076 Mon Mar  2 20:54:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
3077
3078         * pkclist.c (do_we_trust_pre): New.
3079         (add_ownertrust): Add message.
3080         * trustdb.c (enum_trust_web): Quick fix.
3081
3082 Mon Mar  2 13:50:53 1998  Werner Koch  (wk@isil.d.shuttle.de)
3083
3084         * g10.c (main): New action aDeleteKey
3085         * sign.c (delete_key): New.
3086
3087 Sun Mar  1 16:38:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
3088
3089         * trustdb.c (do_check): No returns TRUST_UNDEFINED instead of
3090         eof error.
3091
3092 Fri Feb 27 18:14:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
3093
3094         * armor.c (find_header): Removed trailing CR on headers.
3095
3096 Fri Feb 27 18:02:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
3097
3098         * ringedit.c (keyring_search) [MINGW32]: Open and close file here
3099         because rename does not work on open files. Chnaged callers.
3100
3101 Fri Feb 27 16:43:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
3102
3103         * sig-check.c (do_check): Add an md_enable.
3104         * mainproc.c (do_check_sig): Use md_open in case of detached sig
3105         (proc_tree): Take detached sigs into account.
3106
3107 Fri Feb 27 15:22:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
3108
3109         * g10.c (main): Make use of GNUPGHOME envvar.
3110         * g10main.c (main): Ditto.
3111
3112 Wed Feb 25 11:40:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
3113
3114         * plaintext.c (ask_for_detached_datafile): add opt.verbose to
3115         info output.
3116
3117         * openfile.c (open_sigfile): Try also name ending in ".asc"
3118
3119 Wed Feb 25 08:41:00 1998  Werner Koch  (wk@isil.d.shuttle.de)
3120
3121         * keygen.c (generate_keypair): Fixed memory overflow.
3122
3123 Tue Feb 24 15:51:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
3124
3125         * parse-packet.c (parse_certificate): Support for S2K.
3126         * build-packet.c (do_secret_cert): Ditto.
3127         * keygen.c (gen_elg): Ditto.
3128         * seckey-cert.c (check_elg): Ditto
3129         (protect_elg): Ditto.
3130         * sign.c (chnage_passphrase): Ditto.
3131         * passphrase.c (get_passphrase_hash): Support for a salt and
3132         changed all callers.
3133         (make_dek_from_passphrase): Ditto.
3134
3135 Tue Feb 24 12:30:56 1998  Werner Koch  (wk@isil.d.shuttle.de)
3136
3137         * build-packet.c (hash_public_cert): Disabled debug output.
3138
3139 Fri Feb 20 17:22:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
3140
3141         * trustdb.c (init_trustdb) [MINGW32]: Removed 2nd mkdir arg.
3142         (keyring_copy) [MINGW32]: Add a remove prior to the renames.
3143
3144 Wed Feb 18 18:39:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
3145
3146         * Makefile.am (OMIT_DEPENDENCIES): New.
3147
3148         * rsa.c: Replaced log_bug by BUG.
3149
3150 Wed Feb 18 13:35:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
3151
3152         * mainproc.c (do_check_sig): Now uses hash_public_cert.
3153         * parse-packet.c (parse_certificate): Removed hashing.
3154         * packet.h (public_cert): Removed hash variable.
3155         * free-packet.c (copy_public_cert, free_public_cert): Likewise.
3156
3157         * sig-check.c (check_key_signatures): Changed semantics.
3158
3159 Wed Feb 18 12:11:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
3160
3161         * trustdb.c (do_check): Add handling for revocation certificates.
3162         (build_sigrecs): Ditto.
3163         (check_sigs): Ditto.
3164
3165 Wed Feb 18 09:31:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
3166
3167         * armor.c (armor_filter): Add afx->hdrlines.
3168         * revoke.c (gen_revoke): Add comment line.
3169         * dearmor.c (enarmor_file): Ditto.
3170
3171         * sig-check.c (check_key_signature): Add handling for class 0x20.
3172         * mainproc.c : Ditto.
3173
3174 Tue Feb 17 21:24:17 1998  Werner Koch  (wk@isil.d.shuttle.de)
3175
3176         * armor.c : Add header lines "...ARMORED FILE .."
3177         * dearmor.c (enarmor_file): New.
3178         * g10maint.c (main): New option "--enarmor"
3179
3180 Tue Feb 17 19:03:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
3181
3182         * mainproc.c : Changed a lot, because the packets are now stored
3183         a simple linlked list and not anymore in a complicatd tree structure.
3184
3185 Tue Feb 17 10:14:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
3186
3187         * free_packet.c (cmp_public_certs): New.
3188         (cmp_user_ids): New.
3189
3190         * kbnode.c (clone_kbnode): New.
3191         (release_kbnode): Add clone support.
3192
3193         * ringedit.c (find_keyblock_bypkc): New.
3194
3195         * sign.c (remove_keysigs): Self signatures are now skipped,
3196         changed arguments and all callers.
3197
3198         * import.c : Add functionality.
3199
3200 Tue Feb 17 09:31:40 1998  Werner Koch  (wk@isil.d.shuttle.de)
3201
3202         * options.h (homedir): New option.
3203         * g10.c, g10maint.c, getkey.c, keygen.c, trustdb.c (opt.homedir): New.
3204
3205         * trustdb.c (init_trustdb): mkdir for hoem directory
3206         (sign_private_data): Renamed "sig" to "g10.sig"
3207
3208 Mon Feb 16 20:02:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
3209
3210         * kbnode.c (commit_kbnode): New.
3211         (delete_kbnode): removed unused first arg. Changed all Callers.
3212
3213         * ringedit.c (keyblock_resource_name): New.
3214         (get_keyblock_handle): NULL for filename returns default resource.
3215
3216 Mon Feb 16 19:38:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
3217
3218         * sig-check.s (check_key_signature): Now uses the supplied
3219         public key to check the signature and not any more the one
3220         from the getkey.c
3221         (do_check): New.
3222         (check_signature): Most work moved to do_check.
3223
3224 Mon Feb 16 14:48:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
3225
3226         * armor.c (find_header): Fixed another bug.
3227
3228 Mon Feb 16 12:18:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
3229
3230         * getkey.c (scan_keyring): Add handling of compressed keyrings.
3231
3232 Mon Feb 16 10:44:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
3233
3234         * g10.c, g10maint.c (strusage): Rewrote.
3235         (build_list): New
3236
3237 Mon Feb 16 08:58:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
3238
3239         * armor.c (use_armor): New.
3240
3241 Sat Feb 14 14:30:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
3242
3243         * mainproc.c (proc_tree): Sigclass fix.
3244
3245 Sat Feb 14 14:16:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
3246
3247         * armor.c (armor_filter): Changed version and comment string.
3248         * encode.c, sign.c, keygen.c: Changed all comment packet strings.
3249
3250 Sat Feb 14 12:39:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
3251
3252         * g10.c (aGenRevoke): New command.
3253         * revoke.c: New.
3254         * sign.c (make_keysig_packet): Add support for sigclass 0x20.
3255
3256 Fri Feb 13 20:18:14 1998  Werner Koch  (wk@isil.d.shuttle.de)
3257
3258         * ringedit.c (enum_keyblocks, keyring_enum): New.
3259
3260 Fri Feb 13 19:33:40 1998  Werner Koch  (wk@isil.d.shuttle.de)
3261
3262         * export.c: Add functionality.
3263
3264         * keygen.c (generate_keypair): Moved the leading comment behind the
3265         key packet.
3266         * kbnode.c (walk_kbnode): Fixed.
3267
3268         * g10.c (main): listing armored keys now work.
3269
3270 Fri Feb 13 16:17:43 1998  Werner Koch  (wk@isil.d.shuttle.de)
3271
3272         * parse-packet.c (parse_publickey, parse_signature): Fixed calls
3273         to mpi_read used for ELG b.
3274
3275 Fri Feb 13 15:13:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
3276
3277         * g10.c (main): changed formatting of help output.
3278
3279 Thu Feb 12 22:24:42 1998  Werner Koch  (wk@frodo)
3280
3281         * pubkey-enc.c (get_session_key): rewritten
3282