From 91979b7ad4b4b94d7e2fb1c3763043bae02fad40 Mon Sep 17 00:00:00 2001 From: Andreas Eversberg Date: Sun, 7 Feb 2021 17:11:28 +0100 Subject: [PATCH] osmo-cc: Improve network type information element --- src/libosmocc/message.c | 54 +++++++++++++++++++++++++++++++++++++++++ src/libosmocc/message.h | 3 +++ 2 files changed, 57 insertions(+) diff --git a/src/libosmocc/message.c b/src/libosmocc/message.c index 0eb25ac..afee718 100644 --- a/src/libosmocc/message.c +++ b/src/libosmocc/message.c @@ -98,6 +98,60 @@ const char *osmo_cc_msg_name(uint8_t msg_type) } } +const char *osmo_cc_network_type_name(uint8_t type) +{ + switch (type) { + case OSMO_CC_NETWORK_UNDEFINED: + return ""; + case OSMO_CC_NETWORK_ALSA_NONE: + return "alsa"; + case OSMO_CC_NETWORK_POTS_NONE: + return "pots"; + case OSMO_CC_NETWORK_ISDN_NONE: + return "isdn"; + case OSMO_CC_NETWORK_SIP_NONE: + return "sip"; + case OSMO_CC_NETWORK_GSM_IMSI: + return "gsm-imsi"; + case OSMO_CC_NETWORK_GSM_IMEI: + return "gsm-imei"; + case OSMO_CC_NETWORK_WEB_NONE: + return "web"; + case OSMO_CC_NETWORK_DECT_NONE: + return "decs"; + case OSMO_CC_NETWORK_BLUETOOTH_NONE: + return "bluetooth"; + case OSMO_CC_NETWORK_SS5_NONE: + return "ss5"; + case OSMO_CC_NETWORK_ANETZ_NONE: + return "anetz"; + case OSMO_CC_NETWORK_BNETZ_MUENZ: + return "bnetz"; + case OSMO_CC_NETWORK_CNETZ_NONE: + return "cnetz"; + case OSMO_CC_NETWORK_NMT_NONE: + return "nmt"; + case OSMO_CC_NETWORK_R2000_NONE: + return "radiocom2000"; + case OSMO_CC_NETWORK_AMPS_ESN: + return "amps"; + case OSMO_CC_NETWORK_MTS_NONE: + return "mts"; + case OSMO_CC_NETWORK_IMTS_NONE: + return "imts"; + case OSMO_CC_NETWORK_EUROSIGNAL_NONE: + return "eurosignal"; + case OSMO_CC_NETWORK_JOLLYCOM_NONE: + return "jollycom"; + case OSMO_CC_NETWORK_MPT1327_PSTN: + return "mpt1327-pstn"; + case OSMO_CC_NETWORK_MPT1327_PBX: + return "mpt1327-pbx"; + default: + return ""; + } +} + /* create message with maximum size */ osmo_cc_msg_t *osmo_cc_new_msg(uint8_t msg_type) { diff --git a/src/libosmocc/message.h b/src/libosmocc/message.h index 7821988..7f0b228 100644 --- a/src/libosmocc/message.h +++ b/src/libosmocc/message.h @@ -251,6 +251,8 @@ enum osmo_cc_ie_type { #define OSMO_CC_NETWORK_IMTS_NONE 0x87 #define OSMO_CC_NETWORK_EUROSIGNAL_NONE 0x88 #define OSMO_CC_NETWORK_JOLLYCOM_NONE 0x89 /* call from JollyCom... */ +#define OSMO_CC_NETWORK_MPT1327_PSTN 0x8a /* call from MPT1327 */ +#define OSMO_CC_NETWORK_MPT1327_PBX 0x8b /* id is selected PBX number */ typedef struct osmo_cc_msg { uint8_t type; @@ -379,6 +381,7 @@ struct osmo_cc_ie_private { uint32_t osmo_cc_new_callref(void); const char *osmo_cc_msg_name(uint8_t msg_type); +const char *osmo_cc_network_type_name(uint8_t type); osmo_cc_msg_t *osmo_cc_new_msg(uint8_t msg_type); osmo_cc_msg_t *osmo_cc_clone_msg(osmo_cc_msg_t *msg); osmo_cc_msg_t *osmo_cc_msg_list_dequeue(osmo_cc_msg_list_t **mlp, uint32_t *callref_p);