aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2019-06-15 15:15:55 +0700
committerVadim Yanitskiy <axilirator@gmail.com>2019-06-15 15:38:03 +0700
commit04bbfb83d4247c351dc15aede49ac1f8c9d5dcb7 (patch)
treed52868381e9a1f7dda249253adce61d9922ef45a
parent20edc9723e267d461df6759d77d5b5364bdfa511 (diff)
libmsc/gsm_09_11.c: fix: return trans from establish_nc_ss_trans()
It is expected that establish_nc_ss_trans() returns an allocated transaction in successful case, or NULL in case of error. The function assumes two scenarios: - the subscriber already has an active RAN connection, - RAN connection needs to be established (Paging). In the first case, a pointer to the transaction is returned as expected, but in case of Paging, NULL has always been returned, even if there were no errors. Let's fix this. Change-Id: I9dcee64dd0b435ef29630c223132b81724701f93
-rw-r--r--src/libmsc/gsm_09_11.c2
-rw-r--r--tests/msc_vlr/msc_vlr_test_ss.err2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/libmsc/gsm_09_11.c b/src/libmsc/gsm_09_11.c
index 3de933c31..39b9711e4 100644
--- a/src/libmsc/gsm_09_11.c
+++ b/src/libmsc/gsm_09_11.c
@@ -409,7 +409,7 @@ static struct gsm_trans *establish_nc_ss_trans(struct gsm_network *net,
msgb_tlv_put(trans->ss.msg, GSM0480_IE_FACILITY,
gsup_msg->ss_info_len, gsup_msg->ss_info);
- return NULL;
+ return trans;
}
/* NC SS specific transaction release.
diff --git a/tests/msc_vlr/msc_vlr_test_ss.err b/tests/msc_vlr/msc_vlr_test_ss.err
index 976b26395..1199cf10e 100644
--- a/tests/msc_vlr/msc_vlr_test_ss.err
+++ b/tests/msc_vlr/msc_vlr_test_ss.err
@@ -375,7 +375,7 @@ DPAG Paging: IMSI-901700000004620:MSISDN-46071 for GSM 09.11 SS/USSD: Starting p
paging request (SIGNALLING_HIGH_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
strcmp(paging_expecting_imsi, vsub->imsi) == 0
DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + Paging: now used by 5 (attached,_test_ss_ussd_no,gsm0911_gsup_rx,NCSS,Paging)
-<-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: vlr_gsupc_read_cb() returns -22
+<-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: vlr_gsupc_read_cb() returns 0
llist_count(&vsub->cs.requests) == 1
DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - _test_ss_ussd_no: now used by 4 (attached,gsm0911_gsup_rx,NCSS,Paging)
paging_sent == 1