jolly has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-msc/+/38513?usp=email )
Change subject: Release BSS connection when CC transaction fails ......................................................................
Release BSS connection when CC transaction fails
When the creation of the transaction structure fails, the MSC will send a RELEASE COMPLETE message.
This patch ensures that the MSC_A use counter is decremented, so that the BSS connection is released, if it is not used by any other transaction.
Without this patch, the msc_a_fsm would wait 5 seconds for an initial transaction before releasing the BSS connection.
Related: OS#6427 Change-Id: Icb893d5c1ce4c77a29259ce66189576dcaa5a44a --- M src/libmsc/gsm_04_08_cc.c 1 file changed, 3 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/13/38513/1
diff --git a/src/libmsc/gsm_04_08_cc.c b/src/libmsc/gsm_04_08_cc.c index dafb41c..2557bef 100644 --- a/src/libmsc/gsm_04_08_cc.c +++ b/src/libmsc/gsm_04_08_cc.c @@ -2659,6 +2659,9 @@ rc = gsm48_tx_simple(msc_a, GSM48_PDISC_CC | (transaction_id << 4), GSM48_MT_CC_RELEASE_COMPL); + /* Decrement use counter that has been incremented by CM Service Request (CC). + * If there is no other service request, the BSS connection will be released. */ + msc_a_put(msc_a, MSC_A_USE_CM_SERVICE_CC); return -ENOMEM; } if (osmo_fsm_inst_dispatch(msc_a->c.fi, MSC_A_EV_TRANSACTION_ACCEPTED, trans)) {