summaryrefslogtreecommitdiffstats
path: root/src/host/layer23/include/osmocom
diff options
context:
space:
mode:
authorAndreas.Eversberg <jolly@eversberg.eu>2010-09-18 19:15:15 +0000
committerAndreas.Eversberg <jolly@eversberg.eu>2010-09-18 19:15:15 +0000
commit0856c8a6a5ad48d810da598b421f81fc21d0ba55 (patch)
tree3b87fe6abbf65c4fc165827dea7f107e8f4c4435 /src/host/layer23/include/osmocom
parentdf05c6ca94a5597a83afd29e7df5b2e4b6343fc2 (diff)
[layer23] SIM client completion
The SIM client is now complete. Because it usefull for multiple applications, i moved it to the layer23/src/common directory. The SIM reader works together with mobile process. Fixes were made. Thanx to all for testing, finding bugs, and making it work as it is supposed to do. The current version uses special L1CTL messages to send and receive APDUs. This will change in the future, when BTSAP interface is completed. Please note that this client will not work until the layer1 SIM reader fixes and extensions are committed.
Diffstat (limited to 'src/host/layer23/include/osmocom')
-rw-r--r--src/host/layer23/include/osmocom/bb/common/l1ctl.h2
-rw-r--r--src/host/layer23/include/osmocom/bb/common/osmocom_data.h2
-rw-r--r--src/host/layer23/include/osmocom/bb/common/sim.h (renamed from src/host/layer23/include/osmocom/bb/mobile/sim.h)3
3 files changed, 5 insertions, 2 deletions
diff --git a/src/host/layer23/include/osmocom/bb/common/l1ctl.h b/src/host/layer23/include/osmocom/bb/common/l1ctl.h
index 01a49b20..189df898 100644
--- a/src/host/layer23/include/osmocom/bb/common/l1ctl.h
+++ b/src/host/layer23/include/osmocom/bb/common/l1ctl.h
@@ -56,4 +56,6 @@ int l1ctl_tx_reset_req(struct osmocom_ms *ms, uint8_t type);
int l1ctl_tx_pm_req_range(struct osmocom_ms *ms, uint16_t arfcn_from,
uint16_t arfcm_to);
+int l1ctl_tx_sim_req(struct osmocom_ms *ms, uint8_t *data, uint16_t length);
+
#endif
diff --git a/src/host/layer23/include/osmocom/bb/common/osmocom_data.h b/src/host/layer23/include/osmocom/bb/common/osmocom_data.h
index d9538282..7ffbfd93 100644
--- a/src/host/layer23/include/osmocom/bb/common/osmocom_data.h
+++ b/src/host/layer23/include/osmocom/bb/common/osmocom_data.h
@@ -18,7 +18,7 @@ struct osmocom_ms;
#include <osmocom/bb/mobile/gsm322.h>
#include <osmocom/bb/mobile/gsm48_mm.h>
#include <osmocom/bb/mobile/gsm48_cc.h>
-#include <osmocom/bb/mobile/sim.h>
+#include <osmocom/bb/common/sim.h>
/* A layer2 entity */
struct osmol2_entity {
diff --git a/src/host/layer23/include/osmocom/bb/mobile/sim.h b/src/host/layer23/include/osmocom/bb/common/sim.h
index be8b8b57..c1e6087a 100644
--- a/src/host/layer23/include/osmocom/bb/mobile/sim.h
+++ b/src/host/layer23/include/osmocom/bb/common/sim.h
@@ -187,7 +187,7 @@ struct sim_hdr {
uint8_t seek_type_mode; /* in case of seek command */
};
-#define SIM_ALLOC_SIZE 128
+#define SIM_ALLOC_SIZE 512
#define SIM_ALLOC_HEADROOM 64
struct msgb *gsm_sim_msgb_alloc(uint32_t handle, uint8_t job_type);
@@ -266,6 +266,7 @@ struct gsm1111_ef_adn {
uint8_t ext_id;
} __attribute__ ((packed));
+int sim_apdu_resp(struct osmocom_ms *ms, struct msgb *msg);
int gsm_sim_init(struct osmocom_ms *ms);
int gsm_sim_exit(struct osmocom_ms *ms);
int gsm_sim_job_dequeue(struct osmocom_ms *ms);