diff options
Diffstat (limited to 'src/sim/reader_pcsc.c')
-rw-r--r-- | src/sim/reader_pcsc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/sim/reader_pcsc.c b/src/sim/reader_pcsc.c index c5b8112b..5e670912 100644 --- a/src/sim/reader_pcsc.c +++ b/src/sim/reader_pcsc.c @@ -97,13 +97,17 @@ end: return NULL; } -static struct osim_card_hdl *pcsc_card_open(struct osim_reader_hdl *rh) +static struct osim_card_hdl *pcsc_card_open(struct osim_reader_hdl *rh, + enum osim_proto proto) { struct pcsc_reader_state *st = rh->priv; struct osim_card_hdl *card; struct osim_chan_hdl *chan; LONG rc; + if (proto != OSIM_PROTO_T0) + return NULL; + rc = SCardConnect(st->hContext, st->name, SCARD_SHARE_SHARED, SCARD_PROTOCOL_T0, &st->hCard, &st->dwActiveProtocol); PCSC_ERROR(rc, "SCardConnect"); |