[Pcsclite-cvs-commit] r6312 - /trunk/PCSC/src/ifdwrapper.c

rousseau at users.alioth.debian.org rousseau at users.alioth.debian.org
Mon May 28 12:26:55 UTC 2012


Author: rousseau
Date: Mon May 28 12:26:55 2012
New Revision: 6312

URL: http://svn.debian.org/wsvn/pcsclite/?sc=1&rev=6312
Log:
IFDPowerICC(): check the value returned by IFDStatusICC()

The reader may be gone at this step.
See http://archives.neohapsis.com/archives/dev/muscle/2012-q2/0041.html

Modified:
    trunk/PCSC/src/ifdwrapper.c

Modified: trunk/PCSC/src/ifdwrapper.c
URL: http://svn.debian.org/wsvn/pcsclite/trunk/PCSC/src/ifdwrapper.c?rev=6312&op=diff
==============================================================================
--- trunk/PCSC/src/ifdwrapper.c (original)
+++ trunk/PCSC/src/ifdwrapper.c Mon May 28 12:26:55 2012
@@ -266,7 +266,14 @@
 	/*
 	 * Check that the card is inserted first
 	 */
-	(void)IFDStatusICC(rContext, &dwStatus);
+	rv = IFDStatusICC(rContext, &dwStatus);
+	if (rv != IFD_SUCCESS)
+	{
+		if (rv == IFD_NO_SUCH_DEVICE)
+			return SCARD_E_READER_UNAVAILABLE;
+
+		return SCARD_E_NOT_TRANSACTED;
+	}
 
 	if (dwStatus & SCARD_ABSENT)
 		return SCARD_W_REMOVED_CARD;




More information about the Pcsclite-cvs-commit mailing list