2013-05-10  Werner Koch  <wk@gnupg.org>

	Release 2.0.20.

	Update gpg-error, libgcrypt, and ksba m4 scripts.
	* m4/gpg-error.m4: Update from libgpg-error repo.
	* m4/ksba.m4: Likewise.
	* m4/libgcrypt.m4: Likewise.

2013-05-10  Yuri Chornoivan  <yurchor@ukr.net>

	Update Ukrainian translation.

2013-05-07  Werner Koch <wk@gnupg.org>

	w32: Add icons and version information.
	* common/gnupg.ico: New.  Take from artwork/gnupg-favicon-1.ico.
	* agent/gpg-agent-w32info.rc: New.
	* g10/gpg-w32info.rc: New.
	* scd/scdaemon-w32info.rc: New.
	* sm/gpgsm-w32info.rc: New.
	* tools/gpg-connect-agent-w32info.rc: New.
	* common/w32info-rc.h.in: New.
	* configure.ac (BUILD_REVISION, BUILD_FILEVERSION, BUILD_TIMESTAMP)
	(BUILD_HOSTNAME): New.
	(AC_CONFIG_FILES): Add w32info-rc.h.
	* am/cmacros.am (.rc.o): New rule.
	* agent/Makefile.am, common/Makefile.am, g10/Makefile.am
	* scd/Makefile.am, sm/Makefile.am, tools/Makefile.am: Add stuff to
	build resource files.

2013-05-07  Ian Abbott  <abbotti@mev.co.uk>

	doc: fix some Texinfo warnings.
	* doc/gpg.texi: Fix syntax and add missing menu entries.
	* doc/gpgsm.texi: Fix subsectioning.

2013-04-24  Jedi  <jedi@jedi.org>

	Update helper scripts.
	* compile, config.guess, config.rpath, config.sub, depcomp,
	* install-sh, mdate-sh, mkinstalldirs: Update to Feb 25 versions from
	gnulib.

2013-04-24  Joe Hansen  <joedalton2@yahoo.dk>

	Update Danish translation.
	* po/da.po: Update.

2013-04-24  Jaime Suarez  <jaime.suma@gmail.com>

	Update Spanish translation.

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

	Update de.po and fr.po for keypad->pinpad change.

2013-04-24  NIIBE Yutaka  <gniibe@fsij.org>

	scd: Add pinpad support for REINER SCT cyberJack go.
	* scd/ccid-driver.c (VENDOR_REINER, CYBERJACK_GO): New.
	(ccid_transceive_secure): Handle the case for VENDOR_REINER.
	Original work was by Alina Friedrichsen (tiny change).

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

	Allow building gpgkeys_ldap with the 32 bit mingw-w64 toolchain.
	* keyserver/gpgkeys_ldap.c (my_ldap_start_tls_s): Define macro
	depending on compiler version.
	(main): Use new macro.

2013-04-22  Werner Koch  <wk@gnupg.org>

	Fix potential heap corruption in "gpg -v --version".
	* g10/gpg.c (build_list): Rewrite to cope with buffer overflow in
	certain locales.

	Switch to the new automagic beta numbering scheme.
	* configure.ac: Add all the required m4 magic.

	Update docs from master.
	* doc/gpg-agent.texi: Update from master.
	* doc/gpg.texi: Ditto.
	* doc/gpgsm.texi: Ditto.
	* doc/gpl.texi: Ditto.
	* doc/yat2m.c: Ditto.

	Ignore obsolete option --disable-keypad.
	* scd/scdaemon.c (opts): Ignore --disable-keypad.

	Allow marking options as ignored.
	* jnlib/argparse.h (ARGPARSE_OPT_IGNORE): New.
	(ARGPARSE_TYPE_MASK): New, for internal use.
	(ARGPARSE_ignore): New.
	* jnlib/argparse.c (optfile_parse, arg_parse): Replace remaining
	constants by macros.
	(optfile_parse): Implement ARGPARSE_OPT_IGNORE.
	(arg_parse): Exclide ignore options from --dump-options.

	Do not mix test result with progress lines.
	This makes parsing of the results easier.  Fixes bug#1400.

	* tests/openpgp/defs.inc (progress_cancel, progress_end)
	(progress_new): New.
	* tests/openpgp/conventional-mdc.test: Use progress functions
	* tests/openpgp/conventional.test: Ditto.
	* tests/openpgp/encrypt-dsa.test: Ditto.
	* tests/openpgp/encrypt.test: Ditto.
	* tests/openpgp/sigs.test: Ditto.

2013-04-01  NIIBE Yutaka  <gniibe@fsij.org>

	scd: move SCDaemon to libexecdir.
	* common/homedir.c (gnupg_module_name): It's now libexecdir.
	* scd/Makefile.am (libexec_PROGRAMS): Add scdaemon
	(bin_PROGRAMS): Remove scdaemon.

