summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2017-06-08 14:21:50 +0200
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2017-06-18 17:50:08 +0200
commitcf04ac42b1981805b028ea02d42456d53299e62d (patch)
tree50923538650d9fb5965c050f7a8f296690e198e3
parentd7bf0dcae8f8e6b2ade7032057dfed5601a3cb4b (diff)
mgcp: release no longer used endpoint identifiers
When an MGCP endpoint is deleted, we need to mark its endpoint id as unused, so other calls can used it. This is currently not happening. This patch fixes that.
-rw-r--r--openbsc/src/libmsc/msc_ifaces.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/openbsc/src/libmsc/msc_ifaces.c b/openbsc/src/libmsc/msc_ifaces.c
index 0b0dfdc..9533dde 100644
--- a/openbsc/src/libmsc/msc_ifaces.c
+++ b/openbsc/src/libmsc/msc_ifaces.c
@@ -335,10 +335,13 @@ void msc_call_release(struct gsm_trans *trans)
struct gsm_subscriber_connection *conn = trans->conn;
struct mgcpgw_client *mgcp = conn->network->mgcpgw.client;
+ /* Send DLCX */
msg = mgcp_msg_dlcx(mgcp, conn->iu.mgcp_rtp_endpoint);
-
if (mgcpgw_client_tx(mgcp, msg, NULL, NULL))
LOGP(DMGCP, LOGL_ERROR,
"Failed to send DLCX message for %s\n",
vlr_subscr_name(trans->vsub));
+
+ /* Release endpoint id */
+ mgcpgw_client_release_endpoint(conn->iu.mgcp_rtp_endpoint, mgcp);
}