pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/30274 ) Change subject: lcs: Fix passing NULL bsc_subscr to paging_request_cancel() ...................................................................... lcs: Fix passing NULL bsc_subscr to paging_request_cancel() This is triggered by BSC_Tests.TC_lcs_loc_req_no_subscriber. Before, the NULL ptr was not a problem because paging_request_cancel() only used the pointer to compare it against other pointers, but never accessing it. A follow-up patch is, however, changing the implementation to optimize the lookup by using the subscriber pointer, which generates a crash. Related: SYS#6200 Change-Id: Id0de43ac5bde0f52f258de6c9bf58b173301c8db --- M src/osmo-bsc/lcs_loc_req.c M src/osmo-bsc/paging.c 2 files changed, 3 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/74/30274/1 diff --git a/src/osmo-bsc/lcs_loc_req.c b/src/osmo-bsc/lcs_loc_req.c index d53f2ab..bb0c5e2 100644 --- a/src/osmo-bsc/lcs_loc_req.c +++ b/src/osmo-bsc/lcs_loc_req.c @@ -514,7 +514,8 @@ }; /* If we're paging this subscriber for LCS, stop paging. */ - paging_request_cancel(lcs_loc_req->conn->bsub, BSC_PAGING_FOR_LCS); + if (lcs_loc_req->conn->bsub) + paging_request_cancel(lcs_loc_req->conn->bsub, BSC_PAGING_FOR_LCS); /* Send Perform Location Abort to SMLC, only if we got started on the Lb */ if (lcs_loc_req->conn->lcs.lb.state == SUBSCR_SCCP_ST_CONNECTED) diff --git a/src/osmo-bsc/paging.c b/src/osmo-bsc/paging.c index cd846b8..fa2ffb7 100644 --- a/src/osmo-bsc/paging.c +++ b/src/osmo-bsc/paging.c @@ -578,6 +578,7 @@ void paging_request_cancel(struct bsc_subscr *bsub, enum bsc_paging_reason reasons) { struct gsm_bts *bts; + OSMO_ASSERT(bsub); llist_for_each_entry(bts, &bsc_gsmnet->bts_list, list) { struct gsm_paging_request *req, *req2; -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/30274 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: Id0de43ac5bde0f52f258de6c9bf58b173301c8db Gerrit-Change-Number: 30274 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin@sysmocom.de> Gerrit-MessageType: newchange