2013-03-26  NIIBE Yutaka  <gniibe@fsij.org>

	scd: PC/SC status fix.
	* scd/apdu.c (pcsc_get_status_direct): Check PCSC_STATE_MUTE only when
	PCSC_STATE_PRESENT.

	* scd/pcsc-wrapper.c (handle_status): Ditto.

	scd: PC/SC cleanup (more).
	* scd/apdu.c (control_pcsc_direct, control_pcsc_wrapped, control_pcsc)
	(check_pcsc_pinpad, pcsc_pinpad_verify, pcsc_pinpad_modify): Use
	pcsc_dword_t.

	scd: call update_card_removed only when detecting removal.
	* scd/command.c (update_reader_status_file): Add condition
	ss->status == 0.

2013-03-22  NIIBE Yutaka  <gniibe@fsij.org>

	scd: PC/SC cleanup.
	* scd/apdu.c (pcsc_dword_t): New.  It was named as DWORD (double-word)
	when a word was 16-bit.
	(struct reader_table_s): Fixes for types.
	(struct pcsc_readerstate_s) [__APPLE__]: Enable #pragma pack(1).
	Throughout: Fixes for types.

	* scd/pcsc-wrapper.c: Likewise.

2013-03-21  NIIBE Yutaka  <gniibe@fsij.org>

	scd: change default value of pinpad maxlen.
	* scd/apdu.c (pcsc_pinpad_verify, pcsc_pinpad_modify): Default value
	of maxlen for pinpad input is now 15 (was: 25).

	* scd/ccid-driver.c (ccid_transceive_secure): Likewise.

2013-03-15  NIIBE Yutaka  <gniibe@fsij.org>

	scd: ccid-driver supporting larger APDU.
	* scd/ccid-driver.c (ccid_transceive_apdu_level): Support larger
	APDU.

2013-03-03  David Shaw  <dshaw@jabberwocky.com>

	Differentiate between success (full or partial), not-found, and failure.
	* keyserver/gpgkeys_hkp.c (get_key): Use curl_easy_setinfo to get the
	  HTTP status code so we can tell the difference between a successful
	  retrieval, a partial retrieval, a not-found, or a server failed.

	Emulate curl_easy_getinfo and CURLINFO_RESPONSE_CODE in curl-shim.
	* keyserver/curl-shim.h, keyserver/curl-shim.c (curl_easy_getinfo):
	  New. Return the HTTP status code for the last transfer.

2013-02-28  David Shaw  <dshaw@jabberwocky.com>

	Bring the fix for bug 739 on 1.4 over to 2.0 (bug 1479)
	* http.h, http.c (http_wait_response, main): Remove
	  HTTP_FLAG_NO_SHUTDOWN.

2013-02-12  NIIBE Yutaka  <gniibe@fsij.org>

	Japanese: minor doc update.
	* doc/help.ja.txt: Update.

	Japanese: updated po and doc.
	* doc/help.ja.txt, po/ja.po: Updated.

2013-02-08  NIIBE Yutaka  <gniibe@fsij.org>

	scd: Rename 'keypad' to 'pinpad'.
	* NEWS: Mention scd changes.

	* agent/divert-scd.c (getpin_cb): Change message.

	* agent/call-scd.c (inq_needpin): Change the protocol to
	POPUPPINPADPROMPT and DISMISSPINPADPROMPT.
	* scd/command.c (pin_cb): Likewise.

	* scd/apdu.c (struct reader_table_s): Rename member functions.
	(check_pcsc_pinpad, pcsc_pinpad_verify, pcsc_pinpad_modify,
	check_ccid_pinpad, ccid_pinpad_operation, apdu_check_pinpad
	apdu_pinpad_verify, apdu_pinpad_modify): Rename.

	* scd/apdu.h (SW_HOST_NO_PINPAD, apdu_check_pinpad)
	(apdu_pinpad_verify, apdu_pinpad_modify): Rename.

	* scd/iso7816.h (iso7816_check_pinpad): Rename.

	* scd/iso7816.c (map_sw): Use SW_HOST_NO_PINPAD.
	(iso7816_check_pinpad): Rename.
	(iso7816_verify_kp, iso7816_change_reference_data_kp): Follow
	the change.

	* scd/ccid-driver.h (CCID_DRIVER_ERR_NO_PINPAD): Rename.
	* scd/ccid-driver.c (ccid_transceive_secure): Use it.

	* scd/app-dinsig.c (verify_pin): Follow the change.
	* scd/app-nks.c (verify_pin): Follow the change.

	* scd/app-openpgp.c (check_pinpad_request): Rename.
	(parse_login_data, verify_a_chv, verify_chv3, do_change_pin): Follow
	the change.

	* scd/scdaemon.c (oDisablePinpad, oEnablePinpadVarlen): Rename.

	* scd/scdaemon.h (opt): Rename to disable_pinpad,
	enable_pinpad_varlen.

	* tools/gpgconf-comp.c (gc_options_scdaemon): Rename to
	disable-pinpad.

