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