aboutsummaryrefslogtreecommitdiffstats
path: root/scd/apdu.h
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2004-04-20 14:17:10 +0000
committerWerner Koch <[email protected]>2004-04-20 14:17:10 +0000
commite950b01ff56c86d8e04b75a7bac4234afc939199 (patch)
treedf584bfcd6ea6348371a037e2983c393c3f02a0d /scd/apdu.h
parentInclude jnlib/types.h and remove our own (diff)
downloadgnupg-e950b01ff56c86d8e04b75a7bac4234afc939199.tar.gz
gnupg-e950b01ff56c86d8e04b75a7bac4234afc939199.zip
* pcsc-wrapper.c: New.
* Makefile.am (pkglib_PROGRAMS): Install it here. * apdu.c (writen, readn): New. (open_pcsc_reader, pcsc_send_apdu, close_pcsc_reader): Use the pcsc-wrapper if we are using Pth.
Diffstat (limited to 'scd/apdu.h')
-rw-r--r--scd/apdu.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/scd/apdu.h b/scd/apdu.h
index fd7634f13..f74bab7fe 100644
--- a/scd/apdu.h
+++ b/scd/apdu.h
@@ -48,9 +48,12 @@ enum {
those values can't be issued by a card. */
SW_HOST_OUT_OF_CORE = 0x10001, /* No way yet to differentiate
between errnos on a failed malloc. */
- SW_HOST_INV_VALUE = 0x10002,
+ SW_HOST_INV_VALUE = 0x10002,
SW_HOST_INCOMPLETE_CARD_RESPONSE = 0x10003,
- SW_HOST_NO_DRIVER = 0x10004
+ SW_HOST_NO_DRIVER = 0x10004,
+ SW_HOST_NOT_SUPPORTED = 0x10005,
+ SW_HOST_LOCKING_FAILED= 0x10006,
+ SW_HOST_BUSY = 0x10007
};
@@ -58,10 +61,14 @@ enum {
/* Note , that apdu_open_reader returns no status word but -1 on error. */
int apdu_open_reader (const char *portstr);
int apdu_close_reader (int slot);
+int apdu_enum_reader (int slot, int *used);
unsigned char *apdu_get_atr (int slot, size_t *atrlen);
/* The apdu send functions do return status words. */
+int apdu_reset (int slot);
+int apdu_get_status (int slot, int hang,
+ unsigned int *status, unsigned int *changed);
int apdu_send_simple (int slot, int class, int ins, int p0, int p1,
int lc, const char *data);
int apdu_send (int slot, int class, int ins, int p0, int p1,