2013-02-05  NIIBE Yutaka  <gniibe@fsij.org>

	scd: Fix check_keypad_request.
	* scd/app-openpgp.c (check_keypad_request): 0 means not to use pinpad.

	scd: Clean up.
	* apdu.h (apdu_send_simple_kp): Remove.
	* apdu.c (apdu_send_simple_kp): Remove.

	SCD: Add vendor specific initalization.
	* scd/ccid-driver.c (ccid_vendor_specific_init): New.
	(ccid_open_reader): Call ccid_vendor_specific_init.

	SCD: Support P=N format for login data.
	* scd/app-openpgp.c (parse_login_data): Support P=N format.

	SCD: Better interoperability.
	* scd/apdu.c: Fill bTeoPrologue[2] field.

	SCD: Defaults to use pinpad if the reader has the capability.
	* scd/app-openpgp.c (struct app_local_s): Remove VARLEN.
	(parse_login_data): "P=0" means to disable pinpad.
	(check_keypad_request): Default is to use pinpad if available.

	SCD: handle keypad request on the card.
	* scd/app-openpgp.c: Add 2013.
	(struct app_local_s): Add keypad structure.
	(parse_login_data): Add parsing keypad request on the card.
	(check_keypad_request): New.
	(verify_a_chv, verify_chv3, do_change_pin): Call check_keypad_request
	to determine use of keypad.

	SCD: Minor fix of ccid-driver.
	* scd/ccid-driver.c (VENDOR_VEGA): Fix typo.

	SCD: Add support of Covadis VEGA_ALPHA reader.
	* scd/ccid-driver.c: Add 2013.
	(VENDER_VEGA, VEGA_ALPHA):New.
	(ccid_transceive_secure): VEGA_ALPHA is same firmware as GEMPC_PINPAD.
	Change bNumberMessage to 0x01, as it works better (was: 0xff).

	SCD: Support fixed length PIN input for keypad (PC/SC).
	* scd/apdu.c (pcsc_keypad_verify): SUpport fixed length PIN input for
	keypad.
	(pcsc_keypad_modify): Likewise.
	* scd/ccid-driver.c (ccid_transceive_secure): Clean up.

	SCD: Support fixed length PIN input for keypad.
	* scd/iso7816.h (struct pininfo_s): Remove MODE and add FIXEDLEN.
	* scd/app-dinsig.c (verify_pin): Initialize FIXEDLEN to unknown.
	* scd/app-nks.c (verify_pin): Likewise.
	* scd/app-openpgp.c (verify_a_chv, verify_chv3, do_change_pin):
	Likewise.
	* scd/apdu.c (check_pcsc_keypad): Add comment.
	(pcsc_keypad_verify, pcsc_keypad_modify): PC/SC driver only support
	readers with the feature of variable length input (yet).
	(apdu_check_keypad): Set FIXEDLEN.
	* scd/ccid-driver.c (ccid_transceive_secure): Add GEMPC_PINPAD
	specific settings.
	Support fixed length PIN input for keypad.

	SCD: API cleanup for keypad handling.
	* scd/iso7816.h (struct pininfo_s): Rename from iso7816_pininfo_s.
	Change meaning of MODE.
	(pininfo_t): Rename from iso7816_pininfo_t.
	* scd/sc-copykeys.c: Include "iso7816.h".
	* scd/scdaemon.c, scd/command.c: Likewise.
	* scd/ccid-driver.c: Include "scdaemon.h" and "iso7816.h".
	(ccid_transceive_secure): Follow the change of PININFO_T.
	* scd/app.c: Include "apdu.h" after "iso7816.h".
	* scd/iso7816.c (iso7816_check_keypad, iso7816_verify_kp)
	(iso7816_change_reference_data_kp): Follow the change of API.
	* scd/apdu.c (struct reader_table_s): Change API of CHECK_KEYPAD,
	KEYPAD_VERIFY, KEYPAD_MODIFY to have arg of PININFO_T.
	(check_pcsc_keypad, check_ccid_keypad): Likewise.
	(apdu_check_keypad, apdu_keypad_verify, apdu_keypad_modify): Likewise.
	(pcsc_keypad_verify, pcsc_keypad_modify, ct_send_apdu)
	(pcsc_send_apdu_direct,  pcsc_send_apdu_wrapped, pcsc_send_apdu)
	(send_apdu_ccid, ccid_keypad_operation, my_rapdu_send_apdu, send_apdu)
	(send_le): Follow the change of API.
	* scd/apdu.h (apdu_check_keypad, apdu_keypad_verify)
	(apdu_keypad_modify): Change the API.
	* scd/app-dinsig.c, scd/app-nks.c, scd/app-openpgp.c: Follow the
	change.

	SCD: Clean up.  Remove PADLEN for keypad input.
	* scd/apdu.c (struct pininfo_s): Use iso7816_pininfo_s.
	(struct reader_table_s): Remove last arg from check_keypad method.
	(check_pcsc_keypad, check_pcsc_keypad): Remove PIN_PADLEN.
	(pcsc_keypad_verify, pcsc_keypad_modify): Don't check PIN_PADLEN.
	(send_apdu_ccid, ccid_keypad_operation): Remove PIN_PADLEN.
	(apdu_check_keypad, apdu_keypad_verify, apdu_keypad_modify):
	Likewise.

	* scd/apdu.h (apdu_check_keypad, apdu_keypad_verify)
	(apdu_keypad_modify): Remove PIN_PADLEN.

	* scd/ccid-driver.c (ccid_transceive_secure): Remove PIN_PADLEN.

	* scd/ccid-driver.h (ccid_transceive_secure): Remove PIN_PADLEN.

	* scd/iso7816.c (iso7816_check_keypad, iso7816_verify_kp)
	(iso7816_change_reference_data_kp): Remove PADLEN.

	* scd/iso7816.h (struct iso7816_pininfo_s): Remove PADLEN, PADCHAR.

	SCD: Add option enable-keypad-varlen and support for GEMPC_PINPAD.
	* scd/scdaemon.h (opt): Add enable_keypad_varlen.
	* scd/scdaemon.c (cmd_and_opt_values): Add oEnableKeypadVarlen.
	(opts, main): Add oEnableKeypadVarlen.
	* scd/ccid-driver.c (GEMPC_PINPAD): New.
	(ccid_transceive_secure): Add enable_varlen handling.
	Enable GEMPC_PINPAD.

	SCD: Support not-so-smart card readers.
	* scd/ccid-driver.c (struct ccid_driver_s): Add auto_voltage,
	auto_param, and auto_pps.
	(parse_ccid_descriptor): Set auto_voltage, auto_param, and auto_pps.
	Support non-autoconf readers.
	(update_param_by_atr): New.
	(ccid_get_atr): Use 5V for PowerOn when auto_voltage is not supported.
	Use 0x10 when nonnull_nad for SetParameters.
	Call update_param_by_atr for parsing ATR, and use param for
	SetParameters.
	Send PPS if reader requires it and card is negotiable.
	When bNadValue in the return values of SetParameters == 0,
	clear handle->nonnull_nad flag.

