DesfireCommitReaderID command

This commit is contained in:
merlokk 2021-08-12 18:07:15 +03:00
commit 66d3aa52e3
2 changed files with 8 additions and 0 deletions

View file

@ -1834,6 +1834,13 @@ int DesfireClearRecordFile(DesfireContext *dctx, uint8_t fnum) {
return DesfireCommandTxData(dctx, MFDES_CLEAR_RECORD_FILE, &fnum, 1); return DesfireCommandTxData(dctx, MFDES_CLEAR_RECORD_FILE, &fnum, 1);
} }
int DesfireCommitReaderID(DesfireContext *dctx, uint8_t *readerid, size_t readeridlen, uint8_t *resp, size_t *resplen) {
uint8_t rid[16] = {0};
// command use 16b reader id only
memcpy(rid, readerid, MIN(readeridlen, 16));
return DesfireCommand(dctx, MFDES_COMMIT_READER_ID, rid, 16, resp, resplen, -1);
}
int DesfireCommitTransaction(DesfireContext *dctx, bool enable_options, uint8_t options) { int DesfireCommitTransaction(DesfireContext *dctx, bool enable_options, uint8_t options) {
if (enable_options) if (enable_options)
return DesfireCommandTxData(dctx, MFDES_COMMIT_TRANSACTION, &options, 1); return DesfireCommandTxData(dctx, MFDES_COMMIT_TRANSACTION, &options, 1);

View file

@ -229,6 +229,7 @@ void DesfirePrintCreateFileSettings(uint8_t filetype, uint8_t *data, size_t len)
const char *GetDesfireFileType(uint8_t type); const char *GetDesfireFileType(uint8_t type);
int DesfireCreateFile(DesfireContext *dctx, uint8_t ftype, uint8_t *fdata, size_t fdatalen, bool checklen); int DesfireCreateFile(DesfireContext *dctx, uint8_t ftype, uint8_t *fdata, size_t fdatalen, bool checklen);
int DesfireDeleteFile(DesfireContext *dctx, uint8_t fnum); int DesfireDeleteFile(DesfireContext *dctx, uint8_t fnum);
int DesfireCommitReaderID(DesfireContext *dctx, uint8_t *readerid, size_t readeridlen, uint8_t *resp, size_t *resplen);
int DesfireCommitTransaction(DesfireContext *dctx, bool enable_options, uint8_t options); int DesfireCommitTransaction(DesfireContext *dctx, bool enable_options, uint8_t options);
int DesfireAbortTransaction(DesfireContext *dctx); int DesfireAbortTransaction(DesfireContext *dctx);