[Pcsclite-cvs-commit] r2542 - trunk/PCSC/src
rousseau at alioth.debian.org
rousseau at alioth.debian.org
Wed May 23 08:15:36 UTC 2007
Author: rousseau
Date: 2007-05-23 08:15:36 +0000 (Wed, 23 May 2007)
New Revision: 2542
Modified:
trunk/PCSC/src/winscard_clnt.c
Log:
SCardTransmit(): adjust size of data to send to pcscd.
Avoid a valgrind warnings.
Modified: trunk/PCSC/src/winscard_clnt.c
===================================================================
--- trunk/PCSC/src/winscard_clnt.c 2007-05-23 07:34:42 UTC (rev 2541)
+++ trunk/PCSC/src/winscard_clnt.c 2007-05-23 08:15:36 UTC (rev 2542)
@@ -2739,7 +2739,13 @@
scTransmitStructExtended->hCard = hCard;
scTransmitStructExtended->cbSendLength = cbSendLength;
scTransmitStructExtended->pcbRecvLength = *pcbRecvLength;
- scTransmitStructExtended->size = sizeof(*scTransmitStructExtended) + cbSendLength;
+ /* The size of data to send is the size of
+ * struct control_struct_extended WITHOUT the data[] field
+ * plus the effective data[] size
+ */
+ scTransmitStructExtended->size = sizeof(*scTransmitStructExtended)
+ - (sizeof(transmit_struct_extended) - offsetof(transmit_struct_extended, data))
+ + cbSendLength;
memcpy(&scTransmitStructExtended->pioSendPci, pioSendPci,
sizeof(SCARD_IO_REQUEST));
memcpy(scTransmitStructExtended->data, pbSendBuffer, cbSendLength);
More information about the Pcsclite-cvs-commit
mailing list