2013-02-04  NIIBE Yutaka  <gniibe@fsij.org>

	SCD: Hold lock for pinpad input.
	* scd/apdu.c (apdu_check_keypad, apdu_keypad_verify)
	(apdu_keypad_modify): Hold lock to serialize communication.

	agent: kill pinentry by SIGINT, fixing a bug to be killed by SIGINT.
	* agent/call-pinentry.c (atfork_cb): Reset signal mask and signal
	handler for child process.
	(agent_popup_message_stop): Send SIGINT (was: SIGKILL).

2013-01-11  Christian Aistleitner  <christian@quelltextlich.at>

	gpg: Fix honoring --cert-digest-algo when recreating a cert.
	* g10/sign.c (update_keysig_packet): Override original signature's
	digest algo in hashed data and for hash computation.

2013-01-07  NIIBE Yutaka  <gniibe@fsij.org>

	Update Japanese Translation.
	* po/ja.po: Fix wrong translations for designated revocation.
	Reported by Hideki Saito.

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

	gpg: Detect Keybox files and print a diagnostic.
	* g10/keydb.c (KEYDB_RESOURCE_TYPE_KEYBOX): New.
	(keydb_add_resource): Handle scheme "gnupg-kbx:".  Detect Keybox
	magic.  Print wanrning note for Keybox.
	(keydb_new, keydb_release, keydb_get_resource_name)
	(lock_all, unlock_all, keydb_get_keyblock)
	(keydb_update_keyblock, keydb_insert_keyblock, keydb_delete_keyblock)
	(keydb_locate_writable, keydb_rebuild_caches, keydb_search_reset)
	(keydb_search2): Ignore Keybox type in switches.
	* g10/gpg.h (G10ERR_UNSUPPORTED): Map to correct gpg-error value.

2012-12-29  NIIBE Yutaka  <gniibe@fsij.org>

	Update Japanese Translation.
	* po/ja.po: Fix terms and expressions.

	Update Japanese Translation.
	* po/ja.po: Translate all untranslated messages.

2012-12-27  NIIBE Yutaka  <gniibe@fsij.org>

	Update Japanese Translation.
	* po/ja.po: Fix all fuzzy translations.  Fill some of unstanslated
	messages.

	Update Japanese Translation.
	* po/ja.po: Remove old entries.

	Update Japanese Translation.
	* po/ja.po: Fix headers.  Update by msgmerge -U ja.po gnupg2.pot.

	Update Japanese tranlation.
	* po/ja.po: Change the encoding to UTF-8 (was: EUC-JP).

2012-12-21  David Shaw  <dshaw@jabberwocky.com>

	Make sure srvcount is initialized.
	* keyserver/gpgkeys_hkp.c (srv_replace): Initialize srvcount.

2012-12-20  Werner Koch  <wk@gnupg.org>

	gpg: Import only packets which are allowed in a keyblock.
	* g10/import.c (valid_keyblock_packet): New.
	(read_block): Store only valid packets.

