aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--openbsc/src/osmo-bsc/osmo_bsc_sccp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_sccp.c b/openbsc/src/osmo-bsc/osmo_bsc_sccp.c
index d25275271..5c76a8ecc 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_sccp.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_sccp.c
@@ -269,8 +269,10 @@ static void bsc_close_connections(struct bsc_msc_connection *msc_con)
{
struct osmo_bsc_sccp_con *con, *tmp;
- llist_for_each_entry_safe(con, tmp, &active_connections, entry)
- bsc_sccp_force_free(con);
+ llist_for_each_entry_safe(con, tmp, &active_connections, entry) {
+ if (con->msc->msc_con == msc_con)
+ bsc_sccp_force_free(con);
+ }
}
static int handle_msc_signal(unsigned int subsys, unsigned int signal,