aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/osmo-bsc
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2012-01-27 13:07:13 +0100
committerHarald Welte <laforge@gnumonks.org>2012-01-27 18:11:52 +0100
commit122b6331927dd65d716d71cdf8fcb728cc2475f9 (patch)
tree30243f59ff4a3898f1cc7e4adb68caf62da85295 /openbsc/src/osmo-bsc
parent379761cec4cb9d69c2523b547b3c00716cae13c0 (diff)
bsc_mgcp: Send RSIP for all endpoints when SIGHUP is received
this will be used as quick work-around so osmo-bsc kan trigger RSIP after a re-connect to a MSC requiring RSIP from the MGW. In the ideal world, the MSC (call agent) would comply with the MGCP spec and send AUEP, but well...
Diffstat (limited to 'openbsc/src/osmo-bsc')
-rw-r--r--openbsc/src/osmo-bsc/osmo_bsc_bssap.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_bssap.c b/openbsc/src/osmo-bsc/osmo_bsc_bssap.c
index a59e2f674..0742b0b26 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_bssap.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_bssap.c
@@ -29,6 +29,7 @@
#include <osmocom/gsm/protocol/gsm_08_08.h>
#include <osmocom/gsm/gsm0808.h>
+#include <sys/signal.h>
#include <arpa/inet.h>
static uint16_t read_data16(const uint8_t *data)
@@ -102,6 +103,11 @@ static int bssmap_handle_reset_ack(struct gsm_network *net,
struct msgb *msg, unsigned int length)
{
LOGP(DMSC, LOGL_NOTICE, "Reset ACK from MSC\n");
+
+ /* notify bsc_mgcp to reset all end-points */
+ if (net->msc_data->bsc_mgcp.pid)
+ kill(net->msc_data->bsc_mgcp.pid, SIGHUP);
+
return 0;
}