2001-05-29  Werner Koch  <wk@gnupg.org>

	* keygen.c (generate_subkeypair): Print a warning if a subkey is
	created on a v3 key. Suggested by Brian M. Carlson.

2001-05-27  Werner Koch  <wk@gnupg.org>

	* keyid.c (get_lsign_letter): New.
	* keylist.c (list_keyblock_colon): Use it here.
	* mainproc.c (list_node): and here.

	* getkey.c, packet.h, free-packet.c: Removed that useless key
	created field; I dunno why I introducded this at all - the
	creation time is always bound to the key packet and subject to
	fingerprint calculation etc.

	* getkey.c (fixup_uidnode): Add keycreated arg and use this
	instead of the signature timestamp to calculate the
	help_key_expire.  Bug reported by David R. Bergstein.
	(merge_selfsigs_main): Correct key expiration time calculation.
	(merge_selfsigs_subkey): Ditto.

2001-05-25  Werner Koch  <wk@gnupg.org>

	* revoke.c (gen_revoke): Add a cast to a tty_printf arg.
	* delkey.c (do_delete_key): Ditto.
	* keyedit.c (print_and_check_one_sig): Ditto.
	(ask_revoke_sig): Ditto.
	(menu_revsig): Ditto.
	(check_all_keysigs): Removed unused arg.

2001-05-23  Werner Koch  <wk@gnupg.org>

	* g10.c (opts): Typo fix by Robert C. Ames.

2001-05-06  Werner Koch  <wk@gnupg.org>

	* revoke.c: Small typo fix

2001-05-04  Werner Koch  <wk@gnupg.org>

	* passphrase.c (passphrase_clear_cache): Shortcut if agent usage
	is not enabled.

2001-05-01  Werner Koch  <wk@gnupg.org>

	* passphrase.c (writen): Replaced ssize_t by int.  Thanks to 
	to Robert Joop for reporting that SunOS 4.1.4 does not have it.

2001-04-28  Werner Koch  <wk@gnupg.org>

	* getkey.c (merge_public_with_secret): pkttype was not set to subkey.

2001-04-27  Werner Koch  <wk@gnupg.org>

	* skclist.c (build_sk_list): Changed one log_debug to log_info.

2001-04-25  Werner Koch  <wk@gnupg.org>

	* keyedit.c (show_prefs): Add a verbose mode.
	(show_key_with_all_names): Pass verbose flag for special value of
	with_pref.
	(keyedit_menu): New command "showpref"
	(show_key_with_all_names): Mark revoked uids and the primary key.

2001-04-24  Werner Koch  <wk@gnupg.org>

	* getkey.c (get_primary_uid): Return a different string in case of
	error and made it translatable.

	* build-packet.c (do_secret_key): Ugly, we wrote a zero
	instead of the computed ndays.  Thanks to M Taylor for complaining
	about a secret key import problem.

2001-04-23  Werner Koch  <wk@gnupg.org>

	* hkp.c (hkp_ask_import): Allow to specify a port number for the 
	keyserver.  Add a kudge to set the no_shutdown flag.
	(hkp_export): Ditto.
	* options.skel: Document the changes 

2001-04-20  Werner Koch  <wk@gnupg.org>

	* options.skel: Add some more comments.

2001-04-19  Werner Koch  <wk@gnupg.org>

	* keyid.c (mk_datestr): New.  Handles negative times.  We must do
	this because Windoze segvs on negative times passed to gmtime().
	Changed all datestr_from function to use this one.

	* keyid.c, keyid.h (colon_strtime): New. To implement the
	fixed-list-mode.
	(colon_datestr_from_pk): New.
	(colon_datestr_from_sk): New.
	(colon_datestr_from_sig): New.
	* keylist.c (list_keyblock_colon): Use these functions here.
	* mainproc.c (list_node): Ditto.

2001-04-18  Werner Koch  <wk@gnupg.org>

	* openfile.c (open_sigfile): Fixed the handling of ".sign".
	* mainproc.c (proc_tree): Use iobuf_get_real_fname.
	Both are by Vincent Broman.

2001-04-14  Werner Koch  <wk@gnupg.org>

	* getkey.c (fixup_uidnode): Removed check for !sig which is
	pointless here.  Thanks to Jan Niehusmann.

2001-04-10  Werner Koch  <wk@gnupg.org>

	* sig-check.c (check_key_signature2): Use log_info instead of
	log_error so that messed up keys do not let gpg return an error.
	Suggested by Christian Kurz.

	* getkey.c (merge_selfsigs_main): Do a fixup_uidnode only if we
	have both, uid and sig.  Thanks to M Taylor.

2001-04-05  Werner Koch  <wk@gnupg.org>

	* armor.c (unarmor_pump_new,unarmor_pump_release): New.
	(unarmor_pump): New. 
	* pipemode.c (pipemode_filter): Use the unarmor_pump to handle
	armored or non-armored detached signatures.  We can't use the
	regular armor_filter becuase this does only chack for armored
	signatures the very first time.  In pipemode we may have a mix of
	armored and binary detached signatures.
	* mainproc.c (proc_tree): Do not print the "old style" notice when
	this is a pipemode processes detached signature.
	(proc_plaintext): Special handling of pipemode detached sigs.

	* packet.h (CTRLPKT_PLAINTEXT_MARK): New.
	* parse-packet.c (create_gpg_control): New.
	* kbnode.c (dump_kbnode): Support it here.
	* mainproc.c (check_sig_and_print): Fixed the check for bad
	sequences of multiple signatures.
	(proc_plaintext): Add the marker packet.
	(proc_tree): We can now check multiple detached signatures.

2001-04-02  Werner Koch  <wk@gnupg.org>

	The length of encrypted packets for blocksizes != 8 was not
	correct encoded.  I think this is a minor problem, because we
	usually use partial length packets.  Kudos to Kahil D. Jallad for
	pointing this out.
	* packet.h: Add extralen to PKT_encrypted.
	* cipher.c (write_header): Set extralen.
	* build-packet.c (do_encrypted): Use extralen instead of const 10.
	(do_encrypted_mdc): Ditto.
	* parse-packet.c (parse_encrypted): Set extralen to 0 becuase we
	don't know it here.

2001-03-30  Werner Koch  <wk@gnupg.org>

	* getkey.c (premerge_public_with_secret): Changed wording an add
	the keyID to the info message.

2001-03-29  Werner Koch  <wk@gnupg.org>

	* getkey.c (premerge_public_with_secret): Use log_info instead of
	log_error when no secret key was found for a public one.
	Fix the usage if the secret parts of a key are not available.

	* openfile.c (ask_outfile_name): Trim spaces.
	(open_outfile): Allow to enter an alternate filename.  Thanks to
	Stefan Bellon.
	* plaintext.c (handle_plaintext): Ditto.

2001-03-28  Werner Koch  <wk@gnupg.org>

	* mainproc.c (do_check_sig): Allow direct key and subkey
	revocation signature.
	* sig-check.c (check_key_signature2): Check direct key signatures.
	Print the signature class along with an error.

2001-03-27  Werner Koch  <wk@gnupg.org>

	* packet.h: Add a missing typedef to an enum.  Thanks to Stefan Bellon.

	* g10.c: New option --no-sig-create-check.
	* sign.c (do_sign): Implement it here.
	* g10.c: New option --no-sig-cache.
	* sig-check.c (check_key_signature2): Implement it here.
	(cache_selfsig_result): and here.

	* keylist.c (list_keyblock): Removed debugging stuff.

	* getkey.c (cache_public_key): Made global.
	* keygen.c (write_selfsig, write_keybinding): Cache the new key.

	* getkey.c (key_byname): Add new arg secmode and changed all
	callers to request explicitly the mode.  Deriving this information
	from the other supplied parameters does not work if neither pk nor
	sk are supplied.

2001-03-25  Werner Koch  <wk@gnupg.org>

	* packet.h (ctrlpkttype_t): New.
	* mainproc.c (add_gpg_control,proc_plaintext,proc_tree): Use the
	new enum values.
	* pipemode.c (make_control): Ditto.
	* armor.c (armor_filter): Ditto.

2001-03-24  Werner Koch  <wk@gnupg.org>

	* sign.c (do_sign): Verify the signature right after creation.

2001-03-23  Werner Koch  <wk@gnupg.org>

	* status.c, status.h (STATUS_UNEXPECTED): New.
	* mainproc.c (do_proc_packets): And emit it here.

2001-03-21  Werner Koch  <wk@gnupg.org>

	* status.c: Add sys/types.h so that it runs on Ultrix.  Reported
	by Georg Schwarz.x

	* build-packet.c (build_sig_subpkt): Fixed generaton of packet
	length header in case where 2 bytes headers are needed.  Thanks to
	Piotr Krukowiecki.

2001-03-19  Werner Koch  <wk@gnupg.org>

	* g10.c (main): the default keyring is no always used unless
	--no-default-keyring is given.  

	* ringedit.c (add_keyblock_resource): invalidate cache after file
	creation.

2001-03-15  Werner Koch  <wk@gnupg.org>

	* keygen.c (ask_algo): Changed the warning of the ElGamal S+E Algo.

	* keylist.c (print_capabilities): New.
	(list_keyblock_colon): and use it here.

2001-03-13  Werner Koch  <wk@gnupg.org>

	* main.c, options.h: New option --fixed_list_mode.
	* keylist.c (list_keyblock_colon): use it here.

	* getkey.c (merge_keys_and_selfsig): Divert merging of public keys
	to the function used in key selection..
	* keylist.c (is_uid_valid): Removed.
	(list_keyblock): Splitted into ..
	(list_keyblock_print, list_keyblock_colon): .. these.
	functions.  Changed them to use the flags set in the key lookup code.
	(reorder_keyblock): New, so that primary user IDs are listed first.

	* ringedit.c (keyring_copy): flush the new iobuf chaces before
	rename or remove operations.  This is mainly needed for W32.

	* hkp.c [HAVE_DOSISH_SYSTEM]: Removed the disabled code because we
	have now W32 socket support in ../util/http.c

	* skclist.c (key_present_in_sk_list): New.
	(is_duplicated_entry): New.
	(build_sk_list): Check for duplicates and do that before unlocking.

2001-03-12  Werner Koch  <wk@gnupg.org>

	* armor.c (parse_header_line): Removed double empty line check.
	(parse_header_line): Replaced trim_trailing_ws with a counting
	function so that we can adjust for the next read.

	* options.skel: Fixed 3 typos. By Thomas Klausner. Replaced the
	keyserver example by a better working server. 

	* parse-packet.c (parse_symkeyenc): Return Invalid_Packet on error.
	(parse_pubkeyenc): Ditto.
	(parse_onepass_sig): Ditto.
	(parse_plaintext): Ditto.
	(parse_encrypted): Ditto.
	(parse_signature): Return error at other places too.
	(parse_key): Ditto.
	* g10.c (main): Set opt.list_packets to another value when invoked
	with the --list-packets command.
	* mainproc.c (do_proc_packets): Don's stop processing when running
	under --list-packets command.

	* signal.c (do_sigaction): Removed.
	(init_one_signal): New to replace the above.  Needed to support
	systems without sigactions. Suggested by Dave Dykstra.
	(got_fatal_signal,init_signals): Use the above here. 
	(do_block): Use sigset() if sigprocmask() is not available.

	* armor.c (parse_hash_header): Test on TIGER192, which is the
	correct value as per rfc2440.  By Edwin Woudt.

2001-03-08  Werner Koch  <wk@gnupg.org>

	* misc.c: Include time.h. By James Troup.

	* getkey.c: Re-enabled the unknown user Id and PK caches and
	increased their sizes.

	* getkey.c (merge_selfsigs_main): Set expire date and continue
	processing even if we found a revoked key.
	(merge_selfsigs_subkeys): Ditto.
	
	* packet.h: Add an is_revoked flag to the user_id packet.
	* getkey.c (fixup_uidnode): Set that flag here.
	(merge_selfsigs_main): Fix so that the latest signature is used to
	find the self-signature for an UID.
	* parse-packet.c (parse_user_id): Zero out all fields.
	* mainproc.c (check_sig_and_print): Print the primary user ID
	according the the node flag and then all other non-revoked user IDs.
	(is_uid_revoked): Removed; it is now handled by the key selection code.
	
	Changed the year list of all copyright notices.
	
2001-03-07  Werner Koch  <wk@gnupg.org>

	* getkey.c (finish_lookup): Print an info message only in verbose mode.

2001-03-05  Werner Koch  <wk@gnupg.org>

	* packet.h: Replaced sigsubpkt_t value 101 by PRIV_VERIFY_CACHE.
	We have never used the old value, so we can do this without any harm.
	* parse-packet.c (dump_sig_subpkt): Ditto.
	(parse_one_sig_subpkt): Parse that new sub packet.
	* build-packet.c (build_sig_subpkt): Removed the old one from the
	hashed area.
	(delete_sig_subpkt): New.
	(build_sig_subpkt): Allow an update of that new subpkt.
	* sig-check.c (check_key_signature2): Add verification caching
	(cache_selfsig_result): New.
	* export.c (do_export_stream): Delete that sig subpkt before exporting.
	* import.c (remove_bad_stuff): New.
	(import): Apply that function to all imported data 

2001-03-03  Werner Koch  <wk@gnupg.org>

	* getkey.c: Introduced a new lookup context flag "exact" and used 
	it in all place where we once used primary.
	(classify_user_id2): Replaced the old function and add an extra
	argument to return whether an exact keyID has been requested.
	(key_byname): Removed the unused ctx.primary flag
	(get_seckey_byname2): Ditto.
	(finish_lookup): Changed debugging output.

2001-03-02  Werner Koch  <wk@gnupg.org>

	* keylist.c (list_one): Remove the merge key calls. 

2001-03-01  Werner Koch  <wk@gnupg.org>

	* getkey.c (finish_lookup): Don't use it if we no specific usage
	has been requested.
	(merge_selfsigs_main): fix UID only if we have an signature.
	(lookup): Return UNU_PUBKEY etc. instead of NO_PUBKEY if we found
	a key but the requested usage does not allow this key.
	* import.c (import_one): Take UNU_PUBKEY into account.
	* mainproc.c (list_node): Ditto.
	* keylist.c (list_keyblock): Ditto.
	* keyedit.c (print_and_check_one_sig): Ditto. 

2001-02-09  Werner Koch  <wk@gnupg.org>

	* delkey.c (delete_key): Removed that silly assert which rendered
	the whole new stuff meaningless.

2001-02-08  Werner Koch  <wk@gnupg.org>

	* getkey.c (key_byname): It can happen that we have both, sk and pk
	NULL, fix for that.

	* parse-packet.c (parse_one_sig_subpkt): Add support for
	primary_uid and key_flags.
	(can_handle_critical): Ditto

	* parse-packet.c (parse_encrypted): Fixed listing of pktlen for
	MDC packets.

	* getkey.c: Backported the version of this file from gpg 1.1. this
	involved some changes in other files too.
	* parse-packet.c (parse_key): Clear req_usage.
	* skclist.c (build_sk_list): Use req_usage to pass the usage
	information to the lookup function.
	* pkclist.c (build_pk_list): Ditto.
	* free-packet.c (copy_public_parts_to_secret_key): New.
	* keydb.h: Add IS_* macros to check the sig_class.
	* misc.c (openpgp_cipher_test_algo): New.
	(openpgp_pk_test_algo): New.
	(openpgp_pk_algo_usage): New.
	(openpgp_md_test_algo): New.
	* packet.h: Add a few fields to PKT_{public,secret}_key and
	PKT_user_id.
	* seckey-cert.c (do_check): Use the new main_keyid field.

2001-02-04  Werner Koch  <wk@gnupg.org>

	* encr-data.c (decrypt_data): Catch error when we had problems to
	parse the encrypted packet. By Timo.

2001-01-29  Werner Koch  <wk@gnupg.org>

	* g10.c (main): --batch does now set nogreeting.

	* delkey.c (do_delete_key): Fixed delete-both functionality.

