diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/osmocom/msc/gsm_data.h | 14 | ||||
-rw-r--r-- | include/osmocom/msc/osmo_msc.h | 15 |
2 files changed, 16 insertions, 13 deletions
diff --git a/include/osmocom/msc/gsm_data.h b/include/osmocom/msc/gsm_data.h index df15eea02..29abd5d20 100644 --- a/include/osmocom/msc/gsm_data.h +++ b/include/osmocom/msc/gsm_data.h @@ -70,6 +70,19 @@ enum integrity_protection_state { INTEGRITY_PROTECTION_IK_CK = 2, }; +enum complete_layer3_type { + COMPLETE_LAYER3_NONE, + COMPLETE_LAYER3_LU, + COMPLETE_LAYER3_CM_SERVICE_REQ, + COMPLETE_LAYER3_PAGING_RESP, +}; + +extern const struct value_string complete_layer3_type_names[]; +static inline const char *complete_layer3_type_name(enum complete_layer3_type val) +{ + return get_value_string(complete_layer3_type_names, val); +} + /* active radio connection of a mobile subscriber */ struct gsm_subscriber_connection { /* global linked list of subscriber_connections */ @@ -77,6 +90,7 @@ struct gsm_subscriber_connection { /* FSM instance to control the subscriber connection's permissions and lifetime. */ struct osmo_fsm_inst *fi; + enum complete_layer3_type complete_layer3_type; /* usage count. If this drops to zero, we start the release * towards A/Iu */ diff --git a/include/osmocom/msc/osmo_msc.h b/include/osmocom/msc/osmo_msc.h index d838e89d4..fb525e000 100644 --- a/include/osmocom/msc/osmo_msc.h +++ b/include/osmocom/msc/osmo_msc.h @@ -36,24 +36,13 @@ enum subscr_conn_fsm_state { SUBSCR_CONN_S_RELEASED, }; -enum complete_layer3_type { - SUBSCR_CONN_FROM_INVALID, - SUBSCR_CONN_FROM_LU, - SUBSCR_CONN_FROM_CM_SERVICE_REQ, - SUBSCR_CONN_FROM_PAGING_RESP, -}; - -extern const struct value_string complete_layer3_type_names[]; -static inline const char *complete_layer3_type_name(enum complete_layer3_type val) -{ - return get_value_string(complete_layer3_type_names, val); -} - enum msc_compl_l3_rc { MSC_CONN_ACCEPT = 0, MSC_CONN_REJECT = 1, }; +void msc_subscr_conn_update_id(struct gsm_subscriber_connection *conn, + enum complete_layer3_type from, const char *id); char *msc_subscr_conn_get_conn_id(struct gsm_subscriber_connection *conn); int msc_create_conn_fsm(struct gsm_subscriber_connection *conn, const char *id); |