aboutsummaryrefslogtreecommitdiffstats
path: root/src/libmgcp
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2017-06-08 15:36:14 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2017-07-25 15:14:13 +0200
commit2a6629b27e4716f1c505fe1217405f90e8b545cf (patch)
tree9b8500ca2eec5de515a2400383db04ee644ced35 /src/libmgcp
parent95e1a3b53cc450a2270523020aa67f5fe91a23bb (diff)
mgcp: make sure all endpoints are closed on startup
If the MSC is crashing and restarting, it may leave some endpoints open. The endpoints can not be re-used until they are deleted (DLCX). This patch sends a DLCX to all possible endpoints (usually this is in a countable range) in order to clear possible open endpoints from a previous run Change-Id: I9de2f67ffe08b2d76574ef4470c7a9767ca74702
Diffstat (limited to 'src/libmgcp')
-rw-r--r--src/libmgcp/mgcpgw_client.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libmgcp/mgcpgw_client.c b/src/libmgcp/mgcpgw_client.c
index 0c5b5caf7..4ccff844b 100644
--- a/src/libmgcp/mgcpgw_client.c
+++ b/src/libmgcp/mgcpgw_client.c
@@ -402,7 +402,8 @@ int mgcpgw_client_connect(struct mgcpgw_client *mgcp)
mgcp->remote_addr = htonl(addr.sin_addr.s_addr);
- osmo_wqueue_init(wq, 10);
+ osmo_wqueue_init(wq, (mgcp->actual.last_endpoint - mgcp->actual.first_endpoint) + 10);
+
wq->bfd.when = BSC_FD_READ;
wq->bfd.data = mgcp;
wq->read_cb = mgcp_do_read;