2001-01-22  Werner Koch  <wk@gnupg.org>

	* g10.c: New command --delete-secret-and-public-key.
	* delkey.c (delete_key): Add new arg allow_both.
	(do_delete_key): Move most stuff from above to this new function.

2001-01-12  Werner Koch  <wk@gnupg.org>

	* passphrase.c (passphrase_to_dek): Use MD5 when IDEA is installed
	and we have no S2K.
	* mainproc.c (proc_encrypted): Likewise

2001-01-11  Werner Koch  <wk@gnupg.org>

	* sig-check.c (do_check): Print the signature key expire message
	only in verbose mode and added the keyID.

2001-01-09  Werner Koch  <wk@gnupg.org>

	* status.c, status.h: New status USERID_HINT. 
	(write_status_text): Replace LF and CR int text by C-escape sequence.

	* passphrase.c (passphrase_to_dek): Fixed the NEED_PASSPHRASE
	output.  It does now always print 2 keyIDs.  Emit the new
	USERID_HINT.

2001-01-08  Werner Koch  <wk@gnupg.org>

	* g10.c, options.h: New option --no-expensive-trust-checks.
	* keylist.c (list_keyblock): Act on this option.

2001-01-04  Werner Koch  <wk@gnupg.org>

	* g10.c (main): Set homedir only in the pre-parsing phase and
	replace backslashes in the W32 version.

2001-01-03  Werner Koch  <wk@gnupg.org>

	* status.c, status.h : New status KEY_CREATED
	* keygen.c (do_generate_keypair,generate_subkeypair): Emit it.

2000-12-28  Werner Koch  <wk@gnupg.org>

	* signal.c (got_fatal_signal): Remove lockfiles here because the
	atexit stuff does not work due to the use of raise. Suggested by
	Peter Fales.
	* gpgv.c (remove_lockfiles): New stub.
	
2000-12-19  Werner Koch  <wk@gnupg.org>

	* status.c, status.h (cpr_get_no_help): New.
	* keyedit.c (keyedit_menu): Use it here because we have our own
	help list here.

2000-12-18  Werner Koch  <wk@gnupg.org>

	* mainproc.c (print_failed_pkenc): Don't print the sometimes
	confusing message about unavailabe secret key.  Renamed ...
	(print_pkenc_list): ... to this and introduced failed arg.
	(proc_encrypted): Print the failed encryption keys and then
	the one to be used.
	(proc_pubkey_enc): Store also the key we are going to use.

	* mainproc.c (check_sig_and_print): Don't list revoked user IDs.
	(is_uid_revoked): New.

2000-12-08  Werner Koch  <wk@gnupg.org>

	* pipemode.c: Made the command work.  Currently only for
	non-armored detached signatures.
	* mainproc.c (release_list): Reset the new pipemode vars.
	(add_gpg_control): Handle the control packets for pipemode
	* status.c, status.h: New stati {BEGIN,END}_STREAM.

2000-12-07  Werner Koch  <wk@gnupg.org>

	* g10.c: New option --allow-secret-key-import.
	* import.c (import_keys,import_keys_stream): Honor this option.
	(import): New arg allow_secret and pass that arg down to ...
	(import_secret_one): to this and print a warning if secret key
	importing is not allowed.

2000-12-05  Werner Koch  <wk@gnupg.org>

	* cipher.c (cipher_filter): Moved the end_encryption status ...
	* encode.c (encode_simple,encode_crypt): to here
	* sign.c (sign_file): and here.

	* status.c (mywrite): Removed.
	(get_status_string): Removed the LFs from the strings.
	(set_status_fd,is_status_enabed,write_status_text,
	write_status_buffer): Replaced all mywrite by stdio calls and use
	fdopen to create a strem.  This is needed to make things smoother
	in the W32 version.

2000-12-04  Werner Koch  <wk@gnupg.org>

	* import.c (merge_blocks): Increment n_sigs for revocations.

2000-11-30  Werner Koch  <wk@gnupg.org>

	* g10.c (main): Use iobuf_translate_file_handle for all options
	with filehandles as arguments.  This is function does some magic
	for the W32 API.

	* verify.c (verify_signatures): Add a comment rant about the
	detached signature problem.
	* mainproc.c (proc_tree): Issue an error if a detached signature
	is assumed but a standard one was found.
	* plaintext.c (hash_datafiles): Don't fall back to read signature
	from stdin.
	* openfile.c (open_sigfile): Print verbose message only if the
	file could be accessed.

2000-11-24  Werner Koch  <wk@gnupg.org>

	* passphrase.c [HAVE_DOSISH_SYSTEM]: Disabled all the agent stuff.

2000-11-16  Werner Koch  <wk@gnupg.org>

        * g10.c: New option --use-agent
        * passphrase.c (agent_open,agent_close): New.
        (agent_get_passphrase,agent_clear_passphrase): New.
	(passphrase_clear_cache): New.
        (passphrase_to_dek): Use the agent here.
	* seckey-cert.c (do_check): Clear cached passphrases.

2000-11-15  Werner Koch  <wk@gnupg.org>

	* status.c (write_status_text): Moved the big switch to ...
	(get_status_string): ... new function.
	(write_status_buffer): New.

	* status.c (mywrite): New and replaced all write() by this.

	* status.c, status.h: Add 3 status lcodes for notaions and policy.
	* mainproc.c (print_notation_data): Do status output of notations.
	
2000-11-13  Werner Koch  <wk@gnupg.org>

	* sign.c (clearsign_file): Use LF macro to print linefeed.
	
2000-11-11  Paul Eggert  <eggert@twinsun.com>

	Clean up the places in the code that incorrectly use "long" or
        "unsigned long" for file offsets.  The correct type to use is
        "off_t".  The difference is important on large-file hosts,
        where "off_t" is longer than "long".

        * keydb.h (struct keyblock_pos_struct.offset):
        Use off_t, not ulong, for file offsets.
        * packet.h (dbg_search_packet, dbg_copy_some_packets,
        search_packet, copy_some_packets): Likewise.
        * parse-packet.c (parse, dbg_search_packet, search_packet,
        dbg_copy_some_packets, copy_some_packets): Likewise.
        * ringedit.c (keyring_search): Likewise.

        * parse-packet.c (parse): Do not use %lu to report file
        offsets in error diagnostics; it's not portable.
        * ringedit.c (keyring_search): Likewise.

2000-11-09  Werner Koch  <wk@gnupg.org>

	* g10.c (main): New option --enable-special-filenames.

2000-11-07  Werner Koch  <wk@gnupg.org>
 
	* g10.c (main): New command --pipemode.
	* pipemode.c: New.

2000-10-23  Werner Koch  <wk@gnupg.org>

	* armor.c (armor_filter): Changed output of hdrlines, so that a CR
	is emitted for DOS systems.

	* keygen.c (read_parameter_file): Add a cast for isspace().

	* status.c (myread): Use SIGINT instead of SIGHUP for DOS. 

2000-10-19  Werner Koch  <wk@gnupg.org>

	* g10.c: New option --ignore-crc-error
	* armor.c (invalid_crc): New.
	(radix64_read): Act on new option.

	* openfile.c (try_make_homedir): Klaus Singvogel fixed a stupid
	error introduced on Sep 6th. 

2000-10-18  Werner Koch  <wk@gnupg.org>

	* misc.c (print_cipher_algo_note): Don't print the note for AES.
	Changed wording.

2000-10-16  Werner Koch  <wk@gnupg.org>

	* mainproc.c (do_proc_packets): Hack to fix the problem that
	signatures are not detected when there is a MDC packet but no
	compression packet.
	
	* g10.c (print_hashline): New.
	(print_mds): Use above func with --with-colons.

	* mainproc.c (check_sig_and_print): Detect multiple signatures
	and don't verify them.

2000-10-14  Werner Koch  <wk@gnupg.org>

	* mainproc.c (add_onepass_sig): There is an easier solution to the
	error fixed yesterday; just check that we only have onepass
	packets.  However, the other solution provides an cleaner
	interface and opens the path to get access to other information
	from the armore headers.
	(release_list): Reset some more variables.

2000-10-13  Werner Koch  <wk@gnupg.org>

	* mainproc.c (add_gpg_control): New.
	(do_proc_packets): use it.
	(proc_plaintext): Changed logic to detect clearsigns.
	(proc_tree): Check the cleartext sig with some new code.

	* packet.h: New packet PKT_GPG_CONTROL.
	* parse-packet.c (parse_gpg_control): New.
	* misc.c (get_session_marker): New.
	* armor.c (armor_filter): Replaced the faked 1-pass packet by the
	new control packet.

	* keyedit.c (keyedit_menu): Allow batchmode with a command_fd. 
	* status.c (my_read): New.
	(do_get_from_fd): use it.

2000-10-12  Werner Koch  <wk@gnupg.org>

	* keygen.c (keygen_add_std_prefs): Add Rijndael to the prefs.

2000-10-07  Werner Koch  <wk@gnupg.org>

	* gpgv.c: Add more stubs for ununsed code to make the binary smaller.

Wed Oct  4 15:50:18 CEST 2000  Werner Koch  <wk@openit.de>

        * sign.c (hash_for): New arg to take packet version in account, changed
        call callers.

        * gpgv.c: New.
        * Makefile.am: Rearranged source files so that gpgv can be build with
        at least files as possible.

Mon Sep 18 12:13:52 CEST 2000  Werner Koch  <wk@openit.de>

        * hkp.c (not_implemented): Print a notice for W32

Fri Sep 15 18:40:36 CEST 2000  Werner Koch  <wk@openit.de>

        * keygen.c (keygen_add_std_prefs): Changed order of preferences to
        twofish, cast5, blowfish.

        * pkclist.c (algo_available): Removed hack to disable Twofish.

Thu Sep 14 17:45:11 CEST 2000  Werner Koch  <wk@openit.de>

        * parse-packet.c (dump_sig_subpkt): Dump key flags. Print special
        warning in case of faked ARRs.

        * getkey.c (finsih_lookup): Hack so that for v4 RSA keys the subkey
        is used for encryption.

Thu Sep 14 14:20:38 CEST 2000  Werner Koch  <wk@openit.de>

        * g10.c (main): Default S2K algorithms are now SHA1 and CAST5 - this
        should solve a lot of compatibility problems with other OpenPGP
        apps because those algorithms are SHOULD and not optional.  The old
        way to force it was by using the --openpgp option whith the drawback 
        that this would disable a couple of workarounds for PGP.

        * g10.c (main): Don't set --quite along with --no-tty.  By Frank Tobin.

        * misc.c (disable_core_dump): Don't display a warning here but a return
        a status value and ...
        * g10.c (main): ...print warnining here. Suggested by Sam Roberts.

Wed Sep 13 18:12:34 CEST 2000  Werner Koch  <wk@openit.de>

        * keyedit.c (keyedit_menu): Allow to use "debug" on the secret key.

        * ringedit.c (cmp_seckey): Fix for v4 RSA keys.
        * seckey-cert.c (do_check): Workaround for PGP 7 bug.

Wed Sep  6 17:55:47 CEST 2000  Werner Koch  <wk@openit.de>

        * misc.c (print_pubkey_algo_note): Do not print the RSA notice.
        * sig-check.c (do_signature_check): Do not emit the RSA status message.
        * pubkey-enc.c (get_session_key): Ditto.

        * encode.c (encode_simple, encode_crypt): Fix for large files.
        * sign.c (sign_file): Ditto.

Wed Sep  6 14:59:09 CEST 2000  Werner Koch  <wk@openit.de>

        * passphrase.c (hash_passphrase): Removed funny assert.  Reported by
        David Mathog.

        * openfile.c (try_make_homedir): Changes for non-Posix systems.
        * g10.c (main): Take the default homedir from macro.

        * g10.c: The --trusted-key option is back.
        * trustdb.c (verify_own_key): Handle this option.
        (add_ultimate_key): Moved stuff from verify_own_key to this new func.
        (register_trusted_key): New.

Fri Aug 25 16:05:38 CEST 2000  Werner Koch  <wk@openit.de>

        * parse-packet.c (dump_sig_subpkt): Print info about the ARR.

        * openfile.c (overwrite_filep): Always return okay if the file is
        called /dev/null. 
        (make_outfile_name): Add ".sign" to the list of know extensions.
        (open_sigfile): Ditto.

Wed Aug 23 19:52:51 CEST 2000  Werner Koch  <wk@openit.de>

        * g10.c: New option --allow-freeform-uid. By Jeroen C. van Gelderen.
        * keygen.c (ask_user_id): Implemented here.

Fri Aug  4 14:23:05 CEST 2000  Werner Koch  <wk@openit.de>

  * status.c (do_get_from_fd): Ooops, we used fd instead of opt.command_fd.
  Thanks to Michael Tokarev.

Tue Aug  1 20:06:23 CEST 2000  Werner Koch  <wk@openit.de>

  * g10.c: New opttion --try-all-secrets on suggestion from Matthias Urlichs.
  * pubkey-enc.c (get_session_key): Quite easy to implement here.

Thu Jul 27 17:33:04 CEST 2000  Werner Koch  <wk@openit.de>

  * g10.c: New option --merge-only.  Suggested by Brendan O'Dea.
  * import.c (import_one): Implemented it here
  (import_secret_one): Ditto.
  (print_stats): and give some stats.

Thu Jul 27 12:01:00 CEST 2000  Werner Koch  <wk@openit.de>

  * g10.c: New options --show-session-key and --override-session-key
  * pubkey-enc.c (hextobyte): New.
  (get_override_session_key): New.
  * mainproc.c (proc_pubkey_enc): Add session-key stuff.
  * status.h, status.c (STATUS_SESSION_KEY): New.

Thu Jul 27 10:02:38 CEST 2000  Werner Koch  <wk@openit.de>

  * g10.c (main): Use setmode(O_BINARY) for MSDOS while generating random bytes
  (print_mds): Likewise for stdin.
  * plaintext.c (handle_plaintext): Likewise for stdout.

Mon Jul 24 10:30:17 CEST 2000  Werner Koch  <wk@openit.de>

  * keyedit.c (menu_expire): expire date for primary key can be set again.

Wed Jul 19 11:26:43 CEST 2000  Werner Koch  <wk@openit.de>

  * keylist.c (is_uid_valid): New.
  (list_keyblock): Print validity information for all user IDs.  Note, this
  has to be done at other places too; for now we have only minimal support.

Wed Jul 12 13:32:06 CEST 2000  Werner Koch  <wk@openit.de>

  * helptext.c, pkclist.c: s/superseeded/superseded/

Mon Jul 10 16:08:57 CEST 2000  Werner Koch  <wk@openit.de>

  * parse-packet.c (enum_sig_subpkt): Fixed testing on crtitical bit in case
  of a NULL buffer.  Reported by Peter Marschall.

Wed Jul  5 13:28:45 CEST 2000  Werner Koch  <wk@openit.de>

  * keyedit.c, keyid.c: Add some _()

  * argparse.c:  Changed the flag to suppress --version handling to also
  suppress --help.

Wed Jun 28 11:54:44 CEST 2000  Werner Koch  <wk@openit.de>

  * armor.c (armor_filter): Set sigclass to 0 in case of non-dash-escaped
  clearsig.  This makes this mode work again.

  * mainproc.c (proc_tree): Fixed handling of one-pass-sig packets in textmode.
  Disabled the ugly workaround for PGP 5 - let's see whether thi breaks less
  cases. Found by Ted Cabeen.

  * options.h (DBG_HASHING): New.  All commented md_start_debug are now
  controlled by this debug option.

  * sign.c (print_status_sig_created): New and called from 2 places.

  * keygen.c (gen_rsa): New, but commented.
  (ask_algo): Commented support for RSA.

  * seckey-cert.c (protect_secret_key): Started to fix the code for v4 RSA
  keys - it is not solved yet. However, we have time until, Sep 20th ;)

