summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/osmocom/gsm/gsup.h5
-rw-r--r--src/gsm/gsup.c8
-rw-r--r--src/gsm/libosmogsm.map1
3 files changed, 14 insertions, 0 deletions
diff --git a/include/osmocom/gsm/gsup.h b/include/osmocom/gsm/gsup.h
index e246639a..0ef5a759 100644
--- a/include/osmocom/gsm/gsup.h
+++ b/include/osmocom/gsm/gsup.h
@@ -154,6 +154,11 @@ enum osmo_gsup_session_state {
OSMO_GSUP_SESSION_STATE_END = 0x03,
};
+extern const struct value_string osmo_gsup_session_state_names[];
+static inline const char *
+osmo_gsup_session_state_name(enum osmo_gsup_session_state val)
+{ return get_value_string(osmo_gsup_session_state_names, val); }
+
/*! parsed/decoded PDP context information */
struct osmo_gsup_pdp_info {
unsigned int context_id;
diff --git a/src/gsm/gsup.c b/src/gsm/gsup.c
index e3eef02e..9c2f8175 100644
--- a/src/gsm/gsup.c
+++ b/src/gsm/gsup.c
@@ -70,6 +70,14 @@ const struct value_string osmo_gsup_message_type_names[] = {
{ 0, NULL }
};
+const struct value_string osmo_gsup_session_state_names[] = {
+ { OSMO_GSUP_SESSION_STATE_NONE, "NONE" },
+ { OSMO_GSUP_SESSION_STATE_BEGIN, "BEGIN" },
+ { OSMO_GSUP_SESSION_STATE_CONTINUE, "CONTINUE" },
+ { OSMO_GSUP_SESSION_STATE_END, "END" },
+ { 0, NULL }
+};
+
/*! return the error message type corresponding to \a type_in
* \returns matching error message type; -1 on error */
diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map
index f98f7c94..4d9811b0 100644
--- a/src/gsm/libosmogsm.map
+++ b/src/gsm/libosmogsm.map
@@ -469,6 +469,7 @@ osmo_apn_from_str;
osmo_gsup_encode;
osmo_gsup_decode;
osmo_gsup_message_type_names;
+osmo_gsup_session_state_names;
osmo_gsup_get_err_msg_type;
osmo_oap_encode;