change GSM48_CMSERV_* to enum type, add names

Prepare handling multiple CM Service Requests in osmo-msc: an enum is more
clear than an int and #defines for passing around and count CM Service types.

Change-Id: I9c2a7adc45ab7a1a7519168e965e7d805e1481ff
This commit is contained in:
Neels Hofmeyr 2019-01-10 23:33:32 +01:00 committed by Neels Hofmeyr
parent 894be2d9da
commit f8963f9d4e
3 changed files with 26 additions and 7 deletions

View File

@ -1631,13 +1631,20 @@ const char *gsm48_pdisc_msgtype_name(uint8_t pdisc, uint8_t msg_type);
/* FIXME: Table 10.4 / 10.4a (GPRS) */
/* Section 10.5.3.3 CM service type */
#define GSM48_CMSERV_MO_CALL_PACKET 1
#define GSM48_CMSERV_EMERGENCY 2
#define GSM48_CMSERV_SMS 4
#define GSM48_CMSERV_SUP_SERV 8
#define GSM48_CMSERV_VGCS 9
#define GSM48_CMSERV_VBS 10
#define GSM48_CMSERV_LOC_SERV 11
enum osmo_cm_service_type {
GSM48_CMSERV_MO_CALL_PACKET = 1,
GSM48_CMSERV_EMERGENCY = 2,
GSM48_CMSERV_SMS = 4,
GSM48_CMSERV_SUP_SERV = 8,
GSM48_CMSERV_VGCS = 9,
GSM48_CMSERV_VBS = 10,
GSM48_CMSERV_LOC_SERV = 11,
GSM48_CMSERV_MAX_VAL = GSM48_CMSERV_LOC_SERV
};
extern const struct value_string osmo_cm_service_type_names[];
static inline const char *osmo_cm_service_type_name(enum osmo_cm_service_type val)
{ return get_value_string(osmo_cm_service_type_names, val); }
/* Section 10.5.2.26, Table 10.5.64 */
#define GSM48_PM_MASK 0x03

View File

@ -1145,4 +1145,15 @@ const struct value_string osmo_lu_type_names[] = {
{}
};
const struct value_string osmo_cm_service_type_names[] = {
{ GSM48_CMSERV_MO_CALL_PACKET, "MO-Call" },
{ GSM48_CMSERV_EMERGENCY, "Emergency-Call" },
{ GSM48_CMSERV_SMS, "Short-Messaging-Service" },
{ GSM48_CMSERV_SUP_SERV, "Supplementary-Service" },
{ GSM48_CMSERV_VGCS, "Voice-Group-Call" },
{ GSM48_CMSERV_VBS, "Voice-Broadcast-Call" },
{ GSM48_CMSERV_LOC_SERV, "Location-Service" },
{}
};
/*! @} */

View File

@ -574,6 +574,7 @@ sgsap_ie_tlvdef;
osmo_rat_type_names;
osmo_lu_type_names;
osmo_cm_service_type_names;
local: *;
};