2012-12-19  Werner Koch  <wk@gnupg.org>

	gpg: Make commit 258192d4 actually work.
	* g10/sign.c (update_keysig_packet): Use digest_algo.

	gpg: Suppress "public key already present" in quiet mode.
	* g10/pkclist.c (build_pk_list): Print two diagnostics only in
	non-quiet mode.

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

	jnlib: Add meta option ignore-invalid-option.
	* jnlib/argparse.c (iio_item_def_s, IIO_ITEM_DEF): New.
	(initialize): Init field IIO_LIST.
	(ignore_invalid_option_p): New.
	(ignore_invalid_option_add): New.
	(ignore_invalid_option_clear): New.
	(optfile_parse): Implement meta option.

2012-12-18  David Shaw  <dshaw@jabberwocky.com>

	No point in defaulting try-dns-srv to on if we don't have SRV support.
	* keyserver/gpgkeys_hkp.c (main): Only default try-dns-srv to on if we
	  have SRV support in the first place.

	Issue 1447: Pass proper Host header and SNI when SRV is used with curl.
	* configure.ac: Check for inet_ntop.

	* m4/libcurl.m4: Provide a #define for the version of the curl
	  library.

	* keyserver/gpgkeys_hkp.c (main, srv_replace): Call getaddrinfo() on
	  each target.  Once we find one that resolves to an address (whether
	  IPv4 or IPv6), pass it into libcurl via CURLOPT_RESOLVE using the
	  SRV name as the "host".  Force the HTTP Host header to be the same.

2012-12-15  David Shaw  <dshaw@jabberwocky.com>

	Part of issue 1447: Pass proper Host header when SRV is used.
	* common/http.c (send_request, connect_server): Set proper Host header
	  (no :port, host is that of the SRV) when SRV is used in the
	  curl-shim.

	Fix issue 1446: honor ports given in SRV responses.
	* common/http.c (send_request, connect_server, http_open): Use a
	  struct srv instead of a single srvtag so we can pass the chosen host
	  and port back to the caller.
	  (connect_server): Use the proper port in the HAVE_GETADDRINFO case.

	* keyserver/curl-shim.c (curl_easy_perform): Use struct srv and log
	  chosen host and port.

	* keyserver/gpgkeys_hkp.c (main): Properly take the port given by SRV.

2012-12-13  NIIBE Yutaka  <gniibe@fsij.org>

	SCD: Fix the process of writing key or generating key.
	* scd/app-openpgp.c (store_fpr): Flush KEY-FPR and KEY-TIME.

2012-12-07  NIIBE Yutaka  <gniibe@fsij.org>

	Revert SCD changes of 2010-05-03 (scd/ChangeLog 2010-03-17).
	* scd/apdu.c (pcsc_no_service): Remove.
	(open_pcsc_reader_direct, open_pcsc_reader_wrapped): Remove
	pcsc_no_service support.
	(apdu_open_reader): Remove R_NO_SERVICE.
	* scd/apdu.h (apdu_open_reader): Remove R_NO_SERVICE.
	* scd/command.c (reader_disabled): Remove.
	(get_reader_slot): Follow the change of R_NO_SERVICE.
	(open_card, cmd_serialno, scd_command_handler): Remove reader_disabled
	support.
	* scd/sc-copykeys.c (main): Follow the change of R_NO_SERVICE.

	Don't keep opening unavailable card reader.
	* scd/command.c (update_reader_status_file): Don't call
	get_reader_slot.

2012-11-30  David Shaw  <dshaw@jabberwocky.com>

	Update sample keys.

2012-11-29  David Shaw  <dshaw@jabberwocky.com>

	The keyserver search menu should honor --keyid-format.
	* keyserver.c (print_keyrec): Honor --keyid-format when getting back
	  full fingerprints from the keyserver (the comment in the code was
	  correct, the code was not).

2012-11-27  Werner Koch  <wk@gnupg.org>

	Fix printing of ECC algo names in hkp keyserver listings.
	* g10/misc.c (map_pk_openpgp_to_gcry): New.
	* g10/keyserver.c (print_keyrec): Map OpenPGP algorithm ids.

2012-11-06  Werner Koch  <wk@gnupg.org>

	Allow decryption with card keys > 3072 bit.
	* scd/command.c (MAXLEN_SETDATA): New.
	(cmd_setdata): Add option --append.
	* g10/call-agent.c (agent_scd_pkdecrypt): Use new option for long data

	* scd/app-openpgp.c (struct app_local_s): Add field manufacturer.
	(app_select_openpgp): Store manufacturer.
	(do_decipher): Print a note for broken cards.

2012-11-02  NIIBE Yutaka  <gniibe@fsij.org>

	agent: Fix wrong use of gcry_sexp_build_array.
	* findkey.c (agent_public_key_from_file): Fix use of
	gcry_sexp_build_array.

2012-10-31  NIIBE Yutaka  <gniibe@fsij.org>

	SCD: Upon error, open_pcsc_reader_wrapped does same as _direct.
	* scd/apdu.c (PCSC_E_NO_SERVICE): New.
	(open_pcsc_reader_direct): Use PCSC_E_NO_SERVICE.
	(open_pcsc_reader_wrapped): Set pcsc_no_service.

