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