diff options
Diffstat (limited to '')
-rw-r--r-- | scd/apdu.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/scd/apdu.c b/scd/apdu.c index f59d832d4..5a5f18b43 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -1328,6 +1328,14 @@ open_pcsc_reader (const char *portstr) int err; unsigned int dummy_status; int sw = SW_HOST_CARD_IO_ERROR; + const char *wrapperpgm = GNUPG_LIBDIR "/pcsc-wrapper"; + + if (access (wrapperpgm, X_OK)) + { + log_error ("can't run PC/SC access module `%s': %s\n", + wrapperpgm, strerror (errno)); + return -1; + } slot = new_reader_slot (); if (slot == -1) @@ -1400,7 +1408,7 @@ open_pcsc_reader (const char *portstr) close(i); errno = 0; - execl (GNUPG_LIBDIR "/pcsc-wrapper", + execl (wrapperpgm, "pcsc-wrapper", "--", "1", /* API version */ |