Wed Jun 14 12:27:09 CEST 2000  Werner Koch  <wk@openit.de>

  * status.c (init_shm_coprocessing): Changed the sequence of the get,attach
  to cope with the changes in newer Linux kernels.  This bug has been found
  by <dmitri@advantrix.com> who also proposed this solution.  Hopefully
  this does not break gpg on to many systems.

  * cipher.c (write_header): Protect the IV with the MDC too.
  * encr-data.c (decrypt_data): Likewise.

Fri Jun  9 10:09:52 CEST 2000  Werner Koch  <wk@openit.de>

  * g10.c: New options --no-auto-key-retrieve
  * options.h (auto_key_retrieve): New.
  * mainproc.c (check_sig_and_print): Implemented that.

Wed Jun  7 19:19:09 CEST 2000  Werner Koch  <wk@openit.de>

  * sig-check.c (do_check): Use EMULATE_MDENCODE also on v4 packets.

Wed Jun  7 17:25:38 CEST 2000  Werner Koch  <wk@openit.de>

  * cipher.c (write_header): Use plain CFB mode for MDC encrypted packets.
  * encr-data.c (decrypt_data): Ditto.

Mon Jun  5 23:41:54 CEST 2000  Werner Koch  <wk@openit.de>

  * seskey.c (do_encode_md, encode_md_value): Add new arg v3compathack to work
  around a bug in old versions.
  * sig-check.c (do_check): use the aboved workaround when enabled.
  * g10.c: New option --emulate-md-decode-bug

Mon Jun  5 12:37:43 CEST 2000  Werner Koch  <wk@openit.de>

  * build-packet.c (do_mdc): New.
  (do_encrypted_mdc): Changed for the new proposal.
  * parse-packet.c (parse_mdc): New.
  (parse_encrypted): Fixed for the new proposal.
  * packet.h (PKT_MDC): New.
  * cipher.c (cipher_filter): Build the MDC packet here.
  * g10.c (main): Enable --force-mdc.
  * encr-data.c (mdc_decode_filter): Fixed for new MDC method

  * options.h(rfc2440): New.
  * g10.c (main): Changed the selected values for --openpgp to not include
  optional algorithms.

Thu May 18 11:38:54 CEST 2000  Werner Koch  <wk@openit.de>

	* keyedit.c (keyedit_menu): Add a keyword arg to the prompt.

	* status.c, status.h: Added 3 new status tokens.
	* status.c (do_get_from_fd): New.
	(cpr_enabled,cpr_get,cpr_get_hidden,cpr_kill_prompt,
	 cpr_get_answer_is_yes,cpr_get_answer_yes_no_quit): Modified to work
	 with the new function.
	* g10.c: Add new option --command-fd.

	* status.c (progress_cb): New.
	(set_status_fd): Register progress functions

Fri May 12 14:01:20 CEST 2000  Werner Koch  <wk@openit.de>

	* delkey.c (delete_key): Add 2 new status messages
	* status.c, status.h (STATUS_DELETE_PROBLEM): New.

	Fixed years of copyright in all source files.

Mon May  1 17:08:14 CEST 2000  Werner Koch  <wk@openit.de>

	* trustdb.c (propagate_validity): Fixed the bug that only one uid
	gets fully trusted even when all are signed by an ultimate key.

Mon May  1 15:38:04 CEST 2000  Werner Koch  <wk@openit.de>

	* getkey.c (key_byname): Always returned a defined context.  Fixed
	a segv for invalid user id specifications. Reported by Walter Koch.

	* getkey.c (get_user_id): I18ned "no user id" string. By Walter.

	* pkclist.c (do_show_revocation_reason): Typo fixes.
	* helptext.c: Ditto.

	* armor.c (armor_filter): Fixed some CRLF issues.  By Mike McEwan.

Fri Apr 14 19:37:08 CEST 2000  Werner Koch  <wk@openit.de>

	* pkclist.c (do_show_revocation_reason): New.
	(show_revocation_reason): New and called at various places.

	* g10.c (main): Fixed small typo.

	* pkclist.c (do_we_trust): Act on always_trust but not for revoked
	keys. Suggested by Chip Salzenberg.

	* g10.c: New option --lock-never.

	* ringedit.c (get_writable_keyblock_file): New.
	* keygen.c (do_generate_keypair): Use this instead of the hardwired one.

	* keygen.c (ask_user_id): Check that the email address is in the
	correct field.	Suggested by Christian Kurz.

Mon Apr 10 13:34:19 CEST 2000  Werner Koch  <wk@openit.de>

	* keyedit.c (show_key_with_all_names): s/sbb/ssb/

Tue Mar 28 14:26:58 CEST 2000  Werner Koch  <wk@openit.de>

	* trustdb.c (verify_own_keys): Do not print warning about unprotected
	key when in quiet mode.

Wed Mar 22 13:50:24 CET 2000  Werner Koch  <wk@openit.de>

	* mainproc.c (print_userid): Do UTF8 conversion before printing.
	* import.c (import_one): Ditto.
	(import_secret_one): Ditto.
	(delete_inv_parts): Ditto.

Thu Mar 16 16:20:23 CET 2000  Werner Koch  <wk@openit.de>

	* keylist.c (print_key_data): Handle a NULL pk gracefully.

	* getkey.c (merge_one_pk_and_selfsig): Fixed silly code for
	getting the primary keys keyID but kept using the one from the
	subkey.
	* pubkey-enc.c (get_it): Print a note for expired subkeys.

	* getkey.c (has_expired): New.
	(subkeys_expiretime): New.
	(finish_lookup): Check for expired subkeys needed for encryption.
	(merge_keys_and_selfsig): Fixed expiration date merging for subkeys.

	* keylist.c (list_keyblock): Print expiration time for "sub".
	(list_one): Add missing merging for public keys.
	* mainproc.c (list_node): Ditto.

2000-03-14 13:49:38  Werner Koch  (wk@habibti.openit.de)

	* keygen.c (keyedit_menu): Do not allow to use certain commands
	while the secret key is selected.

2000-03-09 12:53:09  Werner Koch  (wk@habibti.openit.de)

	* keygen.c (ask_expire_interval): Movede parsig to ...
	(parse_expire_string): ... this new function. And some new control
	commands.
	(proc_parameter_file): Add expire date parsing.
	(do_generate_keypair): Allow the use of specified output files.

2000-03-08 10:38:38  Werner Koch  (wk@habibti.openit.de)

	* keygen.c (ask_algo): Removed is_v4 return value and the commented
	code to create Elg keys in a v3 packet. Removed the rounding
	of key sizes here.
	(do_create): Likewise removed arg v4_packet.
	(gen_elg): Likewise removed arg version. Now rounding keysizes here.
	(gen_dsa): Rounding keysize now here.
	(release_parameter_list): New
	(get_parameter*): New.
	(proc_parameter_file): New.
	(read_parameter_file): New.
	(generate_keypair): Splitted. Now uses read_parameter_file when in
	batch mode.  Additional argument to specify a parameter file.
	(do_generate_keypair): Main bulk of above fucntion and uses the
	parameter list.
	(do_create): Don't print long notice in batch mode.
	* g10.c (main): Allow batched key generation.

Thu Mar  2 15:37:46 CET 2000  Werner Koch  <wk@gnupg.de>

	* pubkey-enc.c (get_it): Print a note about unknown cipher algos.

	* g10.c (opts): Add a note to the help listing about the man page
	and removed some options from the help listing.

	* keyedit.c (print_and_check_one_sig): Use a new function to truncate
	the output of the user ID.  Suggested by Jan-Benedict Glaw.

Wed Feb 23 10:07:57 CET 2000  Werner Koch  <wk@gnupg.de>

	* helptext.c: typo fix.

Thu Feb 17 13:39:32 CET 2000  Werner Koch  <wk@gnupg.de>

	* revoke.c: Removed a bunch of commented code.

	* packet.h (SIGSUBPKT_REVOC_REASON): New.
	* build-packet.c (build_sig_subpkt): Support new sub packet.
	* parse-packet.c (parse_one_sig_subpkt): Ditto.
	(dump_sig_subpkt): Ditto.
	* revoke.c (ask_revocation_reason): New.
	(release_revocation_reason_info): New.
	(revocation_reason_build_cb): New.
	(gen_revoke): Ask for reason.
	* main.h (struct revocation_reason_info): Add declaration.
	* keyedit.c (menu_revsig): Add support for revocation reason.
	(menu_revkey): Ditto.
	(sign_uid_mk_attrib): Renamed to ...
	(sign_mk_attrib): ... this, made static and add support for reasons.

Tue Feb 15 08:48:13 CET 2000  Werner Koch  <wk@gnupg.de>

	* build-packet.c (build_packet): Fixed fixing of old comment packets.

	* import.c (import_keys): Fixed importing from stdin when called with
	nnames set to zero as it normally happens.

Mon Feb 14 14:30:20 CET 2000  Werner Koch  <wk@gnupg.de>

	* sig-check.c (check_key_signature2): Add new arg r_expired.
	(do_signature_check): New arg to pass it down to ...
	(do_check): New arg r-expire which is set when the signature
	has expired.
	* trustdb.c (check_sig_record): Set SIGF_EXPIRED flag and set
	the expiretime to zero so that thi signature will not be checked
	anymore.

Fri Feb 11 17:44:40 CET 2000  Werner Koch  <wk@gnupg.de>

	* g10.c (g10_exit): Update the random seed_file.
	(main): Set the random seed file.  New option --no-random-seed-file.

Thu Feb 10 17:39:44 CET 2000  Werner Koch  <wk@gnupg.de>

	* keyedit.c (menu_expire): Fixed segv due to unitialized sub_pk.
	By Rémi.

Thu Feb 10 11:39:41 CET 2000  Werner Koch  <wk@gnupg.de>

	* keylist.c (list_keyblock): Don't print warnings in the middle of
	regulat output lines.  By Rémi.

	* sig-check.c: Include options.h

Wed Feb  9 15:33:44 CET 2000  Werner Koch  <wk@gnupg.de>

	* gpg.c: New option --ignore-time-conflict
	* sig-check.c (do_check): Implemented this option.
	* trustdb.c (check_trust): Ditto.
	* sign.c (do_sign): Ditto.
	* keygen.c (generate_subkeypair): Ditto.

	* encode.c (encode_simple): use iobuf_cancel after open failure.
	Reported by Huy Le.

Fri Jan 14 18:32:01 CET 2000  Werner Koch  <wk@gnupg.de>

	* packet.h (STRING2KEY): Changed mode from byte to int.
	* parse-packet.c (parse_key): Add the special GNU protection stuff
	* build-packet.c (so_secret_key): Ditto.
	* seckey-cert.c (do_check): Ditto.
	* keyedit.c (change_passphrase): Ditto.
	* export.c (export_secsubkeys): New.
	(do_export_stream): Hack to export the primary key using mode 1001.
	* g10.c: New command --export-secret-subkeys

Thu Jan 13 19:31:58 CET 2000  Werner Koch  <wk@gnupg.de>

	* armor.c (is_armored): Check for 1-pass-sig packets. Reported by
	David Hallinan <hallinan@rtd.com>.
	(armor_filter): Replaced one LF by the LF macro.  Reported by
	Wolfgang Redtenbacher.

Wed Jan  5 11:51:17 CET 2000  Werner Koch  <wk@gnupg.de>

	* g10.c (main): Reset new global flag opt.pgp2_workarounds
	when --openpgp is used.
	* mainproc.c (proc_plaintext): Do the PGP2,5 workarounds only
	when the global flag is set.
	(proc_tree): Ditto.
	* textfilter.c (copy_clearsig_text): Ditto.
	* armor.c (armor_filter): Ditto.

	* g10.c: New option --list-only
	* mainproc.c (proc_tree): Don't do it if opt.list_only is active.
	(proc_pubkey_enc): Implement option.

	* status.h, status.c ({BEGIN,END}_{EN,DE}CRYPTION): New.
	* cipher.c (cipher_filter): New status outputs.
	* mainproc.c (proc_encrypted): New status outputs.

Fri Dec 31 14:08:15 CET 1999  Werner Koch  <wk@gnupg.de>

	* armor.c (armor_filter): Made the "Comment:" header translatable.

	* hkp.c (hkp_import): Make sure that the program does not return
	success when there is a connection problem.  Reported by Phillip Jones.

Sun Dec 19 15:22:26 CET 1999  Werner Koch  <wk@gnupg.de>

	* armor.c (LF): Use this new macro at all places where a line LF
	is needed.  This way DOSish textfiles should be created when the
	input data is also in dos mode.
	* sign.c (LF): Ditto.
	* textfilter.c (LF): Ditto.
	(copy_clearsig_text): Disabled the forcing of CR,LF sequences
	for DOS systems.

	* plaintext.c (handle_plaintext): Fixes for line endings on DOS.
	and react on a LF in cleartext.
	* armor.c (fake_packet): Restore the original line ending after
	removing trailing spaces.

	* signal.c (got_fatal_signal): DOS fix.

Thu Dec 16 10:07:58 CET 1999  Werner Koch  <wk@gnupg.de>

	* mainproc.c (print_failed_pkenc): Fix for unknown algorithm.
	Found by fygrave@epr0.org.

Thu Dec  9 10:31:05 CET 1999  Werner Koch  <wk@gnupg.de>

	* hkp.c: i18n the strings.

Sat Dec  4 15:32:20 CET 1999  Werner Koch  <wk@gnupg.de>

	* trustdb.c (verify_key): Shortcut for ultimately trusted keys.

Sat Dec  4 12:30:28 CET 1999  Werner Koch  <wk@gnupg.de>

	* pkclist.c (build_pk_list): Validate the trust using the namehash
	if this one has been set by the key lookup.

	* g10.c: Add --delete-secret-key to the help page.

	* openfile.c (copy_options_file): Made static.
	(try_make_homedir): New.
	* ringedit.c (add_keyblock_resource): Use the try_make_hoemdir logic.
	* tdbio.c (tdbio_set_dbname): Likewise.

	* keygen.c (generate_user_id): Use m_alloc_clear() here. We should
	better use an allocation function specific to the user_id packet.

	* keygen.c (keygen_add_std_prefs): Changed symmetric preferences
	to include Blowfish again.  This is due to it's better speed compared
	to CAST5.

	* g10.c (strusage): Print the home directory.

	* armor.c (armor_filter): Take action on the cancel control msg.
	* filter.h (armor_filter_context_t): Add cancel flag.

Mon Nov 29 21:52:11 CET 1999  Werner Koch  <wk@gnupg.de>

	* g10.c: New option --fast-list-mode ..
	* keylist.c (list_keyblock): .. and implemented.
	* mainproc.c (list_node): Ditto.

	* import.c (mark_non_selfsigned_uids_valid): Fixed the case that there
	is a uid without any packet following.

Mon Nov 22 11:14:53 CET 1999  Werner Koch  <wk@gnupg.de>

	* mainproc.c (proc_plaintext): Never enable the hash processing
	when skip_verify is active.

	* armor.c (parse_header_line): Stop parsing on a WS line too.
	Suggested by Aric Cyr.

	* tdbdump.c (HEXTOBIN): Changed the name of the argument, so that
	traditional cpp don't mess up the macros. Suggested by Jos Backus.

	* mainproc.c (list_node): Print the PK algo in the --with-colon mode.
	* keylist.c (list_keyblock): Ditto.

	* signal.c (got_fatal_signal): Found the reason why exit(8) did not
	work - it is better to set the disposition back to default before
	raising the signal.  Print the notice on stderr always.

