diff options
-rw-r--r-- | include/osmocom/gsm/protocol/gsm_04_08.h | 4 | ||||
-rw-r--r-- | src/gsm/gsm48.c | 19 | ||||
-rw-r--r-- | src/gsm/libosmogsm.map | 1 |
3 files changed, 24 insertions, 0 deletions
diff --git a/include/osmocom/gsm/protocol/gsm_04_08.h b/include/osmocom/gsm/protocol/gsm_04_08.h index 522015ac..87debba9 100644 --- a/include/osmocom/gsm/protocol/gsm_04_08.h +++ b/include/osmocom/gsm/protocol/gsm_04_08.h @@ -926,6 +926,10 @@ struct gsm48_rr_status { #define GSM48_PDISC_MASK 0x0f #define GSM48_PDISC_USSD 0x11 +extern const struct value_string gsm48_pdisc_names[]; +static inline const char *gsm48_pdisc_name(uint8_t val) +{ return get_value_string(gsm48_pdisc_names, val); } + bool gsm48_hdr_gmm_cipherable(const struct gsm48_hdr *hdr); static inline uint8_t gsm48_hdr_pdisc(const struct gsm48_hdr *hdr) diff --git a/src/gsm/gsm48.c b/src/gsm/gsm48.c index b626f82b..d4088977 100644 --- a/src/gsm/gsm48.c +++ b/src/gsm/gsm48.c @@ -678,3 +678,22 @@ int gsm48_number_of_paging_subchannels(struct gsm48_control_channel_descr *chan_ else return n_pag_blocks * (chan_desc->bs_pa_mfrms + 2); } + +const struct value_string gsm48_pdisc_names[] = { + OSMO_VALUE_STRING(GSM48_PDISC_GROUP_CC), + OSMO_VALUE_STRING(GSM48_PDISC_BCAST_CC), + OSMO_VALUE_STRING(GSM48_PDISC_PDSS1), + OSMO_VALUE_STRING(GSM48_PDISC_CC), + OSMO_VALUE_STRING(GSM48_PDISC_PDSS2), + OSMO_VALUE_STRING(GSM48_PDISC_MM), + OSMO_VALUE_STRING(GSM48_PDISC_RR), + OSMO_VALUE_STRING(GSM48_PDISC_MM_GPRS), + OSMO_VALUE_STRING(GSM48_PDISC_SMS), + OSMO_VALUE_STRING(GSM48_PDISC_SM_GPRS), + OSMO_VALUE_STRING(GSM48_PDISC_NC_SS), + OSMO_VALUE_STRING(GSM48_PDISC_LOC), + OSMO_VALUE_STRING(GSM48_PDISC_EXTEND), + OSMO_VALUE_STRING(GSM48_PDISC_MASK), + OSMO_VALUE_STRING(GSM48_PDISC_USSD), + { 0, NULL } +}; diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map index 8d284760..60f83dec 100644 --- a/src/gsm/libosmogsm.map +++ b/src/gsm/libosmogsm.map @@ -217,6 +217,7 @@ gsm48_mcc_mnc_to_bcd; gsm48_mcc_mnc_from_bcd; gsm48_chan_mode_names; gsm_chan_t_names; +gsm48_pdisc_names; gsm_7bit_decode; gsm_7bit_decode_ussd; |