Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mifare DESFire tag emulation support #287

Merged
merged 10 commits into from
Oct 19, 2020
Prev Previous commit
Next Next commit
Fixing logging issue where if starting from a logmode different from …
…LIVE with -DLOG_SETTING_GLOBAL set in the Makefile, the active configuration does not respond to LOGMODE=LIVE.
  • Loading branch information
maxieds committed Oct 18, 2020
commit 54128d4ec7f7f002981e11b154e877865875213f
4 changes: 2 additions & 2 deletions Firmware/Chameleon-Mini/Application/MifareDESFire.c
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ uint16_t MifareDesfireProcess(uint8_t* Buffer, uint16_t BitCount) {
ISO14443AAppendCRCA(Buffer, BitCount);
BitCount += 2;
}
LogEntry(LOG_INFO_DESFIRE_OUTGOING_DATA, Buffer, BitCount);
//LogEntry(LOG_INFO_DESFIRE_OUTGOING_DATA, Buffer, BitCount);
return BitCount * BITS_PER_BYTE;
}
else {
Expand All @@ -219,7 +219,7 @@ uint16_t MifareDesfireProcess(uint8_t* Buffer, uint16_t BitCount) {

uint16_t MifareDesfireAppProcess(uint8_t* Buffer, uint16_t BitCount) {
size_t ByteCount = (BitCount + BITS_PER_BYTE - 1) / BITS_PER_BYTE;
LogEntry(LOG_INFO_DESFIRE_INCOMING_DATA, Buffer, ByteCount);
//LogEntry(LOG_INFO_DESFIRE_INCOMING_DATA, Buffer, ByteCount);
if(ByteCount >= 8 && DesfireCLA(Buffer[0]) && Buffer[2] == 0x00 &&
Buffer[3] == 0x00 && Buffer[4] == ByteCount - 8) {
return MifareDesfireProcess(Buffer, BitCount);
Expand Down
12 changes: 5 additions & 7 deletions Firmware/Chameleon-Mini/Log.c
Original file line number Diff line number Diff line change
Expand Up @@ -160,15 +160,13 @@ uint16_t LogMemFree(void) {


void LogSetModeById(LogModeEnum Mode) {
#ifndef LOG_SETTING_GLOBAL
GlobalSettings.ActiveSettingPtr->LogMode = Mode;
#else
#ifdef LOG_SETTING_GLOBAL
/* Write Log settings globally */
for (uint8_t i = 0; i < SETTINGS_COUNT; i++) {
GlobalSettings.Settings[i].LogMode = Mode;
}
for (uint8_t i=0; i<SETTINGS_COUNT; i++) {
GlobalSettings.Settings[i].LogMode = Mode;
}
#endif

GlobalSettings.ActiveSettingPtr->LogMode = Mode;
switch (Mode) {
case LOG_MODE_OFF:
EnableLogSRAMtoFRAM = false;
Expand Down