[Pcsclite-cvs-commit] r5812 - /trunk/PCSC/src/winscard.c
rousseau at users.alioth.debian.org
rousseau at users.alioth.debian.org
Tue Jun 28 19:26:23 UTC 2011
Author: rousseau
Date: Tue Jun 28 19:26:22 2011
New Revision: 5812
URL: http://svn.debian.org/wsvn/pcsclite/?sc=1&rev=5812
Log:
SCardConnect(), SCardReconnect(): use ATRDecodeAtr() directly instead of
PHGetDefaultProtocol() and PHGetAvailableProtocols()
Modified:
trunk/PCSC/src/winscard.c
Modified: trunk/PCSC/src/winscard.c
URL: http://svn.debian.org/wsvn/pcsclite/trunk/PCSC/src/winscard.c?rev=5812&op=diff
==============================================================================
--- trunk/PCSC/src/winscard.c (original)
+++ trunk/PCSC/src/winscard.c Tue Jun 28 19:26:22 2011
@@ -348,23 +348,19 @@
/* the protocol is not yet set (no PPS yet) */
if (SCARD_PROTOCOL_UNDEFINED == rContext->readerState->cardProtocol)
{
- UCHAR ucAvailable, ucDefault;
+ int availableProtocols, defaultProtocol;
int ret;
- ucDefault = PHGetDefaultProtocol(rContext->readerState->cardAtr,
+ ATRDecodeAtr(&availableProtocols, &defaultProtocol,
+ rContext->readerState->cardAtr,
rContext->readerState->cardAtrLength);
- ucAvailable =
- PHGetAvailableProtocols(rContext->readerState->cardAtr,
- rContext->readerState->cardAtrLength);
-
- /*
- * If it is set to ANY let it do any of the protocols
- */
+
+ /* If it is set to ANY let it do any of the protocols */
if (dwPreferredProtocols & SCARD_PROTOCOL_ANY_OLD)
dwPreferredProtocols = SCARD_PROTOCOL_T0 | SCARD_PROTOCOL_T1;
ret = PHSetProtocol(rContext, dwPreferredProtocols,
- ucAvailable, ucDefault);
+ availableProtocols, defaultProtocol);
/* keep cardProtocol = SCARD_PROTOCOL_UNDEFINED in case of error */
if (SET_PROTOCOL_PPS_FAILED == ret)
@@ -635,21 +631,19 @@
/* the protocol is not yet set (no PPS yet) */
if (SCARD_PROTOCOL_UNDEFINED == rContext->readerState->cardProtocol)
{
- UCHAR ucAvailable, ucDefault;
+ int availableProtocols, defaultProtocol;
int ret;
- ucDefault = PHGetDefaultProtocol(rContext->readerState->cardAtr,
+ ATRDecodeAtr(&availableProtocols, &defaultProtocol,
+ rContext->readerState->cardAtr,
rContext->readerState->cardAtrLength);
- ucAvailable =
- PHGetAvailableProtocols(rContext->readerState->cardAtr,
- rContext->readerState->cardAtrLength);
/* If it is set to ANY let it do any of the protocols */
if (dwPreferredProtocols & SCARD_PROTOCOL_ANY_OLD)
dwPreferredProtocols = SCARD_PROTOCOL_T0 | SCARD_PROTOCOL_T1;
ret = PHSetProtocol(rContext, dwPreferredProtocols,
- ucAvailable, ucDefault);
+ availableProtocols, defaultProtocol);
/* keep cardProtocol = SCARD_PROTOCOL_UNDEFINED in case of error */
if (SET_PROTOCOL_PPS_FAILED == ret)
More information about the Pcsclite-cvs-commit
mailing list