Fri Nov 12 20:33:19 CET 1999  Werner Koch  <wk@gnupg.de>

	* g10.c (make_username): Swapped the logic.
	* keylist.c (public_key_list): Now takes a STRLIST as arg and moved
	the creation ot this list to the caller, so that he can copy with
	UTF-conversion of user IDs.  Changed all callers.
	(secret_key_list): Likewise.

	* getkey.c (get_user_id_string_native): New and ...
	* encode.c (write_pubkey_enc_from_list): ... use it here.

	* pubring.asc: Updated.

	* packet.h (PKT_PHOTO_ID): New.
	* parse-packet.c (parse_photo_id): New.
	* build-packet.c (do_user_id: Handle photo IDs.
	(build_packet): Change CTB for photo IDs
	* free-packet.c (free_user_id): Release memory used for photo IDs
	* sig-check.c (hash_uid_node): Handle photo IDs too.
	* trustdb.c (print_uid_from_keyblock): Hash photo ID.
	(make_uid_records): Ditto.
	* getkey.c (find_by_name): Ditto.
	* keyedit.c (show_prefs): Ditto.
	* keylist.c (list_keyblock): Ditto.

Thu Oct 28 16:08:20 CEST 1999  Werner Koch  <wk@gnupg.de>

	* keygen.c (ask_expire_interval): Print a warning for systems
	with a signed 32 time_t if the exiration time is beyoind 2038.

Fri Oct  8 20:40:50 CEST 1999  Werner Koch  <wk@gnupg.de>

	* ringedit.c (enum_keyblocks): The last fix way really stupid;
	reverted and set rt to Unknown.

Fri Oct  8 20:32:01 CEST 1999  Werner Koch  <wk@gnupg.de>

	* ringedit.c (enum_keyblocks): Zero the entire kbpos out on open.

	* g10.c (oEntropyDLL): Removed option.
	(main): Made the warning on development versions more verbose.

	* g10.c (oHonorHttpProxy): New option.
	* hkp.c (hkp_ask_import,hkp_export): Implement this option.
	* options.skel: Enable this option for new installations

Mon Oct  4 21:23:04 CEST 1999  Werner Koch  <wk@gnupg.de>

	* import.c (import_keys): Changed calling interface, adjusted caller.
	(import): Moved printing of stats out ...
	(print_stats): New. ... to here.
	(import_keys_stream): Call stats print here.
	(import_keys): Print stats as totals for all files.

	* tdbio.h (DIRF_NEWKEYS): New
	* tdbio.c (tdbio_dump_record): Print the new flag.
	* trustdb.c (check_trust_record): New arg sigs_only.  Adapted all
	callers.
	(do_update_trust_record): Removed recheck arg and add a new sigs_only
	do we can later improve on the performance.  Changed all callers too.
	(check_trustdb): Evalutate the new flag and add a status output.
	Do a check when the dir record has not been checked.
	(build_cert_tree): Evaluate the new flag.
	(check_trust): Ditto.  Do a trust_record check, when the dir record
	is not marked as checked.
	(mark_fresh_keys): New.
	(clear_lid_table): New.
	(sync_trustdb): New.
	* import.c (import_keys): Call sync_trustdb() after processing.
	(import_keys_stream): Ditto.
	* tdbdump.c (import_ownertrust): Ditto.

	* import.c (import_revoke_cert): Notify the trust DB.
	(do_update_trust_record): Use |= to set the REVOKED bit and not &=;
	shame on me for this bad copy+paste introduced bug.
	(do_we_trust): Add trustmask to allow revoked key override to work.
	Chnaged are to allow return of a mofified trustlevel. Adapted the
	one caller.

	* g10.c: New options --emulate-3des-s2k-bug
	* passphrase.c (hash_passphrase): Implemented above.

	* mainproc.c (proc_tree): Check for standalone signatures.
	(do_check_sig): Print a notice for a standalone revocation
	(check_sig_and_print): Do not print an error for unchecked standalone
	revocations.

Tue Sep 28 20:54:37 CEST 1999  Werner Koch  <wk@gnupg.de>

	* encode.c (encode_simple): Use new CTB when we don't have the
	length of the file.  This is somewhat strange as the comment above
	indicates that this part is actually fixed for PGP 5 - maybe I simply
	lost the source line, tsss.

	* armor.c (armor_filter): Set a flag if no OpenPGP data has been found.
	* verify.c (verify_signatures): Add an error helptext.

Thu Sep 23 19:24:30 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* openfile.c (open_outfile): Fixed the 8dot3 handling.

	* passphrase.c (passphrase_to_dek): Print uid using utf8 func.
	* delkey.c (delete_key): Ditto.
	* pkclist.c (show_paths,do_edit_ownertrust,do_we_trust): Ditto
	(do_we_trust_pre): Ditto.
	* trustdb.c (print_user_id,check_uidsigs): Ditto.
	* revoke.c (gen_revoke,ask_revoke_sig): Ditto.

Thu Sep 23 09:52:58 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* verify.c (print_file_status): New.
	(verify_one_file): Moved status print to th new fnc. Add error status.
	* status.c, status.h (STATUS_FILE_ERROR): New

Wed Sep 22 10:14:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* openfile.c (make_outfile_name): Use case-insenstive compare for
	DOS systems.  Add ".pgp" to the list of know extensions.
	(open_outfile): For DOS systems try to replace the suffiy instead of
	appending it.

	* status.c, status.h: Add STATUS_FILE_{START,DONE}.
	* verify.c (verify_one_file): Emit these new stati.

	* sign.c (clearsign_file): Avoid duplicated Entries in the "Hash:"
	line.  Those headers are now only _not_ printed when there are
	only old-style keys _and_ all hashs are MD5.

Mon Sep 20 12:24:41 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* verify.c (verify_files, ferify_one_file): New.
	* g10.c:  New command --verify-files

Fri Sep 17 12:56:42 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c: Add UK spelling as alias for armor options ;-)

	* import.c (append_uid): Fixed a SEGV when there is no selfsig and
	no subkey.
	(merge_sigs): Ditto.  Removed the assertion.

Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c: New option --entropy-dll-name

Mon Sep 13 10:51:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* signal.c (got_fatal_signal): Print message using write(2) and
	only for development versions.

Mon Sep  6 19:59:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* tdbio.c (tdbio_set_dbname): Use mkdir macro
	* ringedit.c (add_keyblock_resource): Ditto.

Fri Sep  3 10:04:45 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (build_pk_list): Skip keys set with --encrypt-to also
	when asking for a key.

	* plaintext.c (handle_plaintext): Make sure that we don't read a
	second EOF in the read loop for partial length packets.

	* mainproc.c (check_sig_and_print): print user ID as utf-8.

Thu Sep  2 16:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* import.c (merge_blocks): First add new subkeys, then merge subkey
	certificates.
	(merge_sigs): Don't merge subkey signatures here.

Wed Sep  1 15:30:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keygen.c (ask_expire_interval): Fixed bug related to cpr_xx (tnx
	Francis J. Lacoste).

Tue Aug 31 17:20:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* plaintext.c (do_hash): Hash CR,LF for a single CR.
	(ask_for_detached_datafile): Changed arguments to be closer to
	those of hash_datafiles and cleanup the code a bit.
	* mainproc.c (proc_tree): Workaround for pgp5 textmode detached
	signatures.  Changed behavior of asking for data file to be the same
	as with provided data files.

	* keylist.c (list_keyblock): Use UTF8 print functions.

Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* import.c (chk_self_sigs): some s/log_error/log_info/ so that gpg
	does not return an error if a key has some invalid packets.

	* helptext.c: Fixed some typos and changed the way the
	translation works.  The english text is now the keyword for gettext
	and not anymore the keyword supplied to the function.  Done after
	some discussion with Walter who thinks this is much easier for the
	translators.

	* misc.c (disable_core_dumps): Don't do it for DOSish systems.

	* signal.c (signal_name): Bounds check on signum.

Wed Aug  4 10:34:18 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pubring.asc: Updated.

	* pkclist.c (do_we_trust_pre,check_signatures_trust): Do not print
	the warning about --always_trust when --quiet is used.

	* pkclist.c (fpr_info): New and called at several places.

	* parse-packet.c (dump_sig_subpkt): List revocation key contents.

Mon Jul 26 09:34:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (build_pk_list): Fixed typo in format string.

	* trustdb.c (create_shadow_dir): Don't translate the error string.

	* g10.c (main): Fixed spelling of user-id.
	* getkey.c (find_by_name_pk,find_by_name_sk,
	find_by_keyid,find_by_keyid_sk): Ditto and translate it.
	* import.c (mark_non_selfsigned_uids_valid,delete_inv_parts): Ditto.


Mon Jul 26 01:01:39 CEST 1999  Michael Roth <mroth@nessie.de>

	* g10.c, options.h: New options --no-literal and --set-filesize

	* encode.c (encode_simple, encode_crypt): Support for the options
	--no-literal and --set-filesize.

	* sign.c (sign_file): ditto.

Fri Jul 23 13:53:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* ringedit.c (enum_keyblocks): Removed annoying error message in cases
	when we have no keyring at all to enum.

	* getkey.c (classify_user_id): Rewrote to relax the recognition of
	keyIDs and fingerprints (Michael).

	* mainproc.c (check_sig_and_print): Print status NO_PUBKEY.
	(print_failed_pkenc): Print status NO_SECKEY.

	* import.c (mark_non_selfsigned_uids_valid): New.
	* g10.c: New option --allow-non-selfsigned-uid.

	* pkclist.c (print_fpr): New.
	(do_we_trust_pre): Print the fpr before asking whether to use the key
	anyway.
	(do_edit_ownertrust): Likewise.

Thu Jul 22 20:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* ringedit.c (enum_keyblocks): Removed annoying error message in cases
	when we have no keyring at all to enum.

	* getkey.c (classify_user_id): Rewrote to relax the recognition of
	keyIDs and fingerprints (Michael).

	* mainproc.c (check_sig_and_print): Print status NO_PUBKEY.
	(print_failed_pkenc): Print status NO_SECKEY.

	* import.c (mark_non_selfsigned_uids_valid): New.
	* g10.c: New option --allow-non-selfsigned-uid.

Thu Jul 15 10:15:35 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c: New options --disable-{cipher,pubkey}-algo.

Wed Jul 14 19:42:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* status.h (STATUS_IMPORTED): New.
	* import.c (import): Print some status information (Holger Schurig).

	* g10.c (main): Make --no-greeting work again. Add a warning when
	--force-mds is used.

Tue Jul 13 17:39:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (do_edit_ownertrust): Changed the way help works.
	(build_pk_list): Implemented default recipient stuff.
	* g10.c: New options --default-recipient[-self]
	(main): Suppress greeting in most cases, entering a passphrase or
	a missing value is not considered to be interactive use.
	Merged --print-md and --print-mds; the latter is now obsolete.
	Changed the way --gen-random works and documented it.
	Changed the way --gen-prime works and add a man entry.
	* g10.c (MAINTAINER_OPTIONS): Removed.

Mon Jul 12 18:45:57 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keyedit.c (keyedit_menu): Add arg sign_mode and changed callers
	* g10.c (main): New command --lsign-key.

Mon Jul 12 14:55:34 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* mainproc.c (kidlist_item): New.
	(release_list): Release failed pk-enc-list.
	(print_failed_pkenc): New
	(proc_encrypted): Print info about failed PK enc.

	* openfile.c (make_outfile_name): s/error/info/

	* passphrase.c (passphrase_to_dek): Return an empty passphrase when
	in batch mode and don't make the warning message fatal
	* seckey-cert.c (check_secret_key): Try only once when in batch mode.

	* g10.c (make_username): New.

Thu Jul  8 16:21:27 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* packet.h (PKT_ring_trust): New
	* parse-packet.c (parse_trust): Store trust value
	* build-packet (build_packet): Ignore ring trust packets.
	* mainproc.c (add_ring_trust): New.
	(list_node): Print "rtv" records.
	* g10.c: New option --with-fingerprint.

	* trustdb.c (verify_own_keys): Don't insert if we are dry running
	(check_trust): Ditto.

Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* Makefile.am: Support for libtool.

	* keygen.c (ask_expire_interval): Hack to allow for an expire date.

	* trustdb.c (do_update_trust_record,update_trust_record): Splitted.
	(check_trust_record): New.
	(check_trust,build_cert_tree): Check the dir record as needed.
	(upd_pref_record): Removed.
	(make_pref_record): New.
	(propagate_validity): Stop as soon as we have enough validity.

	* tbdio.c (MAX_CACHE_ENTRIES_HARD): Increased the limit.


Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c (g10_exit): Dump random stats.

	* sig-check.c (check_key_signature,check_key_signature2): Enhanced
	version and wrapper for old function.
	(do_signature_check,signature_check): Ditto.

Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* keyedit.c (show_key_with_all_names): Print a notice for disabled keys.
	(enable_disable_keys): Add functionality
	* pkclist.c (edit_ownertrust): preserve disabled state.
	(build_pk_list): Skip disabled keys.
	* trustdb.c (upd_one_ownertrust): Ditto.
	(build_cert_tree): Mask the ownertrust.
	(trust_letter): Mask the value.
	(do_check): Take disabled flag into account.

	* passphrase.c (passphrase_to_dek): Add a pubkey_algo arg and changed
	all callers.

	* g10.c (utf8_strings): 2 new options.

	* trustdb.c (insert_trust_record_by_pk): New, replaces the next one.
	(insert_trust_record): Now takes a keyblock as arg.  Changed all
	callers to use the appropritae function.

	* openfile.c (ask_outfile_name): New.
	* plaintext.c (handle_plaintext): Ask for filename if there is
	no valid syntax. Don't use fname varbatim but filter it.

Tue Jun 29 21:44:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* trustdb.h (TRUST_FLAG_DISABLED): New.

	* status.c (USE_CAPABILITIES): Capabilities support (Remi).

	* tdbio.c : Added new fields to the DIR record.
	(tdbio_write_record): Fixed the update of the hash tables.
	(tdbio_delete_record): Drop the record from the hash tables.
	(drop_from_hashtbl): New.

	* status.c (cpr_get): Special online help mode.
	* helptext.c ("keyedit.cmd"): Removed.
	* keyedit.c (keyedit_menu): Use only help system.
	(enable_disable_key): New bit doies not yet work.

Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>


	* dearmor.c (enarmor_file): Fixed comment string.
	* tdbdump.c (export_ownertrust): Text fix.
	* tbio.c (tdbio_invalid): Ditto.

	* parse-packet.c (parse_key): Made temp buffer larger.

	* Makefile.am (install-data-local): Add missing backslashes

Tue Jun 15 12:21:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c (main): Made iterated+salted the default S2K method.

	* Makefile.am (install-data-local): Use DESTDIR.

	* passphrase.c (passphrase_to_dek): Emit missing-passphrase while in
	batchmode.

	* parse-packet.c (parse_pubkeyenc): Fixed a SEGV.

Mon Jun 14 21:18:54 CEST 1999 Michael Roth <mroth@nessie.de>

	* g10.c: New options --openpgp, --no-tty, --emit-version,
	  --default-comment and --lock-multiple

Thu Jun 10 14:18:23 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* free-packet.c (free_encrypted): Fixed EOF case (Remi).
	(free_plaintext): Ditto.

	* helptext.c (keyedit.delsig.unknown): New (Remi).
	* keyedit.c (print_and_check_one_sig): Add arg print_without_key and
	changed all callers to make use of it (Remi):

Tue Jun  8 13:36:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keylist.c (print_key_data): New and called elsewhere.
	* g10.c: New option --with-key-data

Wed Jun  2 14:17:19 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* mainproc.c (proc_tree): Yet another bad hack to cope with
	broken pgp2 created detached messages in textmode.

Tue Jun  1 16:01:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* openfile.c (make_outfile_name): New.
	* plaintext.c (handle_plaintext): Outputfile is now the inputfile
	without the suffix.
	* g10.c: New option --use-embedded-filename

Mon May 31 19:41:10 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c (main): Fix for SHM init (Michael).

	* compress.c, encr-data.c, mdfilter.c,
	  plaintext.c, free-packet.c: Speed patches (Rémi).

Thu May 27 09:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* status.c (cpr_get_answer_yes_no_quit): New.
	* keyedit.c (menu_delsig): New.
	(check_all_keysigs): Splitted.
	(print_and_check_one_sig): New.

