aboutsummaryrefslogtreecommitdiffstats
path: root/src/libmsc/transaction.c
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2023-06-21 11:17:26 +0200
committerlaforge <laforge@osmocom.org>2023-07-09 07:41:33 +0000
commit712b28e69588e55f83258c2f185796c2f9b8969d (patch)
treecca73d7c435432495fe3fe8ca23a98df6258b266 /src/libmsc/transaction.c
parent0452cf94675f5a614653a43a0a1480d6d33df8ad (diff)
ASCI: Use a unique call-id for RTP streams
The MGCP protocol features the 'C' (call-id) to identify which connections belong to the same call. They may be used by MGW for accounting or management procedures. So far we sent the MNCC callref as call-id. Instead, add a separate unique call_id number space. Assign a unique call_id to each transaction. Change-Id: I36c5f159fa0b54fb576ff8bd279928b895554793 Related: OS#4854
Diffstat (limited to 'src/libmsc/transaction.c')
-rw-r--r--src/libmsc/transaction.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libmsc/transaction.c b/src/libmsc/transaction.c
index 6c12409dd..190da2943 100644
--- a/src/libmsc/transaction.c
+++ b/src/libmsc/transaction.c
@@ -181,6 +181,8 @@ static const char *trans_vsub_use(enum trans_type type)
return get_value_string_or_null(trans_type_names, type) ? : "trans-type-unknown";
}
+static uint32_t new_call_id = 1;
+
/*! Allocate a new transaction and add it to network list
* \param[in] net Netwokr in which we allocate transaction
* \param[in] subscr Subscriber for which we allocate transaction
@@ -212,6 +214,7 @@ struct gsm_trans *trans_alloc(struct gsm_network *net,
.log_subsys = subsys,
.transaction_id = trans_id,
.callref = callref,
+ .call_id = new_call_id++,
.net = net,
/* empty bearer_cap: make sure the speech_ver array is empty */
.bearer_cap = {