aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKévin Redon <kredon@sysmocom.de>2018-07-26 11:30:59 +0200
committerHarald Welte <laforge@gnumonks.org>2018-07-27 17:19:47 +0000
commit0bc3b8365427fa4310cd68213b51188201f231fe (patch)
tree86466079ff20f8c6be07f2e33d0a3f9d2f724813
parent924ef0bc72c1be165e8d5c22859f8b4eddbc0f06 (diff)
GSMTAP: add SIM sub_types
In SIMtrace 1 the ATR was sent the same way as an APDU. The ATR is not an APDU, and could be mis-interpreted as valid APDU. This change allows to make the difference between actual APDU and the ATR, but also adds sub_types for future SIMtrace 2 use cases. Change-Id: I5bd0dff5a4a90cfe96d9c4f3dec6657e1d85bf7a
-rw-r--r--include/osmocom/core/gsmtap.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/include/osmocom/core/gsmtap.h b/include/osmocom/core/gsmtap.h
index b4239f8..9f5049f 100644
--- a/include/osmocom/core/gsmtap.h
+++ b/include/osmocom/core/gsmtap.h
@@ -33,7 +33,7 @@
#define GSMTAP_TYPE_UM 0x01
#define GSMTAP_TYPE_ABIS 0x02
#define GSMTAP_TYPE_UM_BURST 0x03 /* raw burst bits */
-#define GSMTAP_TYPE_SIM 0x04
+#define GSMTAP_TYPE_SIM 0x04 /* ISO 7816 smart card interface */
#define GSMTAP_TYPE_TETRA_I1 0x05 /* tetra air interface */
#define GSMTAP_TYPE_TETRA_I1_BURST 0x06 /* tetra air interface */
#define GSMTAP_TYPE_WMX_BURST 0x07 /* WiMAX burst */
@@ -103,6 +103,18 @@
/* ====== DO NOT MAKE UNAPPROVED MODIFICATIONS HERE ===== */
+/* sub-types for GSMTAP_TYPE_SIM */
+#define GSMTAP_SIM_APDU 0x00 /* APDU data (complete APDU) */
+#define GSMTAP_SIM_ATR 0x01 /* card ATR data */
+#define GSMTAP_SIM_PPS_REQ 0x02 /* PPS request data */
+#define GSMTAP_SIM_PPS_RSP 0x03 /* PPS response data */
+#define GSMTAP_SIM_TPDU_HDR 0x04 /* TPDU command header */
+#define GSMTAP_SIM_TPDU_CMD 0x05 /* TPDU command body */
+#define GSMTAP_SIM_TPDU_RSP 0x06 /* TPDU response body */
+#define GSMTAP_SIM_TPDU_SW 0x07 /* TPDU response trailer */
+
+/* ====== DO NOT MAKE UNAPPROVED MODIFICATIONS HERE ===== */
+
/* sub-types for TYPE_TETRA_AIR */
#define GSMTAP_TETRA_BSCH 0x01
#define GSMTAP_TETRA_AACH 0x02