Wed May 26 14:36:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* build-packet.c (build_sig_subpkt): Support large packets.
	* parse-packet.c (enum_sig_subpkt): Replaces parse_sig_subpkt.
	* mainproc.c (print_notation_data): Print all notation packets.
	* g10.c (add_notation_data): Add a way to specify the critical flag.
	(main): Add option --set-policy-url.
	(check_policy_url): Basic checks.
	* sign.c (mk_notation_and_policy): Replaces mk_notation.

	* parse-packet.c (can_handle_critical): Moved decision whether we can
	handle critical subpacket to an extra function.

Tue May 25 19:50:32 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* sign.c (sign_file): Always use compression algo 1 for signed
	onyl file becuase we can´ be sure the the verifier supports other
	algorithms.

	* build-packet.c (build_sig_subpkt): Support for notation data.
	* sign.c (sign_file,clearsign_file,make_keysig_packet): Ditto.
	(mk_notation): New.
	* g10.c (add_notation_data): New and add option -N
	* mainproc.c (print_notation_data): New.
	(check_sig_and_print): Print any notation data of the signed text.

Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (check_signatures_trust): Print a warning and return
	immediateley if opt.always_trust is true.

	* g10.c (main): Corrected handling of no-default-keyring

	* pkclist.c (algo_available): Disable Twofish until we have settled
	how to do the MDC.

	* hkp.c: Disable everything for mingw32

Sat May 22 22:47:26 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* mainproc.c (check_sig_and_print): Add sig creation time to the
	VALIDSIG status output. Add more info to the ERRSIG output.
	* sig-check.c (signature_check): Add sig time after epoch to SIG_ID.

	* import.c (import_one): Merge duplicate user IDs.
	(collapse_uids): New.
	* kbnode.c (move_kbnode): New.
	(remove_kbnode): New.
	* keyedit.c (keyedit_menu): Call collapse_uids.

	* g10.c: new option --logger-fd.

	* import.c: s/log_*_f/log_*/

Thu May 20 14:04:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* misc.c (pull_in_libs): do the volatile only for gcc

	* sig-check (signature_check): Emit SIG_iD only for classes 0 and 1.

	* armor.c (armor_filter): Add detection of PGP2 created clearsigs.
	(fake_packet): A tab is not a WS for pgp2 - handle this.
	* textfilter.c (len_without_trailing_chars): New.
	(copy_clearsig_text): Add pgp2mode arg.
	* sign.c (clearsign_file): pass old_style to the above fnc.


Wed May 19 16:04:30 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c: New option --interactive.

	* mainproc.c (proc_plaintext): Add workaround for pgp2 bug
	(do_check_sig): Ditto.
	(proc_tree): Ditto.
	* plaintext.c (do_hash): Ditto.
	(hash_datafiles): Ditto, add an arg, changed all callers.
	* mdfilter.c (md_filter): Add support for the alternate hash context.

Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* parse-packet.c (parse_encrypted): Support for PKT_ENCRYPTED_MDC.
	* build-packet.c (do_encrypted_mdc): Ditto.
	* cipher.c (write_header): Add mdc hashing.
	(cipher_filter): write out the hash.
	* mainproc.c (do_proc_packets): Add PKT_ENCRYPTED_MDC.
	* encr-data.c (decrypt_data): Add mdc hashing.
	(mdc_decode_filter): New.

	* parse-packet.c (parse_sig_subpkt): Fixed stupid bug for subpkt
	length calculation
	(parse_signature): Fixed even more stupid bug.

Sat May  8 19:28:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* build-packet.c (do_signature): Removed MDC hack.
	* encode.c (encode_crypt_mdc): Removed.
	* mainproc.c (do_check_sig): Removed MDC hack.
	(check_sig_and_print): Ditto.
	* parse-packet.c (parse_signature): Ditto.
	* sig-check.c (mdc_kludge_check): Ditto.
	* free-packte.c (copy_signature, free_seckey_enc): Ditto.

	* parse-packet.c (parse_signature,parse_key): Store data of
	unknown algorithms with mpi_set_opaque inseatd of the old
	faked data stuff.
	(read_rest): Removed.
	(read_rest2): Renamed to read_rest
	* build-packet.c (write_fake_data): Use mpi_get_opaque.
	* free-packet.c (cp_fake_data): Removed and cahnged all callers
	to use mpi_copy.
	(free_pubkey_enc,free_seckey_enc,release_public_key_parts,
	 release_secret_key_parts): Use mpi_free for opaque data.

Thu May  6 14:18:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* trustdb.c (check_trust): Check for revoked subkeys.
	* pkclist.c (do_we_trust): Handled revoked subkeys.
	(do_we_trust_pre): Ditto.
	(check_signatures_trust): Ditto.

	* build-packet.c (hash_public_key): Fix for ancient g10 keys.

	* mainproc.c (do_proc_packets): Return EOF if no data has been read.
	* g10.c (main): Catch errors for default operation.

Thu Apr 29 12:29:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* sign.c (sign_file): Fixed hashing in case of no subpackets.
	(clearsign_file): Ditto.
	(make_keysig_packet): Ditto.

Wed Apr 28 13:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keyedit.c (keyedit_menu): Add new command revkey.
	* (menu_revkey): New.


Mon Apr 26 17:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* parse-packet.c (parse_signature): Add the MDC hack.
	* build-packet.c (do_signature): Ditto.
	* free-packet.c (free_seckey_enc,copy_signature,cmp_signatures): Ditto.
	* mainproc.c (do_check_sig): Ditto.
	* sig-check.c (mdc_kludge_check): New.
	* encode.c (encrypt_mdc_file): New.

	* keyedit.c (check_all_keysigs): List revocations.
	* (menu_revsig): New.
	* sign (make_keysig_packet): Support for class 0x30.

Sun Apr 18 20:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (select_algo_from_prefs): Fixed the case that one key
	has no preferences (Remi Guyomarch).

	keylist.c (list_keyblock): ulti_hack to propagate trust to all uids.

Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* seckey-cert.c (do_check): Use real IV instead of a 0 one, so that
	it works even if the length of the IV doesn't match the blocksize.
	Removed the save_iv stuff.
	(protect_secret_key): Likewise.  Create the IV here.
	* packet.h (PKT_secret_key): Increased size of IV field and add a
	ivlen field.
	* parse-packet.c (parse_key): Use the len protect.ivlen.
	* build-packet.c (do_secret_key). Ditto.

	* getkey.c (key_byname): Close keyblocks.

	* Makefile.am (gpgm): Removed this
	* g10.c: Merged gpg and gpgm

	* import.c (import): Utilize option quiet.
	* tdbio.c (tdbio_set_dbname): Ditto.
	* ringedit.c (add_keyblock_resource,keyring_copy): Ditto.

	* keyedit.c (sign_uids): Add some batch support.

	* g10.c (main): add call to tty_batchmode.

Fri Apr  9 12:26:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* status.c (write_status_text): Some more status codes.
	* passphrase_to_dek (passphrase_to_dek): add a status code.
	* seckey_cert.c (check_secret_key): Likewise.

	* encr-data.c (decrypt_data): Reverse the last changes
	* cipher.c (write_header): Ditto.

	* parse-packet.c (parse_key): Dropped kludge for ancient blowfish mode.

Thu Apr  8 09:35:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* mainproc.c (proc_encrypted): Add a new status output
	* passphrase.c (passphrase_to_dek): Ditto.
	* status.h status.c: Add new status tokens.

Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* encr-data.c (decrypt_data): Fixes for 128 bit blocksize
	* cipher.c (write_header): Ditto.
	* seckey-cert.c (do_check): Ditto.
	(protect_secret_key). Ditto.
	* misc.c (print_cipher_algo_note): Twofish is now a standard algo.

	* keygen.c (do_create): Fixed spelling (Gaël Quéri)
	(ask_keysize): Only allow keysizes up to 4096

	* ringedit.c (add_keyblock_resource): chmod newly created secrings.

	* import.c (delete_inv_parts): Fixed accidently deleted subkeys.

Tue Apr  6 19:58:12 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* armor.c: Removed duped include (John Bley)
	* mainproc.c: Ditto.

	* build-packet.c (hash_public_key): Fixed hashing of the header.

	* import.c (delete_inv_parts): Allow import of own non-exportable sigs.

Sat Mar 20 13:59:47 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* armor.c (fake_packet): Fix for not not-dash-escaped

Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c (main): Added command --recv-keys
	* hkp.c (hkp_import): New.

Wed Mar 17 13:09:03 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* trustdb.c (check_trust): add new arg add_fnc and changed all callers.
	(do_check): Ditto.
	(verify_key): Ditto.
	(propagate_validity): Use the new add_fnc arg.
	(print_user_id): Add the FILE arg.
	(propagate_ownertrust): New.
	* pkclist.c (add_ownertrust_cb): New and changed the add_ownertrust
	logic.

	* getkey.c (get_keyblock_bylid): New.
	* trustdb.c (print_uid_from_keyblock): New.
	(dump_tn_tree_with_colons): New.
	(list_trust_path): Add colon print mode.

	* trustdb.c (insert_trust_record): Always use the primary key.

	* encode.c (encode_simple): Added text_mode filter (Rémi Guyomarch)
	(encode_crypt): Ditto.

	* mainproc.c (proc_pubkey_enc): Added status ENC_TO.
	* armor.c (armor_filter): Added status NODATA.
	* passphrase.c (passphrase_to_dek): Always print NEED_PASSPHRASE
	* seckey_cert.c (check_secret_key): Added BAD_PASS status.

	* g10.c (main): Set g10_opt_homedir.

Sun Mar 14 19:34:36 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keygen.c (do_create): Changed wording of the note (Hugh Daniel)

Thu Mar 11 16:39:46 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* tdbdump.c: New

	* trustdb.c (walk_sigrecs,do_list_sigs,list_sigs,
	list_records,list_trustdb,export_ownertrust,import_ownertrust): Moved
	to tdbdump.c
	(init_trustdb): renamed to setup_trustdb.  Changed all callers.
	(do_init_trustdb): renamed to init_trustdb().
	* trustdb.c (die_invalid_db): replaced by tdbio_invalid.
	* tdbio.c (tdbio_invalid): New.

	* import.c (delete_inv_parts): Skip non exportable signatures.
	* keyedit.c (sign_uid_mk_attrib): New.
	(sign_uids): Add the local argument.
	(keyedit_menu): New "lsign" command.
	* trustdb.c (register_trusted_key): Removed this and all related stuff.
	* g10.c (oTrustedKey): Removed option.

	* tdbio.h (dir.valcheck): New trustdb field.
	* tdbio.c: Add support for this field
	(tdbio_read_modify_stamp): New.
	(tdbio_write_modify_stamp): New.
	* trustdb.c (do_check): Check against this field. Removed cache update.
	(verify_key): Add cache update.
	(upd_uid_record): Some functional changes.
	(upd_cert_record): Ditto

