aboutsummaryrefslogtreecommitdiffstats
path: root/scd/app-common.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* scd: Introduce a virtual reader table.Werner Koch2011-12-131-1/+2
| | | | | | | | | | | | | | | | | | | | | The vreader table makes the code more clear by explicitly talking about APDU slots and reader indices. It also accommodates for future extensions. * scd/scdaemon.h (server_control_s): Remove READER_SLOT. * scd/scdaemon.c (scd_init_default_ctrl): Do not init READER_SLOT. * scd/app.c (check_application_conflict): Add arg SLOT. * scd/command.c (slot_status_s): Rename to vreader_s. (server_local_s): Add field VREADER_IDX as replacement for the READER_SLOT in server_control_s. Change all users. (slot_table): Rename to vreader_table. Change all users. (vreader_slot): New. (do_reset, cmd_apdu): Map vreader to apdu slot. (get_reader_slot): Rename to get_current_reader. Return -1 on error. (open_card): Map vreader toapdu slot. Pass slot to check_application_conflict. (scd_command_handler): Init VREADER_IDX. (update_reader_status_file): Reset SLOT field on error.
* Nuked almost all trailing white space.post-nuke-of-trailing-wsWerner Koch2011-02-041-7/+4
| | | | | | | | 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.
* More support for Netkey cards.Werner Koch2009-05-081-0/+1
| | | | | | Small changes to teh CCID driver. Support 2048 bit OpenPGP cards.
* Better syncronization of several smartcard sessions.Werner Koch2009-03-241-9/+13
|
* Add server option with-ephemeral-keys.Werner Koch2009-03-181-2/+3
| | | | | Extend SCD LEARN command.
* Fix a gpg2 problem with removed cards.Werner Koch2009-02-271-0/+1
| | | | | | Allow runtime conf change for scdaemon. New commands for scdaemon.
* Add a Geldkarte gadget application.Werner Koch2009-01-271-0/+3
| | | | | Minor other changes.
* Fixed the card removed with cached app bug. (Famous last fix).Werner Koch2008-11-031-9/+8
|
* Support the Certifciate DO of the v2 OpenPGP cards.Werner Koch2008-09-231-2/+12
|
* Add support for the TCOS NullPIN feature.Werner Koch2008-06-241-1/+5
|
* Fixed card key generation of gpg2.Werner Koch2007-07-051-6/+8
| | | | | Reveal less information about timings while generating a key.
* Changed to GPLv3.Werner Koch2007-07-041-4/+2
| | | | | Removed intl/.
* Updated FSF's address.Werner Koch2006-06-201-1/+2
|
* PIN caching of cards does now work.Werner Koch2006-02-091-0/+2
|
* * command.c (cmd_updatestartuptty): New.Werner Koch2005-06-031-0/+6
| | | | | | | | | | | | | | | | | | | | * gpg-agent.c: New option --write-env-file. * gpg-agent.c (handle_connections): Make sure that the signals we are handling are not blocked.Block signals while creating new threads. * estream.c: Use HAVE_CONFIG_H and not USE_CONFIG_H! (es_func_fd_read, es_func_fd_write): Protect against EINTR. * gpg-agent.texi (Agent UPDATESTARTUPTTY): New. * scdaemon.c (handle_connections): Make sure that the signals we are handling are not blocked.Block signals while creating new threads. (handle_connections): Include the file descriptor into the name of the thread.
* * agent.h (out_of_core): s/__inline__/inine. Noted by Ray Link.Werner Koch2005-05-311-1/+1
| | | | | | | | | | | * dynload.h: s/__inline__/inline/. * tlv.c [GNUPG_MAJOR_VERSION==1]: Define constants instead of including a gnupg 1.4 header. * watchgnupg.c: Make sure that PF_LCOAL and AF_LOCAL are defines. Noted by Ray Link.
* * Makefile.am: Do not build sc-copykeys anymore.Werner Koch2005-05-231-17/+0
| | | | | | * app-openpgp.c (app_openpgp_storekey, app_openpgp_readkey) (app_openpgp_cardinfo): Removed.
* * protect-tool.c: New option --canonical.Werner Koch2005-05-201-2/+26
| | | | | | | | | | | | | | | | | | | | | | | | (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.
* Changed the scdaemon to handle concurrent sessions. AdjustedWerner Koch2005-05-181-50/+51
| | | | | gpg-agent accordingly. Code cleanups.
* * configure.ac: Removed OpenSC detection and options.Werner Koch2005-04-271-1/+1
| | | | | | | | | | | | | | | | | | | * acinclude.m4: Ditto. * scdaemon.texi: Removed OpenSC specific options. * app-p15.c: New. Basic support for pkcs15 cards without OpenSC. There are quite a couple of things missing but at least I can use my old TCOS cards from the Aegypten-1 development for signing. * app.c (select_application): Detect pkcs15 applications. * Makefile.am (scdaemon_SOURCES): Removed card.c, card-common.h and card-p15.c because they are now obsolete. Added app-p15.c. Removed all OpenSC stuff. * command.c (do_reset, open_card, cmd_serialno, cmd_learn) (cmd_readcert, cmd_readkey, cmd_pksign, cmd_pkdecrypt): Removed all special cases for the old card.c based mechanisms. * scdaemon.c, apdu.c: Removed all special cases for OpenSC.
* * gpg-agent.c (handle_connections): Need to check for events ifWerner Koch2005-02-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | select returns with -1. * tools.texi (gpg-connect-agent): New. * app-openpgp.c (get_one_do): Never try to get a non cacheable object from the cache. (get_one_do): Add new arg to return an error code. Changed all callers. (do_getattr): Let it return a proper error code. * app.c (select_application): Return an error code and the application context in an new arg. * command.c (open_card): Adjusted for that. Don't use the fallback if no card is present. Return an error if the card has been removed without a reset. (do_reset, cmd_serialno): Clear that error flag. (TEST_CARD_REMOVAL): New. Use it with all command handlers. * scdaemon.c (ticker_thread): Termintate if a shutdown is pending. * apdu.c: Added some PCSC error codes. (pcsc_error_to_sw): New. (reset_pcsc_reader, pcsc_get_status, pcsc_send_apdu) (open_pcsc_reader): Do proper error code mapping. * gpg-connect-agent.c: New. * Makefile.am: Add it.
* * app-openpgp.c (app_local_s): New field PK.Werner Koch2005-02-221-1/+5
| | | | | | | | | | | (do_deinit, do_genkey, app_openpgp_storekey): Clear it. (get_public_key, send_keypair_info): New. (do_learn_status): Send KEYPAIR info * app-common.h (app_ctx_t): Add function pointer READKEY. * app.c (app_readkey): New. * command.c (cmd_readkey): Use READKEY function if possible.
* * app-openpgp.c (do_sign): Replace asprintf by direct allocation.Werner Koch2004-10-221-0/+7
| | | | | | | | This avoids problems with missing vasprintf implementations in gnupg 1.4. * app-common.h (app_openpgp_storekey: Add prototype.
* Added ID keywords because these files are often used in other packages.Werner Koch2004-10-141-0/+2
|
* * app.c (select_application): Fixed serial number extraction andWerner Koch2004-09-091-0/+4
| | | | | | | added the BMI card workaround. (app_munge_serialno): New. * app-openpgp.c (app_select_openpgp): Try munging serialno.
* * app-common.h: Do not include ksba.h for gnupg 1.Werner Koch2004-04-281-0/+2
|
* * app-common.h: New members FNC.DEINIT and APP_LOCAL.Werner Koch2004-04-261-1/+4
| | | | | | | | | | | | | | | * app.c (release_application): Call new deconstructor. * app-openpgp.c (do_deinit): New. (get_cached_data, flush_cache_item, flush_cache_after_error) (flush_cache): New. (get_one_do): Replaced arg SLOT by APP. Make used of cached data. (verify_chv2, verify_chv3): Flush some cache item after error. (do_change_pin): Ditto. (do_sign): Ditto. (do_setattr): Flush cache item. (do_genkey): Flush the entire cache. (compare_fingerprint): Use cached data.
* * app-dinsig.c: Implemented. Based on app-nks.c and card-dinsig.cWerner Koch2004-03-161-0/+7
| | | | | | | | | | | | | | * app-nks.c (get_length_of_cert): Removed. * app-help.c: New. (app_help_read_length_of_cert): New. Code taken from above. New optional arg R_CERTOFF. * card-dinsig.c: Removed. * card.c (card_get_serial_and_stamp): Do not bind to the old and never finsiged card-dinsig.c. * iso7816.c (iso7816_read_binary): Allow for an NMAX > 254.
* Some minor bug fixes, new test utilities and started support for otherWerner Koch2004-01-271-28/+42
| | | | | smartcard applications.
* * command.c (cmd_checkpin): New.Werner Koch2003-10-211-0/+6
| | | | | | | | | (register_commands): Add command CHECKPIN. * app.c (app_check_pin): New. * app-openpgp.c (check_against_given_fingerprint): New. Factored out that code elsewhere. (do_check_pin): New.
* Fixes to make inclusion of card raleted source files into 1.3 easier.Werner Koch2003-10-021-0/+6
|
* * command.c (cmd_getattr): New command GETATTR.Werner Koch2003-09-301-0/+3
| | | | | | | | | | | | | | | | * app.c (app_setattr): New. (do_getattr): New. (do_learn_status): Reimplemented in terms of do_getattr. * app-openpgp.c (do_change_pin): Make sure CVH1 and CHV2 are always synced. (verify_chv2, verify_chv3): New. Factored out common code. (do_setattr, do_sign, do_auth, do_decipher): Change the names of the prompts to match that we have only 2 different PINs. (app_select_openpgp): Check whether the card enforced CHV1. (convert_sig_counter_value): New. Factor out code from get_sig_counter.
* Cleanups, fixes and PC/SC supportWerner Koch2003-08-051-0/+1
|
* This commit was manufactured by cvs2svn to create branchRepo Admin2003-08-051-0/+128
'GNUPG-1-9-BRANCH'.