aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2011-06-25 14:47:57 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2012-05-02 19:24:29 +0200
commitd283ac9cb60aa2157be881e30002a649a2a4d11b (patch)
treef7c755b644a9a15e6ebdb91eccc2303d447be39d /openbsc
parent2ca7b70e043c48c8cd8edf16f30dc427b8466105 (diff)
msc: Only kill connections belonging to the given MSC
When a MSC connection drops, only kill the connections that belong to the given MSC and not all other connections.
Diffstat (limited to 'openbsc')
-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,