2012-08-24  Werner Koch  <wk@gnupg.org>

	Update French translation.
	* po/fr.po: Update.

2012-08-24  David Prévot  <taffit@debian.org>

	Fix typos spotted during translations.
	agent/genkey.c: s/to to/to/
	sm/*.c: s/failed to allocated/failed to allocate/
	sm/certlist.c: s/should have not/should not have/

	Consistency fix:

	* g10/gpg.c, kbx/kbxutil.c, sm/gpgsm.c: uppercase after Syntax

	Actually show translators comments in PO files.

	Keep previous msgids of translated messages.
	* po/Makefile.in.in: Use --previous with msgmerge.

2012-07-20  NIIBE Yutaka  <gniibe@fsij.org>

	scd: Add forgotten VENDOR_FSIJ to ccid-driver.
	* scd/ccid-driver.c (ccid_transceive_secure): Handle VENDOR_FSIJ.

2012-06-25  NIIBE Yutaka  <gniibe@fsij.org>

	scd: handle reader/token removal. * scd/apdu.c (pcsc_error_to_sw): PCSC_E_UNKNOWN_READER means SW_HOST_NO_READER.

	scd: Fix updating slot status. * scd/comman.c (do_reset): Let clear card_removed flag.

	scd: acquire lock in new_reader_slot.
	* scd/apdu.c (new_reader_slot): Acquire lock.
	  (open_ct_reader, open_pcsc_reader_direct, open_pcsc_reader_wrapped)
	  (open_ccid_reader, open_rapdu_reader): Release lock.

	scd: move lock_slot, trylock_slot, unlock_slot functions.
	* scd/apdu.c (lock_slot, trylock_slot, unlock_slot): Move.

	scd: Fix merge mistake. * scd/iso7816.c (iso7816_reset_retry_counter): Implement.

2012-06-25  Werner Koch  <wk@gnupg.org>

	scd: Prefer application Geldkarte over DINSIG.
	* scd/app.c (select_application): Reorder application tests.

2012-06-25  Werner Koch  <wk@gnupg.org>
	    Ben Kibbey  <bjk@luxsci.net>

	scd: Fix for card change returning GPG_ERR_CARD_RESET.
	* scd/apdu.c (apdu_connect): Do not test for zero atrlen.

2012-06-25  NIIBE Yutaka  <gniibe@fsij.org>

	Merge ccid_driver_improvement branch. (backport)
	* scd/apdu.c (ccid_keypad_operation): Rename from ccid_keypad_verify.
	(open_ccid_reader): Use ccid_keypad_operation for verify and modify.

	* scd/ccid-driver.c (VENDOR_VASCO, VASCO_920): New.
	(ccid_transceive_apdu_level): Permit sending packet where
	apdulen <= 289.  Support receiving packets in a chain.
	(ccid_transceive_secure): Maximum is 15 for VASCO DIGIPASS 920.
	Support keypad_modify method such as CHANGE_REFERENCE_DATA: 0x24.

	Add error log and debug log for pcsc_keypad_verify and pcsc_keypad_modify.
	* scd/apdu.c (pcsc_keypad_verify): Add debug log and error log.
	(pcsc_keypad_modify): Likewise.

	Fix pinpad input support for passphrase modification. (backport)
	* apdu.c (pcsc_keypad_verify): Have dummy Lc field with value 0.
	(pcsc_keypad_modify): Likewise.
	(pcsc_keypad_modify): It's only for ISO7816_CHANGE_REFERENCE_DATA.
	bConfirmPIN value is determined by the parameter p0.

	* app-openpgp.c (do_change_pin): The flag use_keypad should be 0 when
	reset_mode is on, or resetcode is on.  use_keypad only makes sense for
	iso7816_change_reference_data_kp.

	* iso7816.h (iso7816_put_data_kp): Remove.
	(iso7816_reset_retry_counter_kp): Remove.
	(iso7816_reset_retry_counter_with_rc_kp): Remove.
	(iso7816_change_reference_data_kp): Add an argument: IS_EXCHANGE.

	* iso7816.c (iso7816_put_data_kp): Remove.
	(iso7816_reset_retry_counter_kp): Remove.
	(iso7816_reset_retry_counter_with_rc_kp): Remove.
	(iso7816_change_reference_data_kp): Add an argument: IS_EXCHANGE.

	scd: Fix pinpad input support (backport from master)
	* app-openpgp.c (do_change_pin): Fix pincb messages when
	use_keypad == 1.

	scd: PC/SC pinpad support (pinpad input for modify pass phrase). (backport)
	* iso7816.h (iso7816_change_reference_data_kp): Remove arguments
	of OLDCHV, OLDCHVLEN, NEWCHV, and NEWCHVLEN.

	* iso7816.c (iso7816_change_reference_data_kp): Call
	apdu_keypad_modify.
	(iso7816_change_reference_data): Don't call
	iso7816_change_reference_data_kp.

	* apdu.h (apdu_keypad_modify): New.

	* apdu.c (pcsc_keypad_modify, apdu_keypad_modify): New.
	(struct reader_table_s): New memeber function keypad_modify.
	(new_reader_slot, open_ct_reader, open_ccid_reader)
	(open_rapdu_reader): Initialize keypad_modify.

	* app-openpgp.c (do_change_pin): Handle keypad and call
	iso7816_change_reference_data_kp if it is the case.

	scd: PC/SC pinpad support.  (Backported from master.)
	* iso7816.h (iso7816_verify_kp): Remove arguments of CHV and CHVLEN.

	* iso7816.c (iso7816_verify_kp): Call apdu_keypad_verify. Only
	handle thecase with PININFO.
	(iso7816_verify): Call apdu_send_simple.

	* app-openpgp.c (verify_a_chv, verify_chv3): Follow the change of
	iso7816_verify_kp.

	* app-nks.c (verify_pin): Likewise.

	* app-dinsig.c (verify_pin): Likewise.

	* apdu.c: Include "iso7816.h".
	(struct reader_table_s): New memeber function keypad_verify.
	Add fields verify_ioctl and modify_ioctl in pcsc.
	(CM_IOCTL_GET_FEATURE_REQUEST, FEATURE_VERIFY_PIN_DIRECT)
	(FEATURE_MODIFY_PIN_DIRECT): New.
	(pcsc_control): New.
	(control_pcsc_direct, control_pcsc_wrapped, control_pcsc)
	(check_pcsc_keypad, pcsc_keypad_verify): New.
	(ccid_keypad_verify, apdu_keypad_verify): New.
	(new_reader_slot): Initialize with check_pcsc_keypad,
	pcsc_keypad_verify, verify_ioctl and modify_ioctl.
	(open_ct_reader): Initialize keypad_verify with NULL.
	(open_ccid_reader): Initialize keypad_verify.
	(open_rapdu_reader): Initialize keypad_verify with NULL.
	(apdu_open_reader): Initialize pcsc_control.

	* pcsc-wrapper.c (load_pcsc_driver): Initialize pcsc_control.
	(handle_control): New.
	(main): Handle the case 6 of handle_control.

	scd fixes on error.
	* scd/apdu.c (open_pcsc_reader_wrapped): Show error number.

	* scd/command.c (get_reader_slot): Return -1 on error.

	scd: Fix the changes of scd/command.c.
	* scd/command.c (do_reset): Assign slot after setting slot_table.

2012-06-25  Werner Koch  <wk@gnupg.org>

	scd: Fix resetting and closing of the reader.  (Backported by gniibe)
	* scd/command.c (update_card_removed): Do no act on an invalid VRDR.
	(do_reset): Ignore apdu_reset error codes for no and inactive card.
	Close the reader before setting the slot to -1.
	(update_reader_status_file): Notify the application before closing the
	reader.

	scd: Retry command SERIALNO for an inactive card.
	* scd/command.c (cmd_serialno): Retry once for an inactive card.

	Fix detection of card removal and insertion.
	* scd/apdu.c (apdu_connect): Return status codes for no card available
	and inactive card.
	* scd/command.c (TEST_CARD_REMOVAL): Also test for GPG_ERR_CARD_RESET.
	(open_card): Map apdu_connect status to GPG_ERR_CARD_RESET.

	Support the Cherry ST-2000 card reader.
	* scd/ccid-driver.c (SCM_SCR331, SCM_SCR331DI, SCM_SCR335)
	(SCM_SCR3320, SCM_SPR532, CHERRY_ST2000): New constants.
	(parse_ccid_descriptor): Use them.
	(scan_or_find_usb_device, ccid_transceive_secure): Handle Cherry
	ST-2000.  Suggested by Matthias-Christian Ott.

2012-06-25  NIIBE Yutaka  <gniibe@fsij.org>

	fix wLangId in ccid-driver.c.

2012-05-24  Werner Koch  <wk@gnupg.org>

	Add provisions to build with Libgcrypt 1.6.
	Replace gcry_md_start_debug by gcry_md_debug in all files.

	* agent/gpg-agent.c (fixed_gcry_pth_init): Use only if
	GCRY_THREAD_OPTION_VERSION is 0
	* scd/scdaemon.c (fixed_gcry_pth_init): Ditto.

	Print the hash algorithm in colon mode key listing.
	* g10/keylist.c (list_keyblock_colon): Print digest_algo.

2012-05-08  Werner Koch  <wk@gnupg.org>

	common: Remove generated files only during maintainer-clean.
	* common/Makefile.am (CLEANFILES): Rename to MAINTAINERCLEANFILES.

	Fix copyright years.
	* scripts/git-log-footer: Add more years; we actually published the
	first code in 1997.

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

	Cast second value of a ?: to void in estream.c.
	* common/estream.c (ESTREAM_MUTEX_LOCK): Cast pth_mutex_acquire result
	to void.  Some compilers choke on mixing void and int in an
	conditional operator.  Reported by Nelson H. F. Beebe.

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

	Release 2.0.19.

	Update zh_TW translation.

	Update config.{sub,guess} to version 2012-02-10.
	* scripts/config.guess, scripts/config.sub: Update.

	Update texinfo source from master.
	* doc/gpg-agent.texi, doc/gpg.texi, doc/gpgsm.texi
	* doc/scdaemon.texi,  doc/tools.texi: Update.
	* doc/yat2m.c: Update.

	Add target to update the texinfo files from master.
	* doc/Makefile.am (update-source): New.

2012-03-26  Werner Koch  <wk@gnupg.org>

	Fix make rules for audit-events.h et al.
	* common/Makefile.am (audit-events.h, status-codes.h): Fix target file
	name.

	Update samplekeys and NEWS.
	* doc/samplekeys.asc: Update.

	Allow compressed data with algorithm 0.
	* g10/mainproc.c (proc_compressed): Remove superfluous check for
	an algorithm number of 0.  This is bug#1326.

2012-02-01  David Shaw  <dshaw@jabberwocky.com>

	Honor --cert-digest-algo when recreating a cert.
	* g10/sign.c (update_keysig_packet): Honor --cert-digest-algo when
	  recreating a cert.

	This is used by various things in --edit-key like setpref, primary,
	etc.  Suggested by Christian Aistleitner.

2012-01-31  Werner Koch  <wk@gnupg.org>

	Update copyright year.

	Require an installed gitlog_to_changelog for make dist.
	* scripts/gitlog-to-changelog: Remove.
	* Makefile.am (GITLOG_TO_CHANGELOG): New.
	(gen-ChangeLog): Use it.  Add set -e.

	Add Ukrainian translation.
	* po/uk.po: New.
	* po/LINGUAS: Add uk.po.

	estream: Avoid printing leading zeroes by %p on 32 bit systems.
	* common/estream-printf.c (pr_pointer): Synchronize definition of
	AULONG with its use.

	gpg: Add a DECRYPTION_INFO status.
	* common/status.h (STATUS_DECRYPTION_INFO): New.
	* g10/encr-data.c: Include status.h.
	(decrypt_data): Emit STATUS_DECRYPTION_INFO line.

2012-01-20  Werner Koch  <wk@gnupg.org>

	Do not copy default merge commit log entries into the ChangeLog.
	* scripts/gitlog-to-changelog: Skip merge commits.

	Add files to .gitignore.

2012-01-20  David Shaw  <dshaw@jabberwocky.com>

	Changes to --min-cert-level should cause a trustdb rebuild (issue 1366)
	* g10/gpgv.c, g10/trustdb.c (read_trust_options): Add min_cert_level

	* g10/trustdb.c (check_trustdb_stale): Request a rebuild if
	  pending_check_trustdb is true (set when we detect a trustdb
	  parameter has changed).

	* g10/keylist.c (public_key_list): Use 'l' in the "tru" with-colons
	  listing for min_cert_level not matching.

	* g10/tdbio.c (tdbio_update_version_record, create_version_record,
	  tdbio_db_matches_options, tdbio_dump_record, tdbio_read_record,
	  tdbio_write_record): Add a byte for min_cert_level in the tdbio
	  version record.

2012-01-11  David Shaw  <dshaw@jabberwocky.com>

	Refresh sample keys.

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

	Terminate csh commands with a semicolon.
	Fixes bug#1386.

	* agent/gpg-agent.c (main): Terminate csh style output with a semicolon.
	* scd/scdaemon.c: Ditto.

2011-12-28  David Shaw  <dshaw@jabberwocky.com>

	Use the longest key ID available when talking to a HKP server.
	This is issue 1340.  Now that PKSD is dead, and SKS supports long key
	IDs, this is safe to do.  Patch from Daniel Kahn Gillmor
	<dkg@fifthhorseman.net>.

2011-12-15  David Shaw  <dshaw@jabberwocky.com>

	Merge fix for issue 1331 from 1.4.
	* photoid.c (generate_photo_id): Check for the JPEG magic numbers
	instead of JFIF since some programs generate an EXIF header first.

2011-12-02  Werner Koch  <wk@gnupg.org>

	Generate the ChangeLog from commit logs.
	* scripts/gitlog-to-changelog: New script.  Taken from gnulib.
	* scripts/git-log-fix: New file.
	* scripts/git-log-footer: New file.
	* scripts/git-hooks/commit-msg: New script.
	* autogen.sh: Install commit-msg hook for git.
	* doc/HACKING: Describe the ChangeLog policy.
	* ChangeLog: New file.
	* Makefile.am (EXTRA_DIST): Add new files.
	(gen-ChangeLog): New.
	(dist-hook): Run gen-ChangeLog.

	Rename all ChangeLog files to ChangeLog-2011.

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

	NB: Changes done before December 1st, 2011 are described in
	per directory files named ChangeLog-2011.  See doc/HACKING for
	details.

        -----
	Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
                      2005, 2006, 2007, 2008, 2009, 2010, 2011,
                      2012 Free Software Foundation, Inc.

	Copying and distribution of this file and/or the original GIT
	commit log messages, with or without modification, are
	permitted provided the copyright notice and this notice are
	preserved.
