aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2018-12-18 22:05:24 +0100
committerHarald Welte <laforge@gnumonks.org>2019-01-12 09:51:22 +0000
commita725970d8584171640ca6c5459e6b38fe909583c (patch)
tree711628e2c814b0729d0f131287d808793c76233c /src
parentb62289aa27cbece0937332c4d122615b91a15041 (diff)
tweak fsm_msc_mgcp FSM and FI name
Instead of MGW(MGW_99) use a name of msc-mgcp(MSISDN:2331_GERAN_A:00000017_trans99) 1. The FSM is communication towards an MGW, not the MGW itself. When reading combined logging (gsmtap_log), it is confusing to read 'MGW' in a log coming from the MSC. The API is also called msc_mgcp_*. 2. Calling the FSM instance 'MGW_' again doesn't make sense. 3. Indicate 'trans' before the trans_id (trans_id was already shown, but not indicated what it was). 4. Also indicate the actual subscriber's identification. 5. Also indicate the RAN connection and conn_id. This comes up while trying to understand a call coming in on an already established call: parsing the log with a human brain is near torture without this info, taking extremely long to get grips on. Change-Id: Ie5fc1ffb7eba0209fee4666a075655cd24d27473
Diffstat (limited to 'src')
-rw-r--r--src/libmsc/msc_mgcp.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/libmsc/msc_mgcp.c b/src/libmsc/msc_mgcp.c
index 08a1db099..5c8888031 100644
--- a/src/libmsc/msc_mgcp.c
+++ b/src/libmsc/msc_mgcp.c
@@ -941,7 +941,7 @@ static struct osmo_fsm_state fsm_msc_mgcp_states[] = {
/* State machine definition */
static struct osmo_fsm fsm_msc_mgcp = {
- .name = "MGW",
+ .name = "msc-mgcp",
.states = fsm_msc_mgcp_states,
.num_states = ARRAY_SIZE(fsm_msc_mgcp_states),
.log_subsys = DMGCP,
@@ -977,7 +977,6 @@ int msc_mgcp_try_call_assignment(struct gsm_trans *trans)
int msc_mgcp_call_assignment(struct gsm_trans *trans)
{
struct mgcp_ctx *mgcp_ctx;
- char name[32];
static bool fsm_registered = false;
struct ran_conn *conn;
struct mgcp_client *mgcp;
@@ -1007,9 +1006,6 @@ int msc_mgcp_call_assignment(struct gsm_trans *trans)
conn->iu.rab_id = next_iu_rab_id++;
#endif
- if (snprintf(name, sizeof(name), "MGW_%i", trans->transaction_id) >= sizeof(name))
- return -EINVAL;
-
/* Register the fsm description (if not already done) */
if (fsm_registered == false) {
osmo_fsm_register(&fsm_msc_mgcp);
@@ -1027,8 +1023,10 @@ int msc_mgcp_call_assignment(struct gsm_trans *trans)
vlr_subscr_name(trans->vsub), osmo_quote_str(mgcp_client_rtpbridge_wildcard(mgcp), -1));
return -EINVAL;
}
- mgcp_ctx->fsm = osmo_fsm_inst_alloc(&fsm_msc_mgcp, NULL, NULL, LOGL_DEBUG, name);
+ mgcp_ctx->fsm = osmo_fsm_inst_alloc(&fsm_msc_mgcp, NULL, NULL, LOGL_DEBUG, NULL);
OSMO_ASSERT(mgcp_ctx->fsm);
+ osmo_fsm_inst_update_id_f(mgcp_ctx->fsm, "%s_%s_trans%d",
+ vlr_subscr_name(trans->vsub), ran_conn_get_conn_id(conn), trans->transaction_id);
mgcp_ctx->fsm->priv = mgcp_ctx;
mgcp_ctx->mgcp = mgcp;
mgcp_ctx->trans = trans;