aboutsummaryrefslogtreecommitdiffstats
path: root/scd/ccid-driver.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-06-05Change all quotes in strings and comments to the new GNU standard.Werner Koch1-4/+2
The asymmetric quotes used by GNU in the past (`...') don't render nicely on modern systems. We now use two \x27 characters ('...'). The proper solution would be to use the correct Unicode symmetric quotes here. However this has the disadvantage that the system requires Unicode support. We don't want that today. If Unicode is available a generated po file can be used to output proper quotes. A simple sed script like the one used for en@quote is sufficient to change them. The changes have been done by applying sed -i "s/\`\([^'\`]*\)'/'\1'/g" to most files and fixing obvious problems by hand. The msgid strings in the po files were fixed with a similar command.
2012-01-25Port to npth.Marcus Brinkmann1-4/+4
* configure.ac: Don't check for PTH but for NPTH. (AH_BOTTOM): Remove PTH_SYSCALL_SOFT. (have_pth): Rename to ... (have_npth): ... this. (USE_GNU_NPTH): Rename to ... (USE_GNU_PTH): ... this. * m4/npth.m4: New file. * agent/Makefile.am, agent/cache.c, agent/call-pinentry.c, agent/call-scd.c, agent/findkey.c, agent/gpg-agent.c, agent/trustlist.c, common/Makefile.am, common/estream.c, common/exechelp-posix.c, common/exechelp-w32.c, common/exechelp-w32ce.c, common/http.c, common/init.c, common/sysutils.c, dirmngr/Makefile.am, dirmngr/crlfetch.c, dirmngr/dirmngr.c, dirmngr/dirmngr_ldap.c, dirmngr/ldap-wrapper-ce.c, dirmngr/ldap-wrapper.c, dirmngr/ldap.c, g13/Makefile.am, g13/call-gpg.c, g13/g13.c, g13/runner.c, scd/Makefile.am, scd/apdu.c, scd/app.c, scd/ccid-driver.c, scd/command.c, scd/scdaemon.c, tools/Makefile.am: Port to npth.
2012-01-06Merge ccid_driver_improvement branch.NIIBE Yutaka1-26/+104
* 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.
2011-12-02Support the Cherry ST-2000 card reader.Werner Koch1-10/+24
* 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.
2011-03-02fix wLangId in ccid-driver.cNIIBE Yutaka1-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...
2011-02-04Nuked almost all trailing white space.post-nuke-of-trailing-wsWerner Koch1-137/+137
We better do this once and for all instead of cluttering all future commits with diffs of trailing white spaces. In the majority of cases blank or single lines are affected and thus this change won't disturb a git blame too much. For future commits the pre-commit scripts checks that this won't happen again.
2011-01-05Support the gnuk token pinpad code.Werner Koch1-1/+3
2010-10-01Exporting secret keys via gpg-agent is now basically supported.Werner Koch1-6/+7
A couple of forward ported changes. Doc updates.
2010-01-08Add dummu option --passwd for gpg.Werner Koch1-2/+2
Collected changes.
2009-07-292009-07-29 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-1/+1
* ccid-driver.c (print_pr_data): Fix 64 bit compat problem.
2009-07-24Workaround for SCR3320Werner Koch1-0/+6
2009-07-21Make bug reporting address easier changeable.Werner Koch1-8/+31
2009-07-16Add code to better handle unplugging of a reader.Werner Koch1-9/+36
2009-07-13* ccid-driver.c (struct ccid_driver_s): Add fields last_progress,Werner Koch1-0/+38
progress_cb and progress_cb_arg. (ccid_set_progress_cb): New. (print_progress): New. (ccid_transceive): Call print_progress for wait time extensions. * apdu.c (struct reader_table_s): Add field set_progress_cb. (new_reader_slot): Clear that field. (open_ccid_reader): Set it to .. (set_progress_cb_ccid_reader): ... new fucntion. * app.c (print_progress_line): New. (lock_reader): Add arg CTRL to set a progress callback and change all callers to provide it. (unlock_reader): Remove the progress callback.
2009-07-01Add comment about Cherry.Werner Koch1-2/+6
2009-06-30OOps commited an old version. Fixed now.Werner Koch1-2/+2
2009-06-30small fix for Omnikey. Works with CM4040 now.Werner Koch1-0/+2
2009-06-29Make soem omnikey readers work with extended length APDUs.Werner Koch1-57/+139
2009-05-13Improved smartcard robustness.Werner Koch1-21/+15
2009-05-08More support for Netkey cards.Werner Koch1-31/+62
Small changes to teh CCID driver. Support 2048 bit OpenPGP cards.
2009-03-30Implement decryption for TCOS 3 cards.Werner Koch1-15/+35
2009-02-25Fixed a nasty bug in scdaemon which led to a card reset if the card wasWerner Koch1-1/+1
inserted during scdaemon startup and a connection was made before the ticker had a chance to run. Add some stuff for better debugging.
2009-02-24Better debug output.Werner Koch1-85/+420
2008-12-18Fixed some card related problems.Werner Koch1-3/+119
2008-11-03Fixed the card removed with cached app bug. (Famous last fix).Werner Koch1-1/+2
2008-10-20Marked all unused args on non-W32 platforms.Werner Koch1-1/+1
2008-09-23Untested fix for TPDU level exchange of large data (command chaining)Werner Koch1-4/+8
2008-09-23Support the Certifciate DO of the v2 OpenPGP cards.Werner Koch1-2/+5
2008-04-18Adjust for the changed Camellia draft.Werner Koch1-1/+1
W32 gettext changes. Comment and typo fixes.
2007-07-04Changed to GPLv3.Werner Koch1-4/+2
Removed intl/.
2007-04-03Add a way to get a listing of available CCID readers.Werner Koch1-4/+13
2007-03-07The Cherry XX44 keyboard's PINpad does now work.Werner Koch1-18/+29
DINSIG and NKS card applications are now also PIN pad aware.
2007-01-31Included LIBICONV in all Makefiles.Werner Koch1-3/+6
g10/ * passphrase.c (passphrase_get): Set the cancel flag on all error from the agent. Fixes a bug reported by Tom Duerbusch. sm/ * gpgsm.c (main): Let --gen-key print a more informative error message.
2006-11-20Made some PIN pads work.Werner Koch1-24/+49
Some cleanups for 64 bit CPUs.
2006-03-01Fixed card removal problemsWerner Koch1-4/+17
2006-02-08Fixed a couple of problems with omnikey based readersWerner Koch1-20/+59
2006-02-06.Werner Koch1-1/+1
2006-02-06Support for CardMan 4040Werner Koch1-229/+488
2005-11-28Preparing an interim releaseWerner Koch1-10/+54
2005-09-09Bug fixes and ssh support for the BELPIC.Werner Koch1-1/+2
2005-06-16gcc-4 defaults forced me to edit many many files to get rid of theWerner Koch1-7/+7
char * vs. unsigned char * warnings. The GNU coding standards used to say that these mismatches are okay and better than a bunch of casts. Obviously this has changed now.
2005-05-23(parse_ccid_descriptor): SCR335 FW version 5.14 isWerner Koch1-22/+105
good. (do_close_reader): Never do a reset. The caller should instead make sure that the reader has been closed properly. The new retry code in ccid_slot_status will make sure that the readersatrts up fine even if the last process didn't closed the USB connection properly. (ccid_get_atr): For certain readers try switching to ISO mode. Thanks to Ludovic Rousseau for this hint and the magic numbers. (print_command_failed): New. (bulk_in): Use it here. Add new arg NO_DEBUG.
2005-05-20* protect-tool.c: New option --canonical.Werner Koch1-48/+56
(show_file): Implement it. * keyformat.txt: Define the created-at attribute for keys. * ccid-driver.c: Replaced macro DEBUG_T1 by a new debug level. (parse_ccid_descriptor): Mark SCR335 firmware version 5.18 good. (ccid_transceive): Arghhh. The seqno is another bit in the R-block than in the I block, this was wrong at one place. * scdaemon.c: New options --debug-ccid-driver and --debug-disable-ticker. * app-openpgp.c (do_genkey, do_writekey): Factored code to check for existing key out into .. (does_key_exist): .. New function. * gpg-connect-agent.c (add_definq, show_definq, clear_definq) (handle_inquire): New. (read_and_print_response): Handle INQUIRE command. (main): Implement control commands.
2005-05-18Changed the scdaemon to handle concurrent sessions. AdjustedWerner Koch1-4/+5
gpg-agent accordingly. Code cleanups.
2005-04-21* configure.ac: Do not build gpg by default.Werner Koch1-1/+1
* gpgsm.c: New options --{enable,disable}-trusted-cert-crl-check. * certchain.c (gpgsm_validate_chain): Make use of it. * certchain.c (gpgsm_validate_chain): Check revocations even for expired certificates. This is required because on signature verification an expired key is fine whereas a revoked one is not. * gpgconf-comp.c: Add gpgsm option disable-trusted-cert-crl-check.
2005-04-11* app-openpgp.c (do_check_pin): Add hack to allow verification ofWerner Koch1-27/+62
CHV3. (get_public_key): Don't use gcry functions to create S-expressions. (do_deinit, do_readkey, do_genkey, send_keypair_info): Adjust for above change.
2005-02-03Forgot to commit the recent fixed to scd and logging - doing it nowWerner Koch1-2/+2
2005-01-13* acinclude.m4 (GNUPG_PTH_VERSION_CHECK): Link a simple testV1-9-15Werner Koch1-5/+18
program to see whether the installation is sane. * certreqgen.c (proc_parameters): Cast printf arg.
2004-12-28(find_endpoint): New.Werner Koch1-21/+159
(scan_or_find_devices): Add new args to return endpoint info and interface number. (ccid_open_reader, ccid_shutdown_reader): Take care of these new args. (bulk_in, bulk_out): Use the correct endpoints. (ccid_transceive_apdu_level): New. (ccid_transceive): Divert to above. (parse_ccid_descriptor): Allow APDU level exchange mode.
2004-10-20* sc-investigate: Removed.Werner Koch1-0/+2
* Makefile.am (sc_investigate): Removed. * pcsc-wrapper.c (load_pcsc_driver): Load get_status_change func. (handle_open): Succeed even without a present card. (handle_status, handle_reset): New. * apdu.c (apdu_open_reader): Load pcsc_get_status_change fucntion. (pcsc_get_status): Implemented. (reset_pcsc_reader): Implemented. (open_pcsc_reader): Succeed even with no card inserted. (open_ccid_reader): Set LAST_STATUS. * iso7816.c (iso7816_select_application): Always use 0 for P1.