create mad.c/h

This commit is contained in:
merlokk 2019-02-21 19:34:12 +02:00
parent 3b21b17509
commit db7580203b
4 changed files with 61 additions and 2 deletions

View file

@ -157,6 +157,7 @@ CMDSRCS = crapto1/crapto1.c \
emv/cmdemv.c \
emv/emv_roca.c \
mifare/mifare4.c \
mifare/mad.c \
cmdanalyse.c \
cmdhf.c \
cmdhflist.c \

View file

@ -10,6 +10,7 @@
#include "cmdhfmf.h"
#include "mifare/mifare4.h"
#include "mifare/mad.h"
#define MIFARE_4K_MAXBLOCK 256
#define MIFARE_2K_MAXBLOCK 128
@ -3225,7 +3226,7 @@ int CmdHF14AMfMAD(const char *cmd) {
for(int i = 0; i < 4; i ++)
PrintAndLogEx(NORMAL, "[%d] %s", i, sprint_hex(&sector[i * 16], 16));
}
/*
bool haveMAD2 = false;
MAD1DecodeAndPrint(sector, verbose, &haveMAD2);
@ -3237,7 +3238,7 @@ int CmdHF14AMfMAD(const char *cmd) {
MAD2DecodeAndPrint(sector, verbose);
}
*/
return 0;
}

31
client/mifare/mad.c Normal file
View file

@ -0,0 +1,31 @@
//-----------------------------------------------------------------------------
// Copyright (C) 2019 Merlok
//
// This code is licensed to you under the terms of the GNU GPL, version 2 or,
// at your option, any later version. See the LICENSE.txt file for the text of
// the license.
//-----------------------------------------------------------------------------
// MIFARE Application Directory (MAD) functions
//-----------------------------------------------------------------------------
#include "mad.h"
#include "ui.h"
madAIDDescr madKnownAIDs[] = {
{0x0000, "free"},
{0x0001, "defect, e.g. access keys are destroyed or unknown"},
{0x0002, "reserved"},
{0x0003, "contains additional directory info"},
{0x0004, "contains card holder information in ASCII format."},
{0x0005, "not applicable (above memory size)}"}
};
int MAD1DecodeAndPrint(uint8_t *sector, bool verbose, bool *haveMAD2) {
return 0;
};
int MAD2DecodeAndPrint(uint8_t *sector, bool verbose) {
return 0;
};

26
client/mifare/mad.h Normal file
View file

@ -0,0 +1,26 @@
//-----------------------------------------------------------------------------
// Copyright (C) 2019 Merlok
//
// This code is licensed to you under the terms of the GNU GPL, version 2 or,
// at your option, any later version. See the LICENSE.txt file for the text of
// the license.
//-----------------------------------------------------------------------------
// MIFARE Application Directory (MAD) functions
//-----------------------------------------------------------------------------
#ifndef _MAD_H_
#define _MAD_H_
#include <stdint.h>
#include <stdbool.h>
typedef struct {
uint16_t AID;
const char *Description;
} madAIDDescr;
int MAD1DecodeAndPrint(uint8_t *sector, bool verbose, bool *haveMAD2);
int MAD2DecodeAndPrint(uint8_t *sector, bool verbose);
#endif // _MAD_H_