osmith has uploaded this change for review.

View Change

src/bankd/bankd_pcsc: fix error on debian 13 i386

Fix for:

bankd_pcsc.c:316:98: error: passing argument 7 of 'SCardTransmit' from incompatible pointer type [-Wincompatible-pointer-types]
316 | rc = SCardTransmit(worker->reader.pcsc.hCard, pioSendPci, out, out_len, &pioRecvPci, in, in_len);
| ^~~~~~
| |
| size_t * {aka unsigned int *}
In file included from bankd.h:11,
from bankd_pcsc.c:28:
/usr/include/PCSC/winscard.h:98:56: note: expected 'LPDWORD' {aka 'long unsigned int *'} but argument is of type 'size_t *' {aka 'unsigned int *'}

Related: https://pcsclite.apdu.fr/api/group__API.html#ga9a2d77242a271310269065e64633ab99
Related: OS#6828
Change-Id: I4978cd9b91920fe6049ccb398a8d6b93deaa4980
---
M src/bankd/bankd_pcsc.c
1 file changed, 5 insertions(+), 1 deletion(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-remsim refs/changes/70/40870/1
diff --git a/src/bankd/bankd_pcsc.c b/src/bankd/bankd_pcsc.c
index e1477dd..f9651f3 100644
--- a/src/bankd/bankd_pcsc.c
+++ b/src/bankd/bankd_pcsc.c
@@ -313,11 +313,15 @@
SCARD_IO_REQUEST pioRecvPci;
long rc;

- rc = SCardTransmit(worker->reader.pcsc.hCard, pioSendPci, out, out_len, &pioRecvPci, in, in_len);
+ /* DWORD can be different from size_t */
+ DWORD in_len_d = *in_len;
+
+ rc = SCardTransmit(worker->reader.pcsc.hCard, pioSendPci, out, out_len, &pioRecvPci, in, &in_len_d);
/* don't use PCSC_ERROR here as we don't want to log every successful SCardTransmit */
if (rc != SCARD_S_SUCCESS)
LOGW_PCSC_ERROR(worker, rc, "SCardTransmit");

+ *in_len = in_len_d;
return rc;
}


To view, visit change 40870. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: osmo-remsim
Gerrit-Branch: master
Gerrit-Change-Id: I4978cd9b91920fe6049ccb398a8d6b93deaa4980
Gerrit-Change-Number: 40870
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith@sysmocom.de>