diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2018-03-12 23:59:07 +0100 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2018-03-22 04:35:28 +0000 |
commit | d6a769b51cb01f0a93fda9c792d7e1367e8e027b (patch) | |
tree | f4243698fe0dcf0b7b8390a74e368ac6ee937d3f /include | |
parent | 3cffc2055d01b55e03e04c6d125581be93916ed0 (diff) |
trans_free: tear down conn when last transaction is done
In trans_free(), call subscr_conn_release_when_unused(), so that we are sure to
clean up after the last transaction is done.
This fixes an error where a conn lingered after a CC failure, because that code
path forgot to trigger cleanup.
Rationale: so far we were triggering the release check after each DTAP dispatch
(compl_l3 and "normal" DTAP), which is sufficient for properly closed
transactions. We also need a check for when a timeout clears an erratic trans.
Adjust test expectation of test_call_mo_to_unknown_timeout to show that the
error is now fixed.
msc_vlr_test_reject_concurrency now sees an additional release checking event
when the SMS transaction is done, which is expected and does not affect the
test otherwise.
Related: OS#2779
Change-Id: I46ff2e9b09b67e4e0d79cccf8c04936f17281fcb
Diffstat (limited to 'include')
-rw-r--r-- | include/osmocom/msc/osmo_msc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/osmocom/msc/osmo_msc.h b/include/osmocom/msc/osmo_msc.h index 168f68f91..6fe529e3f 100644 --- a/include/osmocom/msc/osmo_msc.h +++ b/include/osmocom/msc/osmo_msc.h @@ -110,4 +110,6 @@ void _msc_subscr_conn_put(struct gsm_subscriber_connection *conn, void msc_stop_paging(struct vlr_subscr *vsub); +void subscr_conn_release_when_unused(struct gsm_subscriber_connection *conn); + #endif |