diff options
-rw-r--r-- | include/osmocom/gprs/gprs_bssgp_rim.h | 6 | ||||
-rw-r--r-- | src/gb/gprs_bssgp_rim.c | 10 | ||||
-rw-r--r-- | src/gb/libosmogb.map | 1 |
3 files changed, 17 insertions, 0 deletions
diff --git a/include/osmocom/gprs/gprs_bssgp_rim.h b/include/osmocom/gprs/gprs_bssgp_rim.h index 5e5966e1..48bf047c 100644 --- a/include/osmocom/gprs/gprs_bssgp_rim.h +++ b/include/osmocom/gprs/gprs_bssgp_rim.h @@ -123,6 +123,12 @@ enum bssgp_ran_inf_app_id { BSSGP_RAN_INF_APP_ID_UTRA_SI = 5, }; +extern const struct value_string bssgp_ran_inf_app_id_strs[]; + +/*! Obtain a human-readable string for RIM Application Identity code */ +static inline const char *bssgp_ran_inf_app_id_str(enum bssgp_ran_inf_app_id val) +{ return get_value_string(bssgp_ran_inf_app_id_strs, val); } + /* 3GPP TS 48.018, table 11.3.62a.1.b: RAN-INFORMATION-REQUEST RIM Container Contents */ struct bssgp_ran_inf_req_rim_cont { enum bssgp_ran_inf_app_id app_id; diff --git a/src/gb/gprs_bssgp_rim.c b/src/gb/gprs_bssgp_rim.c index 67e01160..5ef83755 100644 --- a/src/gb/gprs_bssgp_rim.c +++ b/src/gb/gprs_bssgp_rim.c @@ -385,6 +385,16 @@ static uint8_t *enc_rim_cont_common(uint8_t *buf, size_t len, const struct bssgp return buf_ptr; } +/* 3GPP TS 48.018, table 11.3.61.b: RIM Application Identity coding */ +const struct value_string bssgp_ran_inf_app_id_strs[] = { + { BSSGP_RAN_INF_APP_ID_NACC, "Network Assisted Cell Change (NACC)" }, + { BSSGP_RAN_INF_APP_ID_SI3, "System Information 3 (SI3)" }, + { BSSGP_RAN_INF_APP_ID_MBMS, "MBMS data channel" }, + { BSSGP_RAN_INF_APP_ID_SON, "SON Transfer" }, + { BSSGP_RAN_INF_APP_ID_UTRA_SI, "UTRA System Information (UTRA SI)" }, + { 0, NULL } +}; + /*! Decode a RAN Information Request RIM Container (3GPP TS 48.018, table 11.3.62a.1.b). * \param[out] user provided memory for decoded data struct. * \param[in] buf user provided memory with the encoded value data of the IE. diff --git a/src/gb/libosmogb.map b/src/gb/libosmogb.map index dc9df3a9..23d52a2a 100644 --- a/src/gb/libosmogb.map +++ b/src/gb/libosmogb.map @@ -33,6 +33,7 @@ bssgp_nacc_cause_strs; bssgp_parse_cell_id; bssgp_parse_rim_pdu; bssgp_parse_rim_ri; +bssgp_ran_inf_app_id_strs; bssgp_set_bssgp_callback; bssgp_tx_bvc_block; bssgp_tx_bvc_reset; |