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