Wed Mar 10 11:26:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keylist.c (list_keyblock): Fixed segv in uid. Print 'u' as
	validity of sks.

Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* getkey.c (classify_user_id): Add new mode 12 (#<lid>).

	* seckey-cert.c (check_secret_key): replaced error by info.

	* trustdb.c (query_trust_info): Add another arg, changed all callers.
	(check_trust): Ditto.
	(do_check): Ditto.
	(verify_key): Handle namehash.
	* keylist.c (list_keyblock): print trust info for user ids.

	* sig-check.c (signature_check): Add sig-created to status output.

Tue Mar  2 16:44:57 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* textfilter.c (copy_clearsig_text): New.
	(clearsign): Removed.
	* sign.c (clearsign_file): does not use textfiler anymore.

	* keygen.c (ask_user_id): print a note about the used charset.

Tue Mar  2 10:38:42 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* sig-check.c (signature_check): sig-id now works for all algos.

	* armor.c (armor_filter): Fixed armor bypassing.

Sun Feb 28 19:11:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keygen.c (ask_user_id): Don't change the case of email addresses.
	(has_invalid_email_chars): Adjusted.

	* keylist.c (list_one): Really list serect keys (Remi Guyomarch)

	* keyedit.c (menu_select_uid): Add some braces to make egcs happy.
	(menu_select_key): Ditto.

	* mainproc.c (do_proc_packets): List sym-enc packets (Remi Guyomarch)

Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (build_pk_list): Return error if there are no recipients.

	* sig-check.c (signature_check): New signature id feature.
	* armor.c (make_radic64_string): New.

	* mainproc.c (proc_pubkey_enc): early check for seckey availability.

	* pkclist.c (do_we_trust_pre): print user id before asking.

	* ringedit.c (add_keyblock_resource,get_keyblock_handle): Cleaner
	handling of default resource.


Thu Feb 25 18:47:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (algo_available): New.
	(select_algo_from_prefs): Check whether algo is available.

	* ringedit.c (keyring_copy): Take care of opt.dry_run.
	(do_gdbm_store): Ditto.
	* openfile.c (open_outfile). Ditto.
	(copy_options_file): Ditto.
	* trustdb.c (update_trustdb): Ditto.
	(clear_trust_checked_flag): Ditto.
	(update_trust_record): Ditto.
	(insert_trust_record): Ditto.

Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* keylist.c (secret_key_list): Now really list the secret key.

	* trustdb.c (do_init_trustdb): New. Init is now deferred.

Mon Feb 22 20:04:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* getkey.c (lookup_sk): Return G10ERR_NO_SECKEY and not x_PUBKEY.

Fri Feb 19 15:49:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (select_algo_from_prefs): retrieve LID if not there.

	* armor.c (fake_packet): Replaced ugly lineending handling.

	* g10.c (oNoEncryptTo): New.
	* pkclist.c (build_pk_list): Implemented this option.

	* g10.c (main): Greeting is now printed to stderr and not to tty.
	Use add_to_strlist() instead of direct coding.

	* import.c (import): Use iobuf_push_filter2.

	* mainproc.c (check_sig_and_print): Print all user ids
	for good signatures.
	* getkey.c (get_pubkeyblock): New.

	* import.c (chk_self_sigs): Fixed SEGV for unbounded class 0x18 keys.
	(delete_inv_parts): Delete special marked packets.

Tue Feb 16 14:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c (main): New option --encrypt-to

	* pkclist.c (build_pk_list): Implemented encrypt-to.

	* parse-packet.c (parse_user_id): Removed the hack to work with
	utf-8 strings.

	* g10.c (main): Install lockfile cleanup handler.
	* tdbio.c (cleanup): Removed: this is now handled by dotlock.

Sat Feb 13 14:13:04 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* tdbio.c (tdbio_set_dbname): Init lockhandle for a new trustdb

Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c (main): check for development version now in configure

	* tdbio.c (tdbio_write_record): Add uid.validity
	(tdbio_read_record) : Ditto.
	(tdbio_dump_record) : Ditto.

	* keygen.c (keygen_add_std_prefs): Replaced Blowfish by Twofish,
	removed MD5 and Tiger.
	* pubkey-enc.c (get_it): Suppress warning about missing Blowfish
	in preferences in certain cases.

	* ringedit.c (lock_rentry,unlock_rentry): New.

	* getkey.c (key_byname): Pass ret_kb down to lookup_xx.

	* armor.c (armor_filter): No output of of empty comment lines.
	Add option --no-version to suppress the output of the version string.

	* getkey.c: Release the getkey context for auto context variables.

Sun Jan 24 18:16:26 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* getkey.c: Changed the internal design to allow simultaneous
	lookup of multible user ids
	(get_pubkey_bynames): New.
	(get_seckey_bynames): New.
	(get_seckey_next): New.
	(get_seckey_end): New.
	* keylist.c (list_one): Use the new functions.

	* keylist.c (list_keyblock): add a newline for normal listings.

	* g10.c (--recipient): New option name to replace --remote-user


Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* textfilter.c: Mostly rewritten
	* plaintext.c (handle_plaintext): Use now text_filter semantics.

Tue Jan 19 19:34:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* export.c (export_pubkeys_stream): New.
	(do_export_stream): New.
	* g10.c (aSendKeys): New command.
	* hkp.c (hkp_export): New.

	* compress.c (do_uncompress): Hack for algo 1 and 1.1.3

Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* textfilter.c (text_filter): Now uses iobuf_read_line().
	(read_line): Removed.

	* armor.c (trim_trailing_spaces): Removed and replaced
	by trim_trailing_ws from libutil

Sat Jan 16 12:03:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* hkp.c (hkp_ask_import): Use only the short keyid

Sat Jan 16 09:27:30 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* import.c (import_key_stream): New
	(import): New, moved most of import_keys here.
	* g10.c: New option --keyserver
	* mainproc.c (check_sig_and_print): Hook to import a pubkey.

	* pref.c pref.h : Removed

	* hkp.c hkp.h: New

Wed Jan 13 14:10:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* armor.c (radix64_read): Print an error if a bad armor was detected.

Wed Jan 13 12:49:36 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* armor.c (radix64_read): Now handles malformed armors produced
	by some buggy MUAs.

Tue Jan 12 11:17:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* ringedit.c (find_keyblock_bysk): New.

	* skc_list.c (is_insecure): New.
	(build_sk_list): usage check for insecure keys.

	* import.c (chk_self_sigs): Add handling for subkeys.
	(delete_inv_parts): Skip unsigned subkeys

	* sig-check.c (do_check): Print info if the signature is older
	than the key.
	* keygen.c (generate_subkeypair): Fail on time warp.
	* sign.c (do_sign): Ditto.

Sun Jan 10 15:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* armor.c (fake_packet): Fixed not-dash-escaped bug.

Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* sig-check.c (do_check): Output time diff on error

	* status.c (STATUS_VALIDSIG): New.
	(is_status_enabled): New.
	* mainproc.c (check_sig_and_print): Issue that status message.

	* plaintext.c (special_md_putc): Removed

	* armor.c (armor_filter): print error for truncated lines.

	* free-packet.c (free_encrypted): Revomed call to set_block_mode.
	(free_plaintext): Ditto.

Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (add_ownertrust): Fixed return value.

	* encr-data.c (decrypt_data): Disabled iobuf_set_limit and
	iobuf_pop_filter stuff.
	* compress.c (handle_compressed): Disabled iobuf_pop_filter.

	* packet.h (PKT_secret_key): Add is_primary flag.
	* parse-packet.c (parse_key): Set this flag.
	* passphrase.c (passphrase_to_dek): Kludge to print the primary
	keyid - changed the API: keyid must now hold 2 keyids.
	* getkey.c (get_primary_seckey): New.
	* seckey-cert.c (do_check): pass primary keyid to passphrase query

	* tbdio.c (open_db): removed the atexit
	(tdbio_set_dbname): and moved it to here.

	* armor.c: Rewrote large parts.

Tue Dec 29 19:55:38 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* revoke.c (gen_revoke): Removed compression.

	* pkclist.c (do_we_trust_pre): special check for revoked keys

	* trustdb.c (update_trust_record): Fixed revoke flag.

Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* misc.c (disable_core_dumps): Check for EINVAL (Atari)

	* getkey (merge_one_pk_and_selfsig): Fixed search of expiredate.
	(merge_keys_and_selfsig): Ditto.

	* free-packet.c (cmp_public_keys): cmp expire only for v3 packets
	(cmp_secret_keys): Ditto.
	(cmp_public_secret_key): Ditto.

Wed Dec 23 17:12:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* armor.c (find_header): Reset not_dashed at every header

Wed Dec 23 13:18:14 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* pkclist.c (add_ownertrust): Refresh validity values.

	* trustdb.c (enum_cert_paths_print): New arg refresh.

	* ringedit.c: Fixed problems fix keyrings
	* parse-packet.c (dbg_parse_packet): New debug functions.

	* getkey.c (getkey_disable_caches): New.
	* import.c (import_keys): Disable caches.

Thu Dec 17 18:31:15 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* misc.c (trap_unaligned): Only for glibc 1

	* sign.c (write_dash_escaped): Now escapes "From " lines
	* g10.c: New option --escape-from-lines

	* trustdb.c (sort_tsl_list): New
	(list_trust_path): Now prints sorted list.
	(enum_cert_paths): Likewise.
	(enum_cert_paths_print): New.
	(print_paths): New printing format.
	* pkclist.c (add_ownertrust): New arg quit.
	(edit_ownertrust): New quit selection and does not query
	the recipients ownertrust anymore.
	(add_ownertrust): Print the ceritficate path.


Mon Dec 14 21:18:49 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* parse-packet.c (parse_signature): Now checks for critical bit
	(parse_sig_subpkt): Splitted.
	(parse_one_sig_subpkt): New.
	* sig-check.c (do_check): handle critical bit.

Sun Dec 13 14:10:56 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* pcklist.c (select_algo_from_prefs): Preferences should
	now work (lost the != ? )

Thu Dec 10 20:15:36 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* ringedit.c (gdbm_store): Fix for inserts

	* g10.c (main): New option --export-all
	* export.c (export_pubkeys): New arg.
	(do_export): Now may skip old keys.

	* status.c: Minor patches for Sun's cc

	* keygen.c (ask_algo): Disabled v3 ElGamal choice, rearranged
	 the numbers.  Add a warning question when a sign+encrypt key
	 is selected.

	* g10.c (do_not_use_RSA): Removed.
	* misc.c (print_pubkey_algo_note): New as replacement for the
	do_not_use_RSA() and chnaged all callers.
	(print_cipher_algo_note): New.
	(print_hash_algo_note): New.

	* cipher.c (write_header): Add a call to print_cipher_algo_note.
	* seckey-cert.c (protect_secret_key): Ditto
	* sign.c (do_sign): Add a call to print_digest_algo_note.

	* getkey.c (get_long_user_id_string): New.
	* mainproc.c (check_sig_and_print): Changed the format of the
	status output.

	* encrypt.c (write_pubkey_enc_from_list): print used symmetric cipher.

	* pkclist.c (do_we_trust): Changed a message.

Wed Dec  9 13:41:06 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* misc.c (trap_unaligned) [ALPHA]: Only if UAC_SIGBUS is defined.

	* sign.c (write_dash_escaped): Add the forgotten patch by Brian Moore.

	* compress.c (do_uncompress): Fixed the inflating bug.


Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* trustdb.c (upd_uid_record): Now uses the newest self-signature
	(insert_trust_record): Now calls update with recheck set to true.
	(register_trusted_key): New.
	(verify_own_keys): Enhanced by list of trusted keys.

	* g10.c (main): Print a warning when a devel version is used.
	(main): New option --trusted-key

	* import.c (merge_blocks): Fixed merging of new user ids and
	added merging of subkeys.
	(append_uid): Ditto.
	(merge_keysig): New.
	(append_key): New.
	* getkey.c (merge_one_pk_and_selfsig): Get the expiration time
	from the newest self-signature.
	(merge_keys_and_selfsig): Ditto.

	* free-packet.c (cmp_secret_key): New.


Fri Nov 27 21:37:41 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	* g10.c: New option --lock-once
	* tdbio.c (open_db): Add an atexit
	(cleanup): New.
	(tdbio_sync): Add locking.
	(tdbio_end_transaction): Ditto.
	(put_record_into_cache): Ditto.
	* ringedit.c (keyring_copy): Ditto.
	(cleanup): New.
	(add_keyblock_resource): Add an atexit.

Fri Nov 27 15:30:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>

	 * armor.c (find_header): Another fix for clearsigs.

Fri Nov 27 12:39:29 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>


	* status.c (display_help): Removed.
	* helptext.c: New and removed the N_() from all cpr_gets.


Fri Nov 20 16:54:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): New option --not-dash-escaped
	* sign.c (write_dashed_escaped): Ditto.
	* armor.c (find_header): Support for NotDashEscaped header.

	* getkey.c: print "disabled cache.." only if verbose is used.

Thu Nov 19 07:17:31 1998  Werner Koch  <werner.koch@guug.de>

	* parse-packet.c (dump_sig_subpkt): Fixed expire listing
	* getkey.c (merge_keys_and_selfsig): Fixed expire calculation.
	(merge_one_pk_and_selfsig): Ditto.
	* keyedit.c (menu_expire). Ditto.
	* keygen.c (keygen_add_key_expire): Ditto.
	(ask_expire_interval): New and changed all local function to use
	this instead.
	(keygen_add_key_expire): Opaque should now be a public key;
	changed all callers.

	* parse.packet.c (parse): use skip_rest to skip packets.

	* keyedit.c (keyedit_menu): New arg for cmdline cmds.

Wed Nov 18 20:33:50 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (check_trustdb): Now rechecks all gived userids.
	(collect_paths): Some fixes.
	(upd_pref_records): Skips empty items, evaluate all items.

	* parse-packet.c (dump_sig_subpkt): Better listing of prefs.
	(skip_packet): Now knows about marker packet

	* g10.c: removed cmd "--edit-sig".

	* pubring.asc: Updated.

Sat Nov 14 14:01:29 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Changed syntax of --list-trust-path
	* trustdb.c (list_trust_path): Replaced max_depth by
	opt.max_cert_depth

Fri Nov 13 07:39:58 1998  Werner Koch  <werner.koch@guug.de>

	* trustdb.c (collect_paths): Removed a warning message.
	(enum_trust_web): Removed.
	(enum_cert_paths): New.
	* pkclist.c (add_ownertrust): Changed to use enum_cert_paths.
	(edit_ownertrust): Now list ceritficates on request.
	(show_paths): New.

Wed Nov 11 18:05:44 1998  Werner Koch  <werner.koch@guug.de>

	* g10.c (main): New option --max-cert-depth
	* tdbio.h: add new fields to ver and dir record.
	* tdbio.c: read/write/dump of these fields.
	(tdbio_db_matches_options): New.
	* trustdb.c: replaced MAC_CERT_DEPTH by opt.max_cert_depth.
	(do_check): cache validity and changed other functions
	to reset the cached value.

	* keylist.c (list_one): Now lists the ownertrust.
	* mainproc.c (list_node): Ditto.

Tue Nov 10 10:08:59 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (g10_exit): Now looks at the new g10_errors_seen.
	* mainproc.c (check_sig_and_print): Sets g10_errors_seen.

	* *.c : i18n many more strings.

	* ringedit.c (locate_keyblock_by_keyid): Add HAVE_LIBGDBM
	(locate_keyblock_by_fpr): Ditto.

	* g10.c (main): removed unsused "int errors".
	(main): Add new option --charset.

	* g10.c (main): special message for the unix newbie.

Mon Nov  9 07:17:42 1998  Werner Koch  <werner.koch@guug.de>

	* getkey.c (finish_lookup): Kludge to prefere algo 16.

	* trustdb.c (new_lid_table): Clear cached item.

	* status.c (cpr_get_utf8): New.
	* pkclist.c (build_pk_list): Uses this.

Sun Nov  8 17:20:39 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* mainproc.c (check_sig_and_print): Why did I use strlen()-1
	in the printf? - This truncated the TZ.

Sat Nov  7 15:57:28 1998  me,,,  (wk@tobold)

	* getkey.c (lookup): Changes to support a read_next.
	(get_pubkey): Fixed a memory leak.

	* keylist.c (list_one): Now lists all matching user IDs.

Tue Nov  3 16:19:21 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (ask_user_id): Now converted to UTF-8

	* g10.c (main): Kludge for pgp clearsigs and textmode.

Fri Oct 30 16:40:39 1998  me,,,  (wk@tobold)

	* signal.c (block_all_signals): New.
	(unblock_all_signals): New
	* tdbio.c (tdbio_end_transaction): Now blocks all signals.

	* trustdb.c (new_lid_table): Changed the representation of the
	former local_lid_info stuff.

	* trustdb.c (update_trust_record): Reorganized the whole thing.
	* sig-check.c (check_key_signature): Now handles class 0x28


Wed Oct 28 18:56:33 1998  me,,,  (wk@tobold)

	* export.c (do_export): Takes care of the exportable sig flag.

Tue Oct 27 14:53:04 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (update_trust_record): New "fast" parameter.

Sun Oct 25 19:32:05 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* openfile.c (copy_options_File): New.
	* ringedit.c (add_keyblock_resource): Creates options file
	* tdbio.c (tdbio_set_dbname): Ditto.

Sat Oct 24 14:10:53 1998  brian moore <bem@cmc.net>

	* mainproc.c (proc_pubkey_enc): Don't release the DEK
	(do_proc_packets): Ditto.

Fri Oct 23 06:49:38 1998  me,,,  (wk@tobold)

	* keyedit.c (keyedit_menu): Comments are now allowed

	* trustdb.c: Rewrote large parts.


Thu Oct 22 15:56:45 1998  Michael Roth	(mroth@nessie.de)

	* encode.c: (encode_simple): Only the plain filename without
	a given directory is stored in generated packets.
	(encode_crypt): Ditto.

	* sign.c: (sign_file) Ditto.


Thu Oct 22 10:53:41 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (update_trust_record): Add new optional arg.

	* import.c (import_keys): Add statistics output
	* trustdb.c (update_trustdb): Ditto.
	(insert_trustdb): Ditto.

	* tdbio.c (tdbio_begin_transaction): New.
	(tdbio_end_transaction): New.
	(tdbio_cancel_transaction): New.

	* g10.c (main): New option --quit.

	* trustdb.c (check_hint_sig): No tests for user-id w/o sig.
	This caused an assert while checking the sigs.

	* trustdb.c (upd_sig_record): Splitted into several functions.

	* import.c (import_keys): New arg "fast".
	* g10.c (main): New command --fast-import.

Wed Oct 21 18:19:36 1998  Michael Roth <mroth@nessie.de>

	* ringedit.c (add_keyblock_resource): Directory is now created.
	* tdbio.c (tdbio_set_dbname): New info message.

Wed Oct 21 11:52:04 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (update_trustdb): released keyblock in loop.

	* keylist.c (list_block): New.
	(list_all): Changed to use list_block.

	* trustdb.c: Completed support for GDBM

	* sign.c (only_old_style): Changed the way force_v3 is handled
	(sign_file): Ditto.
	(clearsign_file): Ditto.

	* keygen.c (has_invalid_email_chars): Splitted into mailbox and
	host part.

	* keylist.c (list_one): Add a merge_keys_and_selfsig.
	* mainproc.c (proc_tree): Ditto.

Sun Oct 18 11:49:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sign.c (only_old_style): Add option force_v3_sigs
	(sign_file): Fixed a bug in sig->version
	(clearsign_file): Ditto.

	* parse-packet.c (dump_sig_subpkt): New

	* keyedit.c (menu_expire): New.
	* free-packet.c (cmp_signatures): New


Sat Oct 17 10:22:39 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c: changed output line length from 72 to 64.

	* keyedit.c (fix_keyblock): New.

Fri Oct 16 10:24:47 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c: Rewrote most.
	* tdbio.c: Add cache and generalized hash tables.

	* options.h (ENABLE_COMMENT_PACKETS): New but undef'ed.
	* encode.c, sign.c, keygen.c: Disabled comment packets.
	* export.c (do_export): Comment packets are never exported,
	except for those in the secret keyring.

	* g10.c (main): Removed option do-no-export-rsa; should be
	be replaced by a secpial tool.
	* export.c (do_export): Removed the code for the above option.

	* armor.c (find_header): Support for new only_keyblocks.
	* import.c (import_keys): Only looks for keyblock armors.

	* packet.h: replaced valid_days by expiredate and changed all users.
	* build-packet.c (do_public_key): calculates valid-days
	(do_secret_key): Ditto.
	* parse-packet.c (parse_key): expiredate is calucated from the
	valid_period in v3 packets.
	* keyid.c (do_fingerprint_md): calculates valid_dates.

	* keygen.c (add_key_expire): fixed key expiration time for v4 packets.

	* armor.c (find_header): A LF in the first 28 bytes
	was skipped for non-armored data.

Thu Oct  8 11:35:51 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (is_armored): Add test on old comment packets.

	* tdbio.c (tdbio_search_dir_bypk): fixed memory leak.

	* getkey.c: Changed the caching algorithms.

Wed Oct  7 19:33:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* kbnodes.c (unused_nodes): New.

