aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* scd: handle reader/token removal.scd-backport-2-0NIIBE Yutaka2012-06-241-0/+1
| | | | | * scd/apdu.c (pcsc_error_to_sw): PCSC_E_UNKNOWN_READER means SW_HOST_NO_READER.
* scd: Fix updating slot status.NIIBE Yutaka2012-06-221-1/+1
| | | | * scd/comman.c (do_reset): Let clear card_removed flag.
* scd: acquire lock in new_reader_slot.NIIBE Yutaka2012-06-181-1/+24
| | | | | | | | | | | | | | * 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. -- Fixes a test case of: No libpcsclite1 installed. Run gpg-agent Run command "gpg-connect-agent learn /bye" with no card/token Sometimes it fails: ERR 100663356 Not supported <SCD> While it should be always: ERR 100663404 Card error <SCD>
* scd: move lock_slot, trylock_slot, unlock_slot functions.NIIBE Yutaka2012-06-181-38/+38
| | | | | | | * scd/apdu.c (lock_slot, trylock_slot, unlock_slot): Move. -- This is for upcoming changes.
* Merge branch 'scd-backport-2-0' of git+ssh://playfair.gnupg.org/git/gnupg ↵NIIBE Yutaka2012-06-151-0/+7
|\ | | | | | | into scd-backport-2-0
| * Fix generated ChangeLog entry.Werner Koch2012-06-131-0/+7
| | | | | | | | | | -- Finally Jim's git-fix-log thingy comes handy.
* | scd: Fix merge mistake.NIIBE Yutaka2012-06-151-1/+5
| | | | | | | | * scd/iso7816.c (iso7816_reset_retry_counter): Implement.
* | scd: Prefer application Geldkarte over DINSIG.Werner Koch2012-06-151-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | * scd/app.c (select_application): Reorder application tests. -- Although the DINSIG application is available on most German cards, it is in reality not used. Thus showing the Geldkarte application is more desirable for a good user experience. Conflicts: scd/app.c
* | scd: Fix for card change returning GPG_ERR_CARD_RESET.Werner Koch2012-06-151-2/+1
| | | | | | | | | | | | | | | | | | * scd/apdu.c (apdu_connect): Do not test for zero atrlen. -- When gpg-agent prompts for insertion of a card this error would be returned. Co-authored-by: Ben Kibbey <[email protected]>
* | Merge ccid_driver_improvement branch. (backport)NIIBE Yutaka2012-06-152-32/+110
| | | | | | | | | | | | | | | | | | | | | | * 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.NIIBE Yutaka2012-06-151-4/+22
| | | | | | | | | | * scd/apdu.c (pcsc_keypad_verify): Add debug log and error log. (pcsc_keypad_modify): Likewise.
* | Fix pinpad input support for passphrase modification. (backport)NIIBE Yutaka2012-06-154-156/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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)NIIBE Yutaka2012-06-151-37/+98
| | | | | | | | | | * 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)NIIBE Yutaka2012-06-155-52/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.)NIIBE Yutaka2012-06-158-26/+426
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.NIIBE Yutaka2012-06-122-7/+9
| | | | | | * 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.cNIIBE Yutaka2012-06-081-1/+1
| | | | * scd/command.c (do_reset): Assign slot after setting slot_table.
* scd: Fix resetting and closing of the reader. (Backported by gniibe)Werner Koch2012-06-081-8/+17
| | | | | | | | | | | | | | * 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. -- With this change the scd now works as it did in the past. In particular there is no more endless loop trying to open the reader by the update_reader_status_file ticker function. That bug basically blocked all card operations until the scdaemon was killed.
* scd: Retry command SERIALNO for an inactive card.Werner Koch2012-06-081-1/+8
| | | | * scd/command.c (cmd_serialno): Retry once for an inactive card.
* Fix detection of card removal and insertion.Werner Koch2012-06-082-5/+18
| | | | | | | * 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.Werner Koch2012-06-082-12/+28
| | | | | | | | | | | | * 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. Conflicts: scd/ccid-driver.c
* fix wLangId in ccid-driver.cNIIBE Yutaka2012-06-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This is not a part of pin pad support series of mine. As I found the bug while I am preparing the patches, I report this. As CCID protocol is little endian, wLangId of US English = 0x0409 is represented as two bytes of 0x09 then 0x04. It is really confusing that the code like following is floating around: pin_verify -> wLangId = HOST_TO_CCID_16(0x0904); But, it is 0x0409 (not 0x0904). It is defined in the documentation: http://www.usb.org/developers/docs/USB_LANGIDs.pdf and origin of this table is Microsoft. We can see it at: http://msdn.microsoft.com/en-us/library/bb165625%28VS.80%29.aspx Yes, it would be better not to hard-code 0x0409. It would be better to try current locale of the user, or to use the first entry of string descriptor. I don't have time to implement such a thing...
* Add provisions to build with Libgcrypt 1.6.Werner Koch2012-05-2411-173/+179
| | | | | | | | | | | | | 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. -- Libgcrypt 1.6 will have some minor API changes. In particular some deprecated macros and functions will be removed. PTH will also be dropped in favor of a thread model neutral locking method.
* Print the hash algorithm in colon mode key listing.Werner Koch2012-05-243-11/+13
| | | | * g10/keylist.c (list_keyblock_colon): Print digest_algo.
* common: Remove generated files only during maintainer-clean.Werner Koch2012-05-081-1/+1
| | | | | | | | | * common/Makefile.am (CLEANFILES): Rename to MAINTAINERCLEANFILES. -- In general this is not required because automake does this for files in BUILT_SOURCES anyway. However, having them in CLEANFILES is wrong. This is bug#1398.
* Fix copyright years.Werner Koch2012-05-081-2/+3
| | | | | * scripts/git-log-footer: Add more years; we actually published the first code in 1997.
* Cast second value of a ?: to void in estream.c.Werner Koch2012-03-301-1/+1
| | | | | | * 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.
* Fix --with-pth-prefix help string.Werner Koch2012-03-301-4/+4
| | | | --
* Write the announce message.Werner Koch2012-03-271-27/+32
| | | | --
* Post release updatesWerner Koch2012-03-272-2/+6
| | | | --
* Release 2.0.19.gnupg-2.0.19Werner Koch2012-03-272-2/+2
|
* Update zh_TW translation.Werner Koch2012-03-271-8/+10
|
* Update config.{sub,guess} to version 2012-02-10.Werner Koch2012-03-272-34/+64
| | | | * scripts/config.guess, scripts/config.sub: Update.
* Update texinfo source from master.Werner Koch2012-03-276-765/+985
| | | | | | * 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.Werner Koch2012-03-271-0/+10
| | | | * doc/Makefile.am (update-source): New.
* Gettext triggered update of uk.po.Werner Koch2012-03-271-33/+27
| | | | --
* Fix make rules for audit-events.h et al.Werner Koch2012-03-261-2/+2
| | | | | * common/Makefile.am (audit-events.h, status-codes.h): Fix target file name.
* Update samplekeys and NEWS.Werner Koch2012-03-262-422/+927
| | | | * doc/samplekeys.asc: Update.
* Allow compressed data with algorithm 0.Werner Koch2012-03-261-36/+34
| | | | | * g10/mainproc.c (proc_compressed): Remove superfluous check for an algorithm number of 0. This is bug#1326.
* Typo fixes in de.po.Werner Koch2012-03-261-4/+4
| | | | | -- This is bug#1276 and http://bugs.debian.org/594343
* Honor --cert-digest-algo when recreating a cert.David Shaw2012-02-011-2/+7
| | | | | | | | * 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.
* Update copyright year.Werner Koch2012-01-315-89/+91
|
* Require an installed gitlog_to_changelog for make dist.Werner Koch2012-01-312-354/+4
| | | | | | * scripts/gitlog-to-changelog: Remove. * Makefile.am (GITLOG_TO_CHANGELOG): New. (gen-ChangeLog): Use it. Add set -e.
* Add Ukrainian translation.Werner Koch2012-01-314-6/+6754
| | | | | * po/uk.po: New. * po/LINGUAS: Add uk.po.
* Update NEWS for the next release.Werner Koch2012-01-311-0/+8
| | | | --
* estream: Avoid printing leading zeroes by %p on 32 bit systems.Werner Koch2012-01-311-1/+1
| | | | | * common/estream-printf.c (pr_pointer): Synchronize definition of AULONG with its use.
* gpg: Add a DECRYPTION_INFO status.Werner Koch2012-01-313-44/+60
| | | | | | | | | | | | * common/status.h (STATUS_DECRYPTION_INFO): New. * g10/encr-data.c: Include status.h. (decrypt_data): Emit STATUS_DECRYPTION_INFO line. -- DECRYPTION_INFO <mdc_method> <sym_algo> Print information about the symmetric encryption algorithm and the MDC method. This will be emitted even if the decryption fails.
* Do not copy default merge commit log entries into the ChangeLog.Werner Koch2012-01-201-1/+7
| | | | * scripts/gitlog-to-changelog: Skip merge commits.
* Add files to .gitignoreWerner Koch2012-01-201-0/+2
|
* Changes to --min-cert-level should cause a trustdb rebuild (issue 1366)David Shaw2012-01-206-18/+34
| | | | | | | | | | | | | | | | * 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.