mirror of
https://gitea.osmocom.org/sim-card/simtrace2.git
synced 2026-03-20 07:18:33 +03:00
enable (empty) sniffer support for SIMtrace board
This commit is contained in:
@@ -11,7 +11,7 @@
|
|||||||
/** Phone (SIM card emulator)/CCID Reader/MITM configuration **/
|
/** Phone (SIM card emulator)/CCID Reader/MITM configuration **/
|
||||||
/* Normally the communication lines between phone and SIM card are disconnected */
|
/* Normally the communication lines between phone and SIM card are disconnected */
|
||||||
// Disconnect SIM card I/O, VPP line from the phone lines
|
// Disconnect SIM card I/O, VPP line from the phone lines
|
||||||
// FIXME: Per default pins are input, therefore high-impedance, therefore they don not activate the bus switch, right?
|
// FIXME: Per default pins are input, therefore high-impedance, therefore the bus switch is in an unknown state by default for hardware version <= 1.4. It should be pulled high by an external resistor to set the bus switch to high-impedance (e.g. off).
|
||||||
#define PIN_SC_SW_DEFAULT {PIO_PA20, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
|
#define PIN_SC_SW_DEFAULT {PIO_PA20, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
|
||||||
// Disconnect SIM card RST, CLK line from the phone lines
|
// Disconnect SIM card RST, CLK line from the phone lines
|
||||||
#define PIN_IO_SW_DEFAULT {PIO_PA19, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
|
#define PIN_IO_SW_DEFAULT {PIO_PA19, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
#define BOARD_DFU_USB_PRODUCT_ID USB_PRODUCT_SIMTRACE2_DFU
|
#define BOARD_DFU_USB_PRODUCT_ID USB_PRODUCT_SIMTRACE2_DFU
|
||||||
#define BOARD_USB_RELEASE 0x000
|
#define BOARD_USB_RELEASE 0x000
|
||||||
|
|
||||||
//#define HAVE_SNIFFER
|
#define HAVE_SNIFFER
|
||||||
#define HAVE_CCID
|
#define HAVE_CCID
|
||||||
#define HAVE_CARDEM
|
#define HAVE_CARDEM
|
||||||
//#define HAVE_MITM
|
//#define HAVE_MITM
|
||||||
|
|||||||
@@ -27,14 +27,15 @@
|
|||||||
* ----------------------------------------------------------------------------
|
* ----------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "board.h"
|
||||||
|
#include "simtrace.h"
|
||||||
|
|
||||||
#ifdef HAVE_SNIFFER
|
#ifdef HAVE_SNIFFER
|
||||||
|
|
||||||
/*------------------------------------------------------------------------------
|
/*------------------------------------------------------------------------------
|
||||||
* Headers
|
* Headers
|
||||||
*------------------------------------------------------------------------------*/
|
*------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "board.h"
|
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
/*------------------------------------------------------------------------------
|
/*------------------------------------------------------------------------------
|
||||||
@@ -67,6 +68,12 @@ static struct Usart_info usart_info = {
|
|||||||
.state = USART_RCV,
|
.state = USART_RCV,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
int check_data_from_phone(void)
|
||||||
|
{
|
||||||
|
TRACE_INFO("check data from phone\n\r");
|
||||||
|
}
|
||||||
|
|
||||||
/*-----------------------------------------------------------------------------
|
/*-----------------------------------------------------------------------------
|
||||||
* Initialization routine
|
* Initialization routine
|
||||||
*-----------------------------------------------------------------------------*/
|
*-----------------------------------------------------------------------------*/
|
||||||
@@ -74,22 +81,22 @@ static struct Usart_info usart_info = {
|
|||||||
/* Called during USB enumeration after device is enumerated by host */
|
/* Called during USB enumeration after device is enumerated by host */
|
||||||
void Sniffer_configure(void)
|
void Sniffer_configure(void)
|
||||||
{
|
{
|
||||||
TRACE_INFO("Sniffer config\n");
|
TRACE_INFO("Sniffer config\n\r");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* called when *different* configuration is set by host */
|
/* called when *different* configuration is set by host */
|
||||||
void Sniffer_exit(void)
|
void Sniffer_exit(void)
|
||||||
{
|
{
|
||||||
TRACE_INFO("Sniffer exit\n");
|
TRACE_INFO("Sniffer exit\n\r");
|
||||||
USART_DisableIt(USART_PHONE, US_IER_RXRDY);
|
USART_DisableIt(USART_PHONE, US_IER_RXRDY);
|
||||||
NVIC_DisableIRQ(USART1_IRQn);
|
NVIC_DisableIRQ(USART1_IRQn);
|
||||||
USART_SetReceiverEnabled(USART_PHONE, 0);
|
USART_SetReceiverEnabled(USART_PHONE, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* called when *CCID* configuration is set by host */
|
/* called when *Sniffer* configuration is set by host */
|
||||||
void Sniffer_init(void)
|
void Sniffer_init(void)
|
||||||
{
|
{
|
||||||
TRACE_INFO("Sniffer Init\n");
|
TRACE_INFO("Sniffer Init\n\r");
|
||||||
/* Configure ISO7816 driver */
|
/* Configure ISO7816 driver */
|
||||||
PIO_Configure(pinsISO7816_sniff, PIO_LISTSIZE(pinsISO7816_sniff));
|
PIO_Configure(pinsISO7816_sniff, PIO_LISTSIZE(pinsISO7816_sniff));
|
||||||
PIO_Configure(pins_bus, PIO_LISTSIZE(pins_bus));
|
PIO_Configure(pins_bus, PIO_LISTSIZE(pins_bus));
|
||||||
|
|||||||
Reference in New Issue
Block a user