Wed Oct  7 11:15:36 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keyedit.c (sign_uids): Fixed a problem with SK which could caused
	a save of an unprotected key.
	(menu_adduid): Ditto.

	* keyedit.c (keyedit_menu): Prefs are now correctly listed for
	new user ids.

	* trustdb.c (update_trust_record): New.
	(insert_trust_record): Now makes use of update_trust_record.

Tue Oct  6 16:18:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (read_record): replaces most of the tdbio_read_records.
	(write_record): Ditto.

Sat Oct  3 11:01:21 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (ask_alogo): enable ElGamal enc-only only for addmode.

Wed Sep 30 10:15:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* import.c (import_one): Fixed update of wrong keyblock.

Tue Sep 29 08:32:08 1998  me,,,  (wk@tobold)

	* mainproc.c (proc_plaintext): Display note for special filename.
	* plaintext.c (handle_plaintext): Suppress output of special file.

Mon Sep 28 12:57:12 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (verify_own_keys): Add warning if a key is not protected.

	* passphrase (hash_passphrase): Fixed iterated+salted mode and
	setup for keysizes > hashsize.

	* g10.c (main): New options: --s2k-{cipher,digest,mode}.

Fri Sep 25 09:34:23 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c: Chnaged some help texts.

Tue Sep 22 19:34:39 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* passphrase.c (read_passphrase_from_fd): fixed bug for long
	passphrases.

Mon Sep 21 11:28:05 1998  Werner Koch  (wk@(none))

	* getkey.c (lookup): Add code to use the sub key if the primary one
	does not match the usage.

	* armor.c (armor_filter): New error message: no valid data found.
	(radix64_read): Changes to support multiple messages.
	(i18n.h): New.
	* mainproc.c (add_onepass_sig): bug fix.

Mon Sep 21 08:03:16 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* pkclist.c (do_we_trust): Add keyid to most messages.

	* passphrase.c (read_passphrase_from_fd): New.
	(have_static_passphrase): New
	(get_passphrase_fd): Removed.
	(set_passphrase_fd): Removed.
	* g10.c (main): passphrase is now read here.

	* keyedit.c (keyedit_menu): "help" texts should now translate fine.

Mon Sep 21 06:40:02 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* encode.c (encode_simple): Now disables compression
	when --rfc1991 is used.
	(encode_crypt): Ditto.

Fri Sep 18 16:50:32 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* getkey.c (merge_key_and_selfsig): New.

Fri Sep 18 10:20:11 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* pkclist.c (select_algo_from_prefs): Removed 3DES kludge.

	* seskey.c (make_session_key): Fixed SERIOUS bug introduced
	by adding the weak key detection code.

	* sign.c (sign_file): Changed aremor header in certain cases.

Tue Sep 15 17:52:55 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* mainproc.c (check_sig_and_print): Replaced ascime by asctimestamp.

Mon Sep 14 11:40:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* seskey.c (make_session_key): Now detects weak keys.

	* trustdb (clear_trust_checked_flag): New.

	* plaintext.c (handle_plaintext): Does no anymore suppress CR from
	cleartext signed messages.

Sun Sep 13 12:54:29 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (insert_trust_record): Fixed a stupid bug in the free
	liunked list loops.

Sat Sep 12 15:49:16 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* status.c (remove_shmid): New.
	(init_shm_comprocess): Now sets permission to the real uid.

Wed Sep  9 11:15:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h (PKT_pubkey_enc): New flah throw_keyid, and add logic to
	implement it.
	* g10.c (main): New Option --throw-keyid

	* getkey.c (enum_secret_keys): Add new ar and changed all callers.

Tue Sep  8 20:04:09 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* delkey.c (delete_key): Moved from keyedit.c.

Mon Sep  7 16:37:52 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* build-packet.c (calc_length_header): New arg new_ctb to correctly
	calculate the length of new style packets.

	* armor.c (is_armored): Checks for symkey_enc packets.

	* pkclist.c (select_algo_from_prefs): 3DEs substitute is now CAST5.

Tue Aug 11 17:54:50 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* build-packet.c (do_secret_key): Fixed handling of old keys.

	* getkey.c (compare_name): Fixed exact and email matching

	* openfile.c (open_outfile): Changed arguments and all callers.

Tue Aug 11 09:14:35 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* encode.c (encode_simple): Applied option set-filename and comment.
	(encode_crypt): Ditto.
	* sign.c (sign_file): Ditto.
	* armor.c (armor_filter): Applied option comment.

	* encode.c (encode_crypt): Moved init_packet to the begin.
	(encode_simple): add an init_packet().

	* comment (write_comment): Now enforces a hash sign as the 1st byte.

	* import.c (import_one): Add explanation for "no user ids".

	* compress.c (do_uncompress): Applied Brian Warner's patch to support
	zlib 1.1.3 etc.

	* trustdb.c (check_trust): Fixed a problem after inserting new keys.

	* getkey (lookup): do not return the primary key if usage is given
	(lookup_sk): Ditto and take usage into account.

	* status.c (cpr_get_answer_is_yes): add display_help.

Mon Aug 10 10:11:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* getkey.c (lookup_sk): Now always returns the primary if arg
	primary is true.
	(lookup): Likewise.
	(get_pubkey_byname): Now returns the primary key
	(get_seckey_byname): Ditto.


Mon Aug 10 08:34:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keyid.c (pubkey_letter): ELG_E is now a small g.

Sat Aug  8 17:26:12 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* openfile (overwrite_filep): Changed semantics and all callers.

Sat Aug  8 12:17:07 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* status.c (display_help): New.

Thu Aug  6 16:30:41 1998  Werner Koch,mobil,,,	(wk@tobold)

	* seskey.c (encode_session_key): Now uses get_random_bits().

Thu Aug  6 07:34:56 1998  Werner Koch,mobil,,,	(wk@tobold)

	* ringedit.c (keyring_copy): No more backupfiles for
	secret keyrings and add additional warning in case of
	a failed secret keyring operation.

Wed Aug  5 11:54:37 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (check_opts): Moved to main.  Changed def_cipher_algo
	semantics and chnaged all users.

	* pubkey-enc.c (get_sssion_key): New informational output
	about preferences.

	* parse-packet.c (parse_symkeyenc): Fixed salted+iterated S2K
	(parse_key): Ditto.
	* build-packet.c (do_secret_key): Ditto.
	(do_symkey_enc): Ditto.

Tue Aug  4 08:59:10 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* getkey.c (enum_secret_keys): Now returns only primary keys.

	* getkey (lookup): Now sets the new namehash field.

	* parse-packet.c (parse_sig_subpkt2): New.

	* sign.c (sign_file): one-pass sigs are now emiited reverse.
	Preference data is considered when selecting the compress algo.

Wed Jul 29 12:53:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* free-packet.c (copy_signature): New.

	* keygen.c (generate_subkeypair): rewritten
	* g10.c (aKeyadd): Removed option --add-key

Mon Jul 27 10:37:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* seckey-cert.c (do_check): Additional check on cipher blocksize.
	(protect_secret_key): Ditto.
	* encr-data.c: Support for other blocksizes.
	* cipher.c (write_header): Ditto.

Fri Jul 24 16:47:59 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* kbnode.c (insert_kbnode): Changed semantics and all callers.
	* keyedit.c : More or less a complete rewrite

Wed Jul 22 17:10:04 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* build-packet.c (write_sign_packet_header): New.

Tue Jul 21 14:37:09 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* import.c (import_one): Now creates a trustdb record.

	* g10.c (main): New command --check-trustdb

Mon Jul 20 11:15:07 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* genkey.c (generate_keypair): Default key is now DSA with
	encryption only ElGamal subkey.

Thu Jul 16 10:58:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keyid.c (keyid_from_fingerprint): New.
	* getkey.c (get_pubkey_byfprint): New.

Tue Jul 14 18:09:51 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keyid.c (fingerprint_from_pk): Add argument and changed all callers.
	(fingerprint_from_sk): Ditto.

Tue Jul 14 10:10:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* plaintext.c (handle_plaintext): Now returns create error if
	the file could not be created or the user responded not to overwrite
	the file.
	* mainproc.c (proc_plaintext): Tries again if the file could not
	be created to check the signature without output.

	* misc.c (disable_core_dumps): New.
	* g10.c (main): disable coredumps for gpg

	* g10.c (MAINTAINER_OPTIONS): New to disable some options

Mon Jul 13 16:47:54 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* plaintext.c (hash_datafiles): New arg for better support of
	detached sigs. Changed all callers.
	* mainproc.c (proc_signature_packets): Ditto.

	* g10.c (main): New option "compress-sigs"
	* sig.c (sign_file): detached signatures are not anymore compressed
	unless the option --compress-sigs is used.

Thu Jul  9 19:54:54 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c: Fixes to allow zero length cleartext signatures

Thu Jul  9 14:52:47 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (build_list): Now drops setuid.
	(main): Changed the way keyrings  and algorithms are registered .

Wed Jul  8 14:17:30 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h (PKT_public_key): Add field keyid.
	* parse-packet.c (parse_key): Reset the above field.
	* keyid.c (keyid_from_pk): Use above field as cache.

	* tdbio.c, tdbio.h: New
	* trustdb.c: Moved some functions to tdbio.c.
	(print_keyid): New.

	* pkclist.c (check_signatures_trust): New.

Wed Jul  8 10:45:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* plaintext.c (special_md_putc): New.
	(handle_plaintext): add clearsig argument
	* mainproc.c (proc_plaintext): detection of clearsig
	* sign.c (write_dased_escaped): Changed clearsig format

Tue Jul  7 18:56:19 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (find_header): Now makes sure that there is only one
	empty line for clearsigs, as this is what OP now says.

Mon Jul  6 13:09:07 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): New option default-secret-key
	* getkey.c (get_seckey_byname): support for this option.

Mon Jul  6 09:03:49 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* getkey.c (add_keyring): Keyrings are now added to end of the
	list of keyrings.  The first added keyringwill be created.
	(add_secret_keyring): Likewise.

	* ringedit.c (add_keyblock_resource): Files are created here.

	* g10.c (aNOP): Removed

	* getkey.c (lookup): Add checking of usage for name lookups
	* packet.h (pubkey_usage): Add a field which may be used to store
	usage capabilities.
	* pkclist.c (build_pk_list): getkey now called with usage arg.
	* skclist.c (build_sk_list): Ditto.

	* sign.c (clearsign_file): Fixed "Hash:" headers

Sat Jul  4 13:33:31 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (list_ownertrust): New.
	* g10.c (aListOwnerTrust): New.

	* g10.c (def_pubkey_algo): Removed.

	* trustdb.c (verify_private_data): Removed and also the call to it.
	(sign_private_data): Removed.

Fri Jul  3 13:26:10 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (aEditKey): was aEditSig. Changed usage msg.

	* keyedit.c: Done some i18n stuff.

	* g10.c (do_not_use_RSA): New.
	* sign.c (do_sign): Add call to above function.
	* encode.c (write_pubkey_enc_from_list): Ditto.

Thu Jul  2 21:01:25 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c: Now is able sto store data of unknown
	algorithms.
	* free-packet.c: Support for this.
	* build-packet.c: Can write data of packet with unknown algos.

Thu Jul  2 11:46:36 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c (parse): fixed 4 byte length header

Wed Jul  1 12:36:55 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h (new_ctb): New field for some packets
	* build-packet.c (build_packet): Support for new_ctb
	* parse-packet.c (parse): Ditto.

Mon Jun 29 12:54:45 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h: changed all "_cert" to "_key", "subcert" to "subkey".

	* free-packet.c (free_packet): Removed memory leak for subkeys.

Sun Jun 28 18:32:27 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* import.c (import_keys): Renamed from import_pubkeys.
	(import_secret_one): New.

	* g10.c (aExportSecret): New.

	* export.c (export_seckeys): New.

	* parse-packet.c (parse_certificate): Cleaned up.
	(parse_packet): Trust packets are now considered as unknown.
	(parse_pubkey_warning): New.

Fri Jun 26 10:37:35 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (has_invalid_email_chars): New.

Wed Jun 24 16:40:22 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (armor_filter): Now creates valid onepass_sig packets
	with all detected hash algorithms.
	* mainproc.c (proc_plaintext): Now uses the hash algos as specified
	in the onepass_sig packets (if there are any)

Mon Jun 22 11:54:08 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* plaintext.c (handle_plaintext): add arg to disable outout
	* mainproc.c (proc_plaintext): disable output when in sigs_only mode.

Thu Jun 18 13:17:27 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c: Removed all rsa packet stuff, chnaged defaults
	for key generation.

Sun Jun 14 21:28:31 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* misc.c (checksum_u16): Fixed a stupid bug which caused a
	wrong checksum calculation for the secret key protection and
	add a backward compatibility option.
	* g10.c (main): Add option --emulate-checksum-bug.

Thu Jun 11 13:26:44 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h: Major changes to the structure of public key material
	which is now stored in an array and not anaymore in a union of
	algorithm specific structures.	These is needed to make the system
	more extendable and makes a lot of stuff much simpler. Changed
	all over the system.

	* dsa.c, rsa.c, elg.c: Removed.

Wed Jun 10 07:22:02 1998  Werner Koch,mobil,,,	(wk@tobold)

	* g10.c ("load-extension"): New option.

Mon Jun  8 22:23:37 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* seckey-cert.c (do_check): Removed cipher constants
	(protect_secret_key): Ditto.

Fri May 29 10:00:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (query_trust_info): New.
	* keylist.c (list_one): Add output of trust info
	* mainproc (list_node): ditto.
	* g10.c (main): full trustdb init if -with-colons and any of the
	key list modes.

Thu May 28 10:34:42 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* status.c (STATUS_RSA_OR_IDEA): New.
	* sig-check.c (check_signature): Output special status message.
	* pubkey-enc.c (get_session_key): Ditto.

	* mainproc.c (check_sig_and_print): Changed format of output.
	* passpharse.c (passphrase_to_dek): Likewise.

Wed May 27 13:46:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (aListSecretKeys): New option --list-secret-keys
	* keylist.c (std_key_list): Renamed to public_key_list.
	(secret_key_list): New
	(list_one, list_all): Add support for secret keys.
	* getkey.c (get_secret_keyring): New.
	* mainproc.c (list_node): Add option --with-colons for secret keys

	* sig-check.c (check_key_signature): detection of selfsigs
	* mainproc.c (list_node): fixed listing.

	* g10.c (aListSecretKeys): New option --always-trust
	* pkclist.c (do_we_trust): Override per option added

	* status.c (write_status_text): Add a prefix to every output line.

Wed May 27 07:49:21 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10 (--compress-keys): New.
	* options.h (compress_keys): New.
	* export.c (export_pubkeys): Only compresses with the new option.

Tue May 26 11:24:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* passphrase.c (get_last_passphrase): New
	(set_next_passphrase): New.
	(passphrase_to_dek): add support for the above functions.
	* keyedit.c (make_keysig_packet): Add sigclass 0x18,
	changed all callers due to a new argument.
	* keygen.c (write_keybinding): New
	(generate_subkeypair): Add functionality
	(ask_algo, ask_keysize, ask_valid_days): Broke out of generate_keypair
	(ask_user_id, ask_passphrase): Ditto.

Thu May 21 11:26:13 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c,gpgd.c (main): Does now return an int, so that egcs does
	not complain.

	* armor.c (fake_packet): Removed erro message and add a noticed
	that this part should be fixed.

	* sign.c (sign_file): Compression now comes in front of encryption.
	* encode.c (encode_simple): Ditto.
	(encode_crypt): Ditto.

Tue May 19 16:18:19 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (fake_packet): Changed assertion to log_error

Sat May 16 16:02:06 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* build-packet.c (build_packet): Add SUBKEY packets.

Fri May 15 17:57:23 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sign.c (hash_for): New and used in all places here.
	* main.h (DEFAULT_): new macros.
	* g10.c  (opt.def_digest_algo): Now set to 0

	* compress.c (init_compress): Add support for algo 1
	* options.h (def_compress_algo): New
	* g10.c (main): New option --compress-algo

