From 1d125c902fa163904dfa5364b82552cbabf6f7dd Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Wed, 4 May 2016 12:40:05 +0200 Subject: subscr_paging_dispatch(): add assertions Make sure that subscr and conn are valid: * a subscr must always be present. * on success, a conn must be present and the subscr must match the conn's subscr. Also check the hooknum. --- openbsc/src/libmsc/gsm_subscriber.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/openbsc/src/libmsc/gsm_subscriber.c b/openbsc/src/libmsc/gsm_subscriber.c index 19c0b0f0e..950c5a00d 100644 --- a/openbsc/src/libmsc/gsm_subscriber.c +++ b/openbsc/src/libmsc/gsm_subscriber.c @@ -66,6 +66,11 @@ static int subscr_paging_dispatch(unsigned int hooknum, unsigned int event, struct gsm_subscriber *subscr = param; struct paging_signal_data sig_data; + OSMO_ASSERT(hooknum == GSM_HOOK_RR_PAGING); + OSMO_ASSERT(subscr); + OSMO_ASSERT(!(conn && (conn->subscr != subscr))); + OSMO_ASSERT(!((event == GSM_PAGING_SUCCEEDED) && !conn)); + LOGP(DPAG, LOGL_DEBUG, "Paging %s for %s (event=%d)\n", event == GSM_PAGING_SUCCEEDED ? "success" : "failure", subscr_name(subscr), event); -- cgit v1.2.3