Replace a call to BUG by an error return.
[gnupg.git] / g10 / ChangeLog
index f4deed4..91934e3 100644 (file)
@@ -1,3 +1,372 @@
+2009-02-24  Werner Koch  <wk@g10code.com>
+
+       * pkglue.c (pk_verify): Return an error for improper DATA instead
+       of calling BUG().
+
+2009-02-09  Werner Koch  <wk@g10code.com>
+
+       * keylist.c (print_capabilities): Take care of cert-only keys.
+       Fixes bug#998.
+       * keyedit.c (show_key_with_all_names_colon): Print the capabilities.
+
+2009-01-26  Werner Koch  <wk@g10code.com>
+
+       * card-util.c (card_status): Detect a Geldkarte. 
+
+2009-01-13  Werner Koch  <wk@g10code.com>
+
+       * call-agent.c (dummy_data_cb): New.
+       (agent_learn): Use it.
+       * card-util.c (card_status): Print type of non-OpenPGP card.
+       * call-agent.h (agent_card_info_s): Add field APPTYPE.
+
+2009-01-12  Werner Koch  <wk@g10code.com>
+
+       * getkey.c (finish_lookup): Take care of keys with a zero
+       timestamp.  Reported by Peter Gutmann.
+
+2009-01-08  Werner Koch  <wk@g10code.com>
+
+       * misc.c (has_invalid_email_chars): Let non-ascii pass through.
+
+       * cpr.c [USE_SHM_COPROCESSING]: Remove this code.
+
+2008-12-12  Werner Koch  <wk@g10code.com>
+
+       * passphrase.c (passphrase_get): Write a STATUS_ERROR.
+       * cpr.c (write_status_error): New.
+
+       * Makefile.am (common_source): Add rmd160.h.
+
+2008-12-11  Werner Koch  <wk@g10code.com>
+
+       * sig-check.c (signature_check2): Change algorithm used to compute
+       the SIG_ID.
+       (check_revocation_keys): Close message digest.
+
+       * rmd160.c, rmd160.h: New.  Based on code from GnuPG-1.4.
+       * t-rmd160.c: New.
+       * Makefile.am: Add support to run tests.
+       * keyid.c (namehash_from_uid): Use rmd160_hash_buffer.
+
+2008-12-10  Werner Koch  <wk@g10code.com>
+
+       * trustdb.h (NAMEHASH_HASH): Remove unsued constant.
+
+       * gpg.c (print_mds): Print RMD160 only is enabled.
+
+       * keygen.c (keygen_set_std_prefs): Include RMD160 only if
+       available.
+
+2008-12-09  Werner Koch  <wk@g10code.com>
+
+       * gpg.c (main) [IS_DEVELOPMENT_VERSION]: Fix strusage use.
+
+2008-12-09  Werner Koch  <wk@g10code.com>
+
+       * keygen.c (proc_parameter_file): Check that key and subkey usages
+       are allowed.
+
+2008-12-09  David Shaw  <dshaw@jabberwocky.com>  (wk)
+
+       * trustdb.c (validate_one_keyblock): Fix the trust signature
+       calculations so that we lower the trust depth of signatures to fit
+       within the current chain, rather than discarding any signature
+       that does not fit within the trust depth.
+
+2008-12-09  Werner Koch  <wk@g10code.com>
+
+       * keyserver.c (show_prompt): Flush stdout.
+
+       * gpg.c (open_info_file): Add arg BINARY and adjust callers.
+
+       * gpg.c (main): Call i18n_init before init_common_subsystems.
+       * gpgv.c (main): Ditto.
+
+       * keylist.c (set_attrib_fd): Do not close ATTRIB_FP if it is the
+       log stream. 
+       (set_attrib_fd) [W32]: Set to binary mode.
+       (dump_attribs): Flush the stream after writing.
+
+2008-12-05  Werner Koch  <wk@g10code.com>
+
+       * call-agent.c (percent_plus_escape): Rename to
+       my_percent_plus_escape and also escape the percent character.
+       Change all callers.
+
+2008-11-18  Werner Koch  <wk@g10code.com>
+
+       * gpg.c (build_lib_list): Remove.
+       (make_libversion): New.
+       (my_strusage): Use it.
+       * gpgv.c (make_libversion): New.
+       (my_strusage): Print libgcrypt version.
+
+2008-11-13  Werner Koch  <wk@g10code.com>
+
+       * gpgv.c: Use new ARGPARSE macros and re-indent.
+
+2008-11-11  Werner Koch  <wk@g10code.com>
+
+       * gpg.c (opts): Use new ARGPARSE macros for clarity.
+
+2008-10-24  Werner Koch  <wk@g10code.com>
+
+       * keyedit.c (change_passphrase): Clear passphrase cache.
+
+2008-10-20  Werner Koch  <wk@g10code.com>
+
+       * gpgv.c: Mark all args of the stub fucntions as unused.
+
+       * card-util.c (generate_card_keys): Remove unused arg SERIALNO and
+       adjust caller.
+       
+       * build-packet.c (write_sign_packet_header): Mark unused arg.
+       * gpg.c (gpg_init_default_ctrl, gpg_deinit_default_ctrl): Ditto.
+       * getkey.c (skip_unusable): Ditto.
+       (write_version): Ditto.
+       * keydb.c (keydb_locate_writable): Ditto.
+       * keyring.c (update_offset_hash_table): Ditto.
+       (keyring_lock): Ditto.
+       * misc.c (register_secured_file): Ditto.
+       (unregister_secured_file): Ditto.
+       (is_secured_file): Ditto.
+       (is_secured_filename): Ditto.
+       * parse-packet.c (parse_marker): Ditto.
+       (parse_key, parse_attribute): Ditto.
+       (parse_trust, parse_compressed, parse_mdc, parse_gpg_control): Ditto.
+       * cpr.c (progress_cb): Ditto.
+       * passphrase.c (passphrase_clear_cache): Ditto.
+       (ask_passphrase): Ditto.
+       * keyedit.c (keyedit_completion): Ditto.
+       * import.c (import_revoke_cert): Ditto.
+       (chk_self_sigs, delete_inv_parts, append_uid): Ditto.
+       (merge_sigs, merge_keysigs, append_key): Ditto.
+       * trustdb.c (list_trust_path): Ditto.
+       (enum_cert_paths, enum_cert_paths_print): Ditto.
+       * tdbdump.c (list_trustdb): Ditto.
+       * keygen.c (keygen_upd_std_prefs): Ditto.
+       (genhelp_factors): Ditto.
+       * call-agent.c (agent_scd_setattr): Ditto.
+       (agent_scd_writekey, agent_scd_change_pin, agent_scd_genkey): Ditto.
+       (agent_clear_pin_cache): Ditto.
+
+       * server.c (option_handler): Mark non yet used arg.
+       (input_notify, output_notify): Ditto.
+       (cmd_recipient, cmd_signer, cmd_encrypt, cmd_decrypt, cmd_verify) 
+       (cmd_sign, cmd_import, cmd_export, cmd_delkeys, do_listkeys) 
+       (cmd_genkey): Ditto.
+       * verify.c (gpg_verify): Ditto.
+
+2008-10-17  Werner Koch  <wk@g10code.com>
+
+       * main.h (idea_cipher_warn): Use do while construct in place of an
+       empty definition.
+
+2008-10-03  David Shaw  <dshaw@jabberwocky.com>
+
+       * main.h, mainproc.c (check_sig_and_print)
+       * keylist.c (list_keyblock_print)
+       * pkclist.c (do_edit_ownertrust)
+       * keyedit.c (menu_showphoto)
+       * photoid.c (generate_photo_id, show_photos)
+       * misc.c (pct_expando): Add %v and %V expandos so
+        that displaying photo IDs can show the attribute validity
+        tag (%v) and string (%V).  Originally by Daniel Gillmor.
+
+2008-09-29  Werner Koch  <wk@g10code.com>
+
+       * gpg.c (main): Remove -sat kludge.  Note that we printed a
+       warning for two years.
+
+       * seskey.c (encode_md_value): Remove extra gcry_md_test_algo since
+       it is not needed with Libgcrypt 1.4.
+       * skclist.c (random_is_faked): Simplify.
+       * sign.c (match_dsa_hash): Remove runtime check for SHA224.
+       * gpg.c (print_mds): Use GCRY_MD_SHA224 constant.
+
+2008-09-25  David Shaw  <dshaw@jabberwocky.com>
+
+       * keyedit.c (keyedit_menu): Fix bug where a modified keyring loses
+       its modified status after a "clean" or "minimize" that doesn't
+       need to do anything.
+
+2008-09-25  Werner Koch  <wk@g10code.com>
+
+       * parse-packet.c (parse): Remove special treatment for compressed
+       new style packets.  Fixes bug#931.
+       
+       * card-util.c (change_pin): Support setting of the reset code.
+
+2008-09-24  Werner Koch  <wk@g10code.com>
+
+       * call-agent.h (struct agent_card_info_s): Add field IS_V2.
+       * call-agent.c (learn_status_cb): That that field.
+
+       * card-util.c (change_pin): Rename first arg to UNBLOCK_v2 and use
+       it this way.
+       (card_edit): Add new command UNBLOCK.
+
+2008-09-23  David Shaw  <dshaw@jabberwocky.com>
+
+       * pkclist.c (select_algo_from_prefs): Redo function to rank prefs
+       and pick a consensus winner across all keys.
+
+2008-09-16  Werner Koch  <wk@g10code.com>
+
+       * card-util.c (fpr_is_ff): New.
+       (card_status): Do not print general key info for an all-ff fpr.
+       (change_login, change_private_do): Factor common code out to ...
+       (get_data_from_file): .. new.
+       (change_cert): New.
+       (card_edit): Add command "writecert".
+       * call-agent.c (writecert_parm_s): New.
+       (inq_writecert_parms, agent_scd_writecert): New.
+
+2008-09-04  David Shaw  <dshaw@jabberwocky.com>
+
+       * keyserver.c (keyserver_import_cert): Allow keyserver URLs in
+       addition to full URLs in CERT records.
+
+2008-08-11  Werner Koch  <wk@g10code.com>
+
+       * keygen.c (ask_expire_interval): Check for time overflow of an
+       u32.  Fixes bug #947.
+
+2008-08-01  Werner Koch  <wk@g10code.com>
+
+       * tdbio.c (open_db) [!EROFS]: Move closing parens out of the
+       ifdef.  Reported by Ken Takusagawa.
+
+2008-06-25  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gpg.c (enum cmd_and_opt_values): Remove option
+       oEnableW32HandleTranslation.
+       (opts): Remove option --enable-w32-handle-translation.
+       (main): Remove variable w32_handle_translation.
+
+2008-06-19  Werner Koch  <wk@g10code.com>
+
+       * gpg.c (gpgconf_list): Add "group".
+
+2008-06-18  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gpg.c (enum cmd_and_opt_values): New option
+       oEnableW32HandleTranslation.
+       (opts): New option --enable-w32-handle-translation.
+       (main): New variable w32_handle_translation to keep track of
+       option.
+
+2008-06-16  Werner Koch  <wk@g10code.com>
+
+       * keygen.c (output_control_s): Add ASK_PASSPHRASE.
+       (read_parameter_file): Add commands %ask-passphrase and
+       %no-ask-passphrase.
+
+2008-06-11  Werner Koch  <wk@g10code.com>
+
+       * gpg.c: Make --fixed-list-mode a dummy.
+       * options.h (struct): Removed FIXED_LIST_MODE.
+       * keyid.c (colon_strtime, colon_datestr_from_pk) 
+       (colon_datestr_from_sk, colon_datestr_from_sig) 
+       (colon_expirestr_from_sig): Remove fixed_list_mode case.
+       * keylist.c (list_keyblock_colon): Ditto.  Remove all now unsed
+       code and reindent.
+
+2008-05-31  Werner Koch  <wk@g10code.com>
+
+       * keygen.c (ask_user_id): Change the string printed as header of
+       the user ID generation.  Use code to not break existing
+       translations.  Suggested by Eric Tetz.
+
+2008-05-08  Werner Koch  <wk@g10code.com>
+
+       * sig-check.c (do_check_messages): Print a revocation diagnostic
+       in verbose mode.
+
+2008-05-07  Werner Koch  <wk@g10code.com>
+
+       * gpg.c: New command --locate-keys.  New options --with-sig-list
+       and --with-sig-check.
+       * keylist.c (locate_one): New.
+       (public_key_list): Add arg LOCATE_MODE and use locate_one.
+       * getkey.c (get_pubkey_byname): Fix nodefault case.  Add option
+       RETCTX, change all callers.
+       (struct getkey_ctx_s): Add field extra_ptr;
+       (get_pubkey_end): Free it.
+
+2008-04-18  Werner Koch  <wk@g10code.com>
+
+       * misc.c (map_cipher_openpgp_to_gcry, map_cipher_gcry_to_openpgp) 
+       (openpgp_cipher_test_algo): Add camellia-192.
+       (openpgp_cipher_blocklen): New.
+       * parse-packet.c (parse_key): Use new function here.
+
+2008-04-15  David Shaw  <dshaw@jabberwocky.com>
+
+       * getkey.c (merge_selfsigs_subkey): If there are multiple 0x19
+       backsigs, take the most recent one.
+
+2008-04-08  Werner Koch  <wk@g10code.com>
+
+       * options.h (opt): Add AKL_NODEFAULT and AKL_LOCAL.
+       * getkey.c (parse_auto_key_locate): Parse them.
+       (get_pubkey_byname): Implement them.  Add arg NO_AKL and use that
+       in all cases where a local key is expected.
+       * import.c (import_one): Fill in the fingerprint in all cases.
+       Use log_get_stream.
+       * keyserver.c (keyserver_import_pka): Set FPR to NULL on error.
+       Return G10ERR_NO_PUBKEY if no PKA info is available or no key URI
+       is given in the PKA record..
+       (keyserver_import_cert): Return G10ERR_NO_PUBKEY if a CERT record
+       was not found.
+
+       * getkey.c (get_pubkey_byname): Release FPR in the error case.
+       Continue with next mechanism on error.  Better diagnostics.
+
+2008-04-07  Werner Koch  <wk@g10code.com>
+
+       * keyserver.c (parse_keyserver_uri): Allow a default host name.
+
+       * getkey.c (get_pubkey_byname): Replace sprintf by bin2hex.
+
+2008-04-02  Werner Koch  <wk@g10code.com>
+
+       * gpg.c (main): Do not allow DSA2 with a too old Libgcrypt.
+
+2008-03-26  Werner Koch  <wk@g10code.com>
+
+       * tdbio.c (lookup_hashtable): Make cmp args const.
+       (cmp_trec_fpr): Make FPR const.
+       (tdbio_search_trust_byfpr): Remove cast.
+
+2008-03-25  Werner Koch  <wk@g10code.com>
+
+       * keyserver.c (parse_keyrec): Take care of char defaulting to
+       unsigned when using hextobyte.
+
+2008-03-25  David Shaw  <dshaw@jabberwocky.com>  (wk)
+
+       * import.c (collapse_uids): Fix bug 894: possible memory
+       corruption around deduplication of user IDs.
+
+2008-03-25  Werner Koch  <wk@g10code.com>
+
+       * parse-packet.c (parse_key): Parse a secret key encrypted with
+       Camellia.
+
+       * options.skel: Make the default keyserver keys.gnupg.net.
+
+2008-03-18  Werner Koch  <wk@g10code.com>
+
+       * seckey-cert.c (do_check): Use GCRYMPI_FMT_PGP for v3 keys.
+       Reported by Petr Cerny.
+
+2008-03-13  Werner Koch  <wk@g10code.com>
+
+       * passphrase.c (PROMPTSTRING): Change string to me more similar to
+       the X.509 prompt.
+
 2008-02-26  Werner Koch  <wk@g10code.com>
 
        * getkey.c (get_pubkey_byname): Fix comment.
@@ -10078,7 +10447,7 @@ Thu Feb 12 22:24:42 1998  Werner Koch  (wk@frodo)
 
 
  Copyright 1998,1999,2000,2001,2002,2003,2004,2005,
-          2006,2007 Free Software Foundation, Inc.
+          2006,2007,2008,2009 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