Fri May 15 13:23:59 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (print_mds): New feature to print only one hash,
	chnaged formatting.

Thu May 14 15:36:24 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* misc.c (trap_unaligned) [__alpha__]: New
	* g10.c (trap_unaligned): Add call to this to track down SIGBUS
	on Alphas (to avoid the slow emulation code).

Wed May 13 11:48:27 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* build-packet.c (do_signature): Support for v4 pakets.
	* keyedit.c (make_keysig_packet): Ditto.
	* build-packet.c (build_sig_subpkt_from_sig): New.
	(build_sig_subpkt): New.

	* elg.c (g10_elg_sign): removed keyid_from_skc.
	* dsa.c (g10_dsa_sign): Ditto.
	* rsa.c (g10_rsa_sign): Ditto.
	* keyedit.c (make_keysig_packet): Add call to keyid_from_skc

	* sign.c (clearsign_file): Support for v4 signatures.
	(sign_file): Ditto.

Wed May  6 09:31:24 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c (do_parse): add support for 5 byte length leader.
	(parse_subpkt): Ditto.
	* build-packet.c (write_new_header): Ditto.

	* packet.h (SIGSUBPKT_): New constants.
	* parse-packet.c (parse_sig_subpkt): Changed name, made global,
	and arg to return packet length, chnaged all callers


Tue May  5 22:11:59 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (gen_dsa): New.
	* build_packet.c (do_secret_cert): Support for DSA

Mon May  4 19:01:25 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* compress.c: doubled buffer sizes
	* parse-packet.c (do_plaintext): now uses iobuf_read/write.

Mon May  4 09:35:53 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* seskey.c (encode_md_value): Add optional argument hash_algo,
	changed all callers.

	* passphrase.c (make_dek_from_passphrase): Removed
	* (get_passhrase_hash): Changed name to passphrase_to_dek, add arg,
	changed all callers.

	* all: Introduced the new ELG identifier and added support for the
	encryption only one (which is okay to use by GNUPG for signatures).

Sun May  3 17:50:26 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h (PKT_OLD_COMMENT): New name for type 16.
	* parse-packet.c (parse_comment): Now uses type 61

Fri May  1 12:44:39 1998  Werner Koch,mobil,,,	(wk@tobold)

	* packet.h (count): Chnaged s2k count from byte to u32.
	* seckey-cert.c (do_check): Changed s2k algo 3 to 4, changed
	reading of count.
	* build-packet.c (do_secret_cert): ditto.
	* parse-packet.c (parse_certificate): ditto.

	* parse-packet.c (parse_symkeyenc): New.
	* build-packet.c (do_symkey_enc): New.

Thu Apr 30 16:33:34 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sign.c (clearsign_file): Fixed "Hash: " armor line.

Tue Apr 28 14:27:42 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c (parse_subpkt): Some new types.

Mon Apr 27 12:53:59 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Add option --skip-verify.
	* mainproc.c (check_sig_and_print): Ditto.

	* g10.c (print_mds): Add output for Tiger.

	* sign.c (sign_file): Now uses partial length headers if used
	in canonical textmode (kludge to fix a bug).

	* parse-packet.c (parse_certificate): Changed BLOWFISH id.
	* pubkey-enc.c (get_session_key): Ditto.
	* seskey.c (make_session_key): Ditto.
	* seckey-cert.c (protect_secret_key,do_check): Add BLOWFISH160.

Fri Apr 24 17:38:48 1998  Werner Koch,mobil,,,	(wk@tobold)

	* sig-check.c (check_key_signature): Add sig-class 0x14..0x17
	* keyedit.c (sign-key): Some changes to start with support of
	the above new sig-classes.

Wed Apr 22 09:01:57 1998  Werner Koch,mobil,,,	(wk@tobold)

	* getkey.c (compare_name): add email matching

Tue Apr 21 16:17:12 1998  Werner Koch,mobil,,,	(wk@tobold)

	* armor.c (armor_filter): fixed missing last LF before CSUM.

Thu Apr  9 11:35:22 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* seckey-cert.c (do_check): New; combines all the check functions
	into one.

	* sign.c: removed all key management functions
	* keyedit.c: New.

Thu Apr  9 09:49:36 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* import.c (chk_self_sigs): Changed an error message.

Wed Apr  8 16:19:39 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* packet.h: packet structs now uses structs from the pubkey,
	removed all copy operations from packet to pubkey structs.

Wed Apr  8 13:40:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (verify_own_certs): Fixed "public key not found".

	* getkey.c (key_byname): New, combines public and secret key search.

	* pkclist.c (build_pkc_list): Add new arg usage, changed all callers.
	* skclist.c (build_skc_list): Likewise.

	* ringedit.c (find_keyblock, keyring_search2): Removed.

Wed Apr  8 09:47:21 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sig-check.c (do_check): Applied small fix from Ulf Möller.

Tue Apr  7 19:28:07 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c, encr-data.c, seckey-cert.c: Now uses cipher_xxxx
	functions instead of blowfish_xxx or cast_xxx

Tue Apr  7 11:04:02 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* Makefile.am (g10maint.o): Changed the way it is created.

Mon Apr  6 11:17:08 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* misc.c: New.
	* keygen.c (checksum,checksum_u16,checksum_mpi): Moved to misc.c
	* seckey-cert.c: Kludge for wrong ELG checksum implementation.

Sat Apr  4 20:07:01 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* cipher.c (cipher_filter): Support for CAST5
	* encr-data.c (decode_filter): Ditto.
	(decrypt_data): Ditto.
	* seskey.c (make_session_key): Ditto.
	* seckey-cert.c (check_elg, check_dsa): Ditto,
	(protect_secret_key): Ditto.
	* pubkey-enc.c (get_session_key): Ditto.
	* passphrase.c (hash_passphrase): Ditto.

Thu Apr  2 20:22:35 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* gpgd.c: New

Thu Apr  2 10:38:16 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (generate_keypair): Add valid_days stuff.
	* trustdb.c (check_trust): Add check for valid_days.

Wed Apr  1 16:15:58 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (generate_keypair): Addional question whether the
	selected large keysize is really needed.

Wed Apr  1 15:56:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* seckey-cert.c (protect_secret_key): merged protect_xxx to here.

Wed Apr  1 10:34:46 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* Makefile.am (g10maint.c): Changed creation rule, so that it works
	on FreeBSD (missing CFLAGS).

	* parse-packet.c (parse_subkey): Removed.

Thu Mar 19 15:22:36 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* ringedit.c (keyring_enum): Fixed problem with reading too
	many packets. Add support to read secret keyrings.

	* getkey.c (scan_keyring): Removed
	(lookup): New to replace scan_keyring.
	(scan_secret_keyring): Removed.
	(lookup_skc): New.

Wed Mar 18 11:47:34 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* ringedit.c (enum_keyblocks): New read mode 11.

	* keyid.c (elg_fingerprint_md): New and changed all other functions
	to call this if the packet version is 4 or above.

Tue Mar 17 20:46:16 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c (parse_certificate): Add listing support for subkeys.

Tue Mar 17 20:32:22 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (is_armored): Allow marker packet.

Thu Mar 12 13:36:49 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (check_trust): Checks timestamp of pubkey.
	* sig-check. (do_check): Compares timestamps.

Tue Mar 10 17:01:56 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Add call to init_signals.
	* signal.c: New.

Mon Mar  9 12:43:42 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* dsa.c: New
	* packet.h, free-packet.c, parse-packet.c : Add support for DSA
	* sig-check.c, getkey.c, keyid.c, ringedit.c: Ditto.
	* seckey-cert.c: Ditto.

	* packet.h : Moved .digest_algo of signature packets to outer
	structure. Changed all references

Sun Mar  8 13:06:42 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* openfile.c : Support for stdout filename "-".

	* mainproc.c (check_sig_and_print): Enhanced status output:
	* status.c (write_status_text): New.

Fri Mar  6 16:10:54 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* kbnode.c (clone_kbnode): Fixed private_flag.

	* mainproc.c (list_node): Output of string "Revoked" as user-id.

Fri Mar  6 14:26:39 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Add userids to "-kv" and cleaned up this stuff.

Fri Mar  6 12:45:58 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Changed semantics of the list-... commands
	and added a new one. Removed option "-d"

	* decrypt.c: New.

	* trustdb.c (init_trustdb): Autocreate directory only if it ends
	in "/.gnupg".

Thu Mar  5 12:12:11 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* mainproc.c (do_proc_packets): New. Common part of proc_packet.
	(proc_signature_packets): special version to handle signature data.
	* verify.c: New.
	* g10.c (aVerify): New.
	* plaintext.c (hash_datafiles): New.
	* compress.c (handle_compressed): Add callback arg, changed caller.

Thu Mar  5 10:20:06 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c: Is nom the common source for gpg and gpgm
	* g10maint.c: Removed
	* Makefile.am: Add rule to build g10maint.c

Thu Mar  5 08:43:59 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Changed the way clear text sigs are faked.

Wed Mar  4 19:47:37 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10maint.c (aMuttKeyList): New
	* keylist.c: New.

Wed Mar  4 17:20:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* getkey.c (get_pubkey_byname): Kludge to allow 0x prefix.

Tue Mar  3 13:46:55 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10maint.c (main): New option --gen-random.

Tue Mar  3 09:50:08 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (aDeleteSecretKey): New.
	(aEditSig): Add option "--edit-key" as synonym for "--edit-sig".
	(aDeleteSecretKey): New.
	* getkey.c (seckey_available): New.
	* sign.c (delete_key): Enhanced to delete secret keys, changed all
	callers.

Mon Mar  2 21:23:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* pkc_list.c (build_pkc_list): Add interactive input of user ID.

Mon Mar  2 20:54:05 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* pkclist.c (do_we_trust_pre): New.
	(add_ownertrust): Add message.
	* trustdb.c (enum_trust_web): Quick fix.

Mon Mar  2 13:50:53 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): New action aDeleteKey
	* sign.c (delete_key): New.

Sun Mar  1 16:38:58 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (do_check): No returns TRUST_UNDEFINED instead of
	eof error.

Fri Feb 27 18:14:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (find_header): Removed trailing CR on headers.

Fri Feb 27 18:02:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* ringedit.c (keyring_search) [MINGW32]: Open and close file here
	because rename does not work on open files. Chnaged callers.

Fri Feb 27 16:43:11 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sig-check.c (do_check): Add an md_enable.
	* mainproc.c (do_check_sig): Use md_open in case of detached sig
	(proc_tree): Take detached sigs into account.

Fri Feb 27 15:22:46 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): Make use of GNUPGHOME envvar.
	* g10main.c (main): Ditto.

Wed Feb 25 11:40:04 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* plaintext.c (ask_for_detached_datafile): add opt.verbose to
	info output.

	* openfile.c (open_sigfile): Try also name ending in ".asc"

Wed Feb 25 08:41:00 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* keygen.c (generate_keypair): Fixed memory overflow.

Tue Feb 24 15:51:55 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c (parse_certificate): Support for S2K.
	* build-packet.c (do_secret_cert): Ditto.
	* keygen.c (gen_elg): Ditto.
	* seckey-cert.c (check_elg): Ditto
	(protect_elg): Ditto.
	* sign.c (chnage_passphrase): Ditto.
	* passphrase.c (get_passphrase_hash): Support for a salt and
	changed all callers.
	(make_dek_from_passphrase): Ditto.

Tue Feb 24 12:30:56 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* build-packet.c (hash_public_cert): Disabled debug output.

Fri Feb 20 17:22:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (init_trustdb) [MINGW32]: Removed 2nd mkdir arg.
	(keyring_copy) [MINGW32]: Add a remove prior to the renames.

Wed Feb 18 18:39:02 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* Makefile.am (OMIT_DEPENDENCIES): New.

	* rsa.c: Replaced log_bug by BUG.

Wed Feb 18 13:35:58 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* mainproc.c (do_check_sig): Now uses hash_public_cert.
	* parse-packet.c (parse_certificate): Removed hashing.
	* packet.h (public_cert): Removed hash variable.
	* free-packet.c (copy_public_cert, free_public_cert): Likewise.

	* sig-check.c (check_key_signatures): Changed semantics.

Wed Feb 18 12:11:28 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* trustdb.c (do_check): Add handling for revocation certificates.
	(build_sigrecs): Ditto.
	(check_sigs): Ditto.

Wed Feb 18 09:31:04 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (armor_filter): Add afx->hdrlines.
	* revoke.c (gen_revoke): Add comment line.
	* dearmor.c (enarmor_file): Ditto.

	* sig-check.c (check_key_signature): Add handling for class 0x20.
	* mainproc.c : Ditto.

Tue Feb 17 21:24:17 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c : Add header lines "...ARMORED FILE .."
	* dearmor.c (enarmor_file): New.
	* g10maint.c (main): New option "--enarmor"

Tue Feb 17 19:03:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* mainproc.c : Changed a lot, because the packets are now stored
	a simple linlked list and not anymore in a complicatd tree structure.

Tue Feb 17 10:14:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* free_packet.c (cmp_public_certs): New.
	(cmp_user_ids): New.

	* kbnode.c (clone_kbnode): New.
	(release_kbnode): Add clone support.

	* ringedit.c (find_keyblock_bypkc): New.

	* sign.c (remove_keysigs): Self signatures are now skipped,
	changed arguments and all callers.

	* import.c : Add functionality.

Tue Feb 17 09:31:40 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* options.h (homedir): New option.
	* g10.c, g10maint.c, getkey.c, keygen.c, trustdb.c (opt.homedir): New.

	* trustdb.c (init_trustdb): mkdir for hoem directory
	(sign_private_data): Renamed "sig" to "g10.sig"

Mon Feb 16 20:02:03 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* kbnode.c (commit_kbnode): New.
	(delete_kbnode): removed unused first arg. Changed all Callers.

	* ringedit.c (keyblock_resource_name): New.
	(get_keyblock_handle): NULL for filename returns default resource.

Mon Feb 16 19:38:48 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* sig-check.s (check_key_signature): Now uses the supplied
	public key to check the signature and not any more the one
	from the getkey.c
	(do_check): New.
	(check_signature): Most work moved to do_check.

Mon Feb 16 14:48:57 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (find_header): Fixed another bug.

Mon Feb 16 12:18:34 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* getkey.c (scan_keyring): Add handling of compressed keyrings.

Mon Feb 16 10:44:51 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c, g10maint.c (strusage): Rewrote.
	(build_list): New

Mon Feb 16 08:58:41 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (use_armor): New.

Sat Feb 14 14:30:57 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* mainproc.c (proc_tree): Sigclass fix.

Sat Feb 14 14:16:33 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* armor.c (armor_filter): Changed version and comment string.
	* encode.c, sign.c, keygen.c: Changed all comment packet strings.

Sat Feb 14 12:39:24 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (aGenRevoke): New command.
	* revoke.c: New.
	* sign.c (make_keysig_packet): Add support for sigclass 0x20.

Fri Feb 13 20:18:14 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* ringedit.c (enum_keyblocks, keyring_enum): New.

Fri Feb 13 19:33:40 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* export.c: Add functionality.

	* keygen.c (generate_keypair): Moved the leading comment behind the
	key packet.
	* kbnode.c (walk_kbnode): Fixed.

	* g10.c (main): listing armored keys now work.

Fri Feb 13 16:17:43 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* parse-packet.c (parse_publickey, parse_signature): Fixed calls
	to mpi_read used for ELG b.

Fri Feb 13 15:13:23 1998  Werner Koch  (wk@isil.d.shuttle.de)

	* g10.c (main): changed formatting of help output.

Thu Feb 12 22:24:42 1998  Werner Koch  (wk@frodo)

	* pubkey-enc.c (get_session_key): rewritten


 Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.

 This file is free software; as a special exception the author gives
 unlimited permission to copy and/or distribute it, with or without
 modifications, as long as this notice is preserved.

 This file is distributed in the hope that it will be useful, but
 WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


