Review at  https://gerrit.osmocom.org/5321

paging: paging_flush_bts: be sure pending_requests is initalized

The BSSMAP reset causes the paging requests to be flushed. When
this happens right after startup then calling paging_flush_bts()
may be called when the list bts->paging.pending_requests is not
yet initalized, which causes a segfault.

Call paging_init_if_needed() to be sure that the list is
inizalized (like the other functions also do)

Change-Id: I42ddbfdec6f9d74d858ad13cc38b5b64061d08dc
---
M src/libbsc/paging.c
1 file changed, 2 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/21/5321/1

diff --git a/src/libbsc/paging.c b/src/libbsc/paging.c
index 8d54d0a..e9d122e 100644
--- a/src/libbsc/paging.c
+++ b/src/libbsc/paging.c
@@ -473,6 +473,8 @@
 {
        struct gsm_paging_request *req, *req2;
 
+       paging_init_if_needed(bts);
+
        llist_for_each_entry_safe(req, req2, &bts->paging.pending_requests, 
entry) {
                if (msc && req->msc != msc)
                        continue;

-- 
To view, visit https://gerrit.osmocom.org/5321
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I42ddbfdec6f9d74d858ad13cc38b5b64061d08dc
Gerrit-PatchSet: 1
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Owner: dexter <pma...@sysmocom.de>

Reply via email to