diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2016-05-04 15:36:56 +0200 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2016-05-04 16:06:59 +0200 |
commit | 3cda07754184867c49b7116f6dc000d03c0e33ea (patch) | |
tree | 6ea9544fe50aa9f66f0c80c78b4a676024a778f5 /openbsc/src/libmsc | |
parent | c3da27fa983272d25a1f7fe8b53fac6ebf2c7cbd (diff) |
IuCS: properly clean up conn on release
Don't call msc_subscr_con_free() directly, instead use
gsm0408_clear_request(), which properly cleans up all pending operations
before freeing the connection.
Diffstat (limited to 'openbsc/src/libmsc')
-rw-r--r-- | openbsc/src/libmsc/iu_cs.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/openbsc/src/libmsc/iu_cs.c b/openbsc/src/libmsc/iu_cs.c index 38648341e..13f29d07c 100644 --- a/openbsc/src/libmsc/iu_cs.c +++ b/openbsc/src/libmsc/iu_cs.c @@ -125,7 +125,7 @@ int gsm0408_rcvmsg_iucs(struct gsm_network *network, struct msgb *msg, " %s from LAC %d to %d\n", subscr_name(conn->subscr), conn->lac, *lac); /* Deallocate conn with previous LAC */ - msc_subscr_con_free(conn); + gsm0408_clear_request(conn, 0); /* At this point we could be tolerant and allocate a new * connection, but changing the LAC within the same connection * is shifty. Rather cancel everything. */ @@ -161,7 +161,7 @@ int gsm0408_rcvmsg_iucs(struct gsm_network *network, struct msgb *msg, rc = msc_compl_l3(conn, msg, 0); if (rc != MSC_CONN_ACCEPT) { - msc_subscr_con_free(conn); + gsm0408_clear_request(conn, 0); rc = -1; } else |