]>
git.zerfleddert.de Git - proxmark3-svn/blob - client/mifare/mifare4.h
1 //-----------------------------------------------------------------------------
2 // Copyright (C) 2018 Merlok
3 // Copyright (C) 2018 drHatson
5 // This code is licensed to you under the terms of the GNU GPL, version 2 or,
6 // at your option, any later version. See the LICENSE.txt file for the text of
8 //-----------------------------------------------------------------------------
9 // iso14443-4 mifare commands
10 //-----------------------------------------------------------------------------
46 extern void mfpSetVerboseMode(bool verbose
);
47 extern const char *mfpGetErrorDescription(uint8_t errorCode
);
49 extern int CalculateMAC(mf4Session
*session
, MACType_t mtype
, uint8_t blockNum
, uint8_t blockCount
, uint8_t *data
, int datalen
, uint8_t *mac
, bool verbose
);
50 extern int MifareAuth4(mf4Session
*session
, uint8_t *keyn
, uint8_t *key
, bool activateField
, bool leaveSignalON
, bool verbose
);
52 extern int MFPWritePerso(uint8_t *keyNum
, uint8_t *key
, bool activateField
, bool leaveSignalON
, uint8_t *dataout
, int maxdataoutlen
, int *dataoutlen
);
53 extern int MFPCommitPerso(bool activateField
, bool leaveSignalON
, uint8_t *dataout
, int maxdataoutlen
, int *dataoutlen
);
54 extern int MFPReadBlock(mf4Session
*session
, bool plain
, uint8_t blockNum
, uint8_t blockCount
, bool activateField
, bool leaveSignalON
, uint8_t *dataout
, int maxdataoutlen
, int *dataoutlen
, uint8_t *mac
);
55 extern int MFPWriteBlock(mf4Session
*session
, uint8_t blockNum
, uint8_t *data
, bool activateField
, bool leaveSignalON
, uint8_t *dataout
, int maxdataoutlen
, int *dataoutlen
, uint8_t *mac
);
56 extern int mfpReadSector(uint8_t sectorNo
, uint8_t keyType
, uint8_t *key
, uint8_t *dataout
, bool verbose
);
58 extern char *mfGetAccessConditionsDesc(uint8_t blockn
, uint8_t *data
);
60 extern uint8_t mfNumBlocksPerSector(uint8_t sectorNo
);
61 extern uint8_t mfFirstBlockOfSector(uint8_t sectorNo
);
62 extern uint8_t mfSectorTrailer(uint8_t blockNo
);
63 extern bool mfIsSectorTrailer(uint8_t blockNo
);
64 extern uint8_t mfSectorNum(uint8_t blockNo
);