aboutsummaryrefslogtreecommitdiffstats
path: root/scd/pcsc-wrapper.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--scd/pcsc-wrapper.c124
1 files changed, 62 insertions, 62 deletions
diff --git a/scd/pcsc-wrapper.c b/scd/pcsc-wrapper.c
index a7b219822..f2f6d52bc 100644
--- a/scd/pcsc-wrapper.c
+++ b/scd/pcsc-wrapper.c
@@ -27,7 +27,7 @@
pcsc interface but to a higher level one which resembles the code
used in scdaemon (apdu.c) when not using Pth or while running under
Windows.
-
+
The interface is binary consisting of a command tag and the length
of the parameter list. The calling process needs to pass the
version number of the interface on the command line to make sure
@@ -56,7 +56,7 @@
#define MYVERSION_LINE PGM " (GnuPG) " VERSION
#define BUGREPORT_LINE "\nReport bugs to <[email protected]>.\n"
#else
-#define MYVERSION_LINE PGM
+#define MYVERSION_LINE PGM
#define BUGREPORT_LINE ""
#endif
@@ -67,14 +67,14 @@ static int verbose;
/* PC/SC constants and function pointer. */
-#define PCSC_SCOPE_USER 0
-#define PCSC_SCOPE_TERMINAL 1
-#define PCSC_SCOPE_SYSTEM 2
-#define PCSC_SCOPE_GLOBAL 3
+#define PCSC_SCOPE_USER 0
+#define PCSC_SCOPE_TERMINAL 1
+#define PCSC_SCOPE_SYSTEM 2
+#define PCSC_SCOPE_GLOBAL 3
-#define PCSC_PROTOCOL_T0 1
-#define PCSC_PROTOCOL_T1 2
-#define PCSC_PROTOCOL_RAW 4
+#define PCSC_PROTOCOL_T0 1
+#define PCSC_PROTOCOL_T1 2
+#define PCSC_PROTOCOL_RAW 4
#define PCSC_SHARE_EXCLUSIVE 1
#define PCSC_SHARE_SHARED 2
@@ -85,7 +85,7 @@ static int verbose;
#define PCSC_UNPOWER_CARD 2
#define PCSC_EJECT_CARD 3
-#define PCSC_UNKNOWN 0x0001
+#define PCSC_UNKNOWN 0x0001
#define PCSC_ABSENT 0x0002 /* Card is absent. */
#define PCSC_PRESENT 0x0004 /* Card is present. */
#define PCSC_SWALLOWED 0x0008 /* Card is present and electrical connected. */
@@ -106,7 +106,7 @@ static int verbose;
#define PCSC_STATE_MUTE 0x0200 /* Unresponsive card. */
struct pcsc_io_request_s {
- unsigned long protocol;
+ unsigned long protocol;
unsigned long pci_len;
};
@@ -235,7 +235,7 @@ request_succeeded (const void *buffer, size_t buflen)
fflush (stdout);
}
-
+
static unsigned long
@@ -271,40 +271,40 @@ pcsc_error_string (long err)
{
case 0x0002: s = "cancelled"; break;
case 0x000e: s = "can't dispose"; break;
- case 0x0008: s = "insufficient buffer"; break;
+ case 0x0008: s = "insufficient buffer"; break;
case 0x0015: s = "invalid ATR"; break;
case 0x0003: s = "invalid handle"; break;
- case 0x0004: s = "invalid parameter"; break;
+ case 0x0004: s = "invalid parameter"; break;
case 0x0005: s = "invalid target"; break;
- case 0x0011: s = "invalid value"; break;
- case 0x0006: s = "no memory"; break;
- case 0x0013: s = "comm error"; break;
- case 0x0001: s = "internal error"; break;
- case 0x0014: s = "unknown error"; break;
- case 0x0007: s = "waited too long"; break;
+ case 0x0011: s = "invalid value"; break;
+ case 0x0006: s = "no memory"; break;
+ case 0x0013: s = "comm error"; break;
+ case 0x0001: s = "internal error"; break;
+ case 0x0014: s = "unknown error"; break;
+ case 0x0007: s = "waited too long"; break;
case 0x0009: s = "unknown reader"; break;
- case 0x000a: s = "timeout"; break;
- case 0x000b: s = "sharing violation"; break;
+ case 0x000a: s = "timeout"; break;
+ case 0x000b: s = "sharing violation"; break;
case 0x000c: s = "no smartcard"; break;
- case 0x000d: s = "unknown card"; break;
- case 0x000f: s = "proto mismatch"; break;
- case 0x0010: s = "not ready"; break;
- case 0x0012: s = "system cancelled"; break;
+ case 0x000d: s = "unknown card"; break;
+ case 0x000f: s = "proto mismatch"; break;
+ case 0x0010: s = "not ready"; break;
+ case 0x0012: s = "system cancelled"; break;
case 0x0016: s = "not transacted"; break;
- case 0x0017: s = "reader unavailable"; break;
- case 0x0065: s = "unsupported card"; break;
- case 0x0066: s = "unresponsive card"; break;
- case 0x0067: s = "unpowered card"; break;
- case 0x0068: s = "reset card"; break;
- case 0x0069: s = "removed card"; break;
- case 0x006a: s = "inserted card"; break;
- case 0x001f: s = "unsupported feature"; break;
- case 0x0019: s = "PCI too small"; break;
- case 0x001a: s = "reader unsupported"; break;
- case 0x001b: s = "duplicate reader"; break;
- case 0x001c: s = "card unsupported"; break;
- case 0x001d: s = "no service"; break;
- case 0x001e: s = "service stopped"; break;
+ case 0x0017: s = "reader unavailable"; break;
+ case 0x0065: s = "unsupported card"; break;
+ case 0x0066: s = "unresponsive card"; break;
+ case 0x0067: s = "unpowered card"; break;
+ case 0x0068: s = "reset card"; break;
+ case 0x0069: s = "removed card"; break;
+ case 0x006a: s = "inserted card"; break;
+ case 0x001f: s = "unsupported feature"; break;
+ case 0x0019: s = "PCI too small"; break;
+ case 0x001a: s = "reader unsupported"; break;
+ case 0x001b: s = "duplicate reader"; break;
+ case 0x001c: s = "card unsupported"; break;
+ case 0x001d: s = "no service"; break;
+ case 0x001e: s = "service stopped"; break;
default: s = "unknown PC/SC error code"; break;
}
return s;
@@ -337,16 +337,16 @@ load_pcsc_driver (const char *libname)
pcsc_set_timeout = dlsym (handle, "SCardSetTimeout");
if (!pcsc_establish_context
- || !pcsc_release_context
- || !pcsc_list_readers
+ || !pcsc_release_context
+ || !pcsc_list_readers
|| !pcsc_get_status_change
- || !pcsc_connect
- || !pcsc_reconnect
+ || !pcsc_connect
+ || !pcsc_reconnect
|| !pcsc_disconnect
|| !pcsc_status
|| !pcsc_begin_transaction
|| !pcsc_end_transaction
- || !pcsc_transmit
+ || !pcsc_transmit
/* || !pcsc_set_timeout */)
{
/* Note that set_timeout is currently not used and also not
@@ -355,22 +355,22 @@ load_pcsc_driver (const char *libname)
"apdu_open_reader: invalid PC/SC driver "
"(%d%d%d%d%d%d%d%d%d%d%d%d)\n",
!!pcsc_establish_context,
- !!pcsc_release_context,
- !!pcsc_list_readers,
- !!pcsc_get_status_change,
- !!pcsc_connect,
- !!pcsc_reconnect,
+ !!pcsc_release_context,
+ !!pcsc_list_readers,
+ !!pcsc_get_status_change,
+ !!pcsc_connect,
+ !!pcsc_reconnect,
!!pcsc_disconnect,
!!pcsc_status,
!!pcsc_begin_transaction,
!!pcsc_end_transaction,
- !!pcsc_transmit,
+ !!pcsc_transmit,
!!pcsc_set_timeout );
dlclose (handle);
exit (1);
}
}
-
+
@@ -409,7 +409,7 @@ handle_open (unsigned char *argbuf, size_t arglen)
request_failed (err);
return;
}
-
+
err = pcsc_list_readers (pcsc_context, NULL, NULL, &nreader);
if (!err)
{
@@ -477,8 +477,8 @@ handle_open (unsigned char *argbuf, size_t arglen)
pcsc_protocol = 0;
request_failed (err);
return;
- }
-
+ }
+
current_atrlen = 0;
if (!err)
{
@@ -658,9 +658,9 @@ handle_reset (unsigned char *argbuf, size_t arglen)
pcsc_card = 0;
request_failed (err);
return;
- }
+ }
+
-
atrlen = 33;
nreader = sizeof reader - 1;
err = pcsc_status (pcsc_card,
@@ -731,7 +731,7 @@ print_version (int with_help)
"This is free software, and you are welcome to redistribute it\n"
"under certain conditions. See the file COPYING for details.\n",
stdout);
-
+
if (with_help)
fputs ("\n"
"Usage: " PGM " [OPTIONS] API-NUMBER [LIBNAME]\n"
@@ -741,7 +741,7 @@ print_version (int with_help)
" --version print version of the program and exit\n"
" --help display this help and exit\n"
BUGREPORT_LINE, stdout );
-
+
exit (0);
}
@@ -752,7 +752,7 @@ main (int argc, char **argv)
int last_argc = -1;
int api_number = 0;
int c;
-
+
if (argc)
{
argc--; argv++;
@@ -774,7 +774,7 @@ main (int argc, char **argv)
verbose = 1;
argc--; argv++;
}
- }
+ }
if (argc != 1 && argc != 2)
{
fprintf (stderr, "usage: " PGM " API-NUMBER [LIBNAME]\n");
@@ -795,7 +795,7 @@ main (int argc, char **argv)
{
size_t arglen;
unsigned char argbuffer[2048];
-
+
arglen = read_32 (stdin);
if (arglen >= sizeof argbuffer - 1)
{