--- src/lsnfc.c (revision 1072) +++ src/lsnfc.c (working copy) @@ -88,7 +88,8 @@ }; if((res = nfc_initiator_select_passive_target(pnd, nm, nai.abtUid, nai.szUidLen, NULL)) >= 0 ) { nfc_device_set_property_bool (pnd, NP_EASY_FRAMING, false); - if ((res = nfc_initiator_transceive_bytes(pnd, abtCmd,sizeof(abtCmd), abtRx, sizeof(abtRx), 0)) >= 0) { + szRxLen = sizeof(abtRx); + if ((res = nfc_initiator_transceive_bytes(pnd, abtCmd,sizeof(abtCmd), abtRx, &szRxLen, 0)) >= 0) { // AUTH step1 command success, so it's a Ultralight C nfc_device_set_property_bool (pnd, NP_EASY_FRAMING, true); nfc_initiator_deselect_target(pnd); @@ -126,12 +127,14 @@ .nbr = NBR_106 }; if((nfcRes = nfc_initiator_select_passive_target(pnd, nm, nai.abtUid, nai.szUidLen, NULL)) >= 0 ) { - if ((nfcRes = nfc_initiator_transceive_bytes(pnd, abtCmd, sizeof(abtCmd), abtRx, sizeof(abtRx), 0)) >= 0) { + szRxLen = sizeof(abtRx); + if ((nfcRes = nfc_initiator_transceive_bytes(pnd, abtCmd, sizeof(abtCmd), abtRx, &szRxLen, 0)) >= 0) { // MIFARE DESFire GetVersion command success, decoding... if( nfcRes == 8 ) { // GetVersion should reply 8 bytes memcpy( abtDESFireVersion, abtRx + 1, 7 ); abtCmd[0] = 0xAF; // ask for GetVersion next bytes - if ((nfcRes = nfc_initiator_transceive_bytes(pnd, abtCmd, sizeof(abtCmd), abtRx, sizeof(abtRx), 0)) >= 0) { + szRxLen = sizeof(abtRx); + if ((nfcRes = nfc_initiator_transceive_bytes(pnd, abtCmd, sizeof(abtCmd), abtRx, &szRxLen, 0)) >= 0) { if( nfcRes == 8 ) { // GetVersion should reply 8 bytes memcpy( abtDESFireVersion + 7, abtRx + 1, 7 ); res = malloc(16); // We can alloc res: we will be able to provide information