diff --git a/firmware/include_board/board_common.h b/firmware/include_board/board_common.h index b8f21f40..cac0ef8d 100644 --- a/firmware/include_board/board_common.h +++ b/firmware/include_board/board_common.h @@ -25,8 +25,6 @@ #include "string.h" #include "inttypes.h" -#include "simtrace.h" - #define MIN(a, b) ((a < b) ? a : b) #ifdef __GNUC__ diff --git a/firmware/src_board/cciddriver.c b/firmware/src_board/cciddriver.c index 02ab63e1..7379dc53 100644 --- a/firmware/src_board/cciddriver.c +++ b/firmware/src_board/cciddriver.c @@ -44,6 +44,10 @@ //------------------------------------------------------------------------------ #include "board.h" +#include "simtrace.h" + +#ifdef HAVE_CCID + #include #include #include @@ -1029,4 +1033,4 @@ unsigned char RDRtoPCHardwareError( unsigned char bSlot, return USBD_Write( CCID_EPT_NOTIFICATION, ccidDriver.BufferINT, 4, 0, 0 ); } - +#endif /* HAVE_CCID */ diff --git a/firmware/src_simtrace/main.c b/firmware/src_simtrace/main.c index 96869497..852b2f46 100644 --- a/firmware/src_simtrace/main.c +++ b/firmware/src_simtrace/main.c @@ -6,6 +6,7 @@ #define TRACE_LEVEL 5 #include "board.h" +#include "simtrace.h" #include "utils.h" #include "req_ctx.h" diff --git a/firmware/src_simtrace/mode_cardemu.c b/firmware/src_simtrace/mode_cardemu.c index 96ecca68..3b0c3d21 100644 --- a/firmware/src_simtrace/mode_cardemu.c +++ b/firmware/src_simtrace/mode_cardemu.c @@ -1,4 +1,6 @@ #include "board.h" +#include "simtrace.h" +#include "ringbuffer.h" #include "card_emu.h" #include "iso7816_fidi.h" #include "utils.h" diff --git a/firmware/src_simtrace/simtrace.h b/firmware/src_simtrace/simtrace.h index df5f01b0..725ef418 100644 --- a/firmware/src_simtrace/simtrace.h +++ b/firmware/src_simtrace/simtrace.h @@ -2,6 +2,7 @@ #define SIMTRACE_H #include "ringbuffer.h" +#include "board.h" /* Endpoint numbers */ #define DATAOUT 1 @@ -37,7 +38,20 @@ extern volatile uint32_t char_stat; extern const Pin pinPhoneRST; enum confNum { - CFG_NUM_SNIFF = 1, CFG_NUM_CCID, CFG_NUM_PHONE, CFG_NUM_MITM, NUM_CONF + CFG_NUM_NONE = 0, +#ifdef HAVE_SNIFFER + CFG_NUM_SNIFF, +#endif +#ifdef HAVE_CCID + CFG_NUM_CCID, +#endif +#ifdef HAVE_CARDEM + CFG_NUM_PHONE, +#endif +#ifdef HAVE_MITM + CFG_NUM_MITM, +#endif + NUM_CONF }; /// CCIDDriverConfiguration Descriptors diff --git a/firmware/src_simtrace/simtrace_iso7816.c b/firmware/src_simtrace/simtrace_iso7816.c index 0c4a0963..c24ac0a6 100644 --- a/firmware/src_simtrace/simtrace_iso7816.c +++ b/firmware/src_simtrace/simtrace_iso7816.c @@ -32,6 +32,8 @@ *------------------------------------------------------------------------------*/ #include "board.h" +#include "simtrace.h" +#include "ringbuffer.h" #include "iso7816_fidi.h" #include diff --git a/firmware/src_simtrace/usb.c b/firmware/src_simtrace/usb.c index 6b57b1b5..3d69780f 100644 --- a/firmware/src_simtrace/usb.c +++ b/firmware/src_simtrace/usb.c @@ -32,6 +32,7 @@ *----------------------------------------------------------------------------*/ #include "board.h" +#include "simtrace.h" #include "utils.h" #include