Add initial 3GPP LCLS support to OsmoBSC
This code contains the following code:
* receive/parse/interpret LCLS specific BSSMAP IEs and PDUs
* osmo_fsm handling the various states and their transitions
* call leg correlation (finding the other subscr_conn with same GCR)
* communication between the two call-leg LCLS FSMs
* detection of supported / unsupported LCLS configurations
* display of GCR / LCLS information in "show conns"
* switch the media streams locally using MDCX to the MGW
Closes: OS#1602
Change-Id: I614fade62834def5cafc94c4d2578cd747a3f9f7
diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h
index 1cf79a5..b1fceb3 100644
--- a/include/osmocom/bsc/gsm_data.h
+++ b/include/osmocom/bsc/gsm_data.h
@@ -188,6 +188,18 @@
enum gsm48_chan_mode chan_mode;
} user_plane;
+
+ /* LCLS (local call, local switch) related state */
+ struct {
+ uint8_t global_call_ref[15];
+ uint8_t global_call_ref_len; /* length of global_call_ref */
+ uint8_t config; /* TS 48.008 3.2.2.116 */
+ uint8_t control;/* TS 48.008 3.2.2.117 */
+ /* LCLS FSM */
+ struct osmo_fsm_inst *fi;
+ /* pointer to "other" connection, if Call Leg Relocation was successful */
+ struct gsm_subscriber_connection *other;
+ } lcls;
};