aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/paging.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2010-06-17 15:05:57 +0800
committerHolger Hans Peter Freyther <zecke@selfish.org>2010-06-17 15:05:57 +0800
commit86481c29d4cc9bed3010db466be6e0757458b031 (patch)
treea8b74f246eece8021115bce1b8c4f21bd97d5a2b /openbsc/src/paging.c
parent7b4a53d537a1d6cb6bfff2c65e3252c2a4ac0aa7 (diff)
bsc_api: Make paging/silent call work with the subscriber_connection
Do not use the lchan for the paging but operate on the subscriber_connection, change the signals too to not carry the lchan but the subscriber connection... the silent call and vty code still assume there is a lchan inside the subscriber connection.
Diffstat (limited to 'openbsc/src/paging.c')
-rw-r--r--openbsc/src/paging.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/openbsc/src/paging.c b/openbsc/src/paging.c
index ca3767864..eee2aaf98 100644
--- a/openbsc/src/paging.c
+++ b/openbsc/src/paging.c
@@ -194,7 +194,7 @@ static void paging_T3113_expired(void *data)
sig_data.subscr = req->subscr;
sig_data.bts = req->bts;
- sig_data.lchan = NULL;
+ sig_data.conn = NULL;
/* must be destroyed before calling cbfn, to prevent double free */
counter_inc(req->bts->network->stats.paging.expired);
@@ -276,7 +276,7 @@ int paging_request(struct gsm_network *network, struct gsm_subscriber *subscr,
/* we consciously ignore the type of the request here */
static void _paging_request_stop(struct gsm_bts *bts, struct gsm_subscriber *subscr,
- struct gsm_lchan *lchan)
+ struct gsm_subscriber_connection *conn)
{
struct gsm_bts_paging_state *bts_entry = &bts->paging;
struct gsm_paging_request *req, *req2;
@@ -284,10 +284,10 @@ static void _paging_request_stop(struct gsm_bts *bts, struct gsm_subscriber *sub
llist_for_each_entry_safe(req, req2, &bts_entry->pending_requests,
entry) {
if (req->subscr == subscr) {
- if (lchan && req->cbfn) {
+ if (conn && req->cbfn) {
LOGP(DPAG, LOGL_DEBUG, "Stop paging on bts %d, calling cbfn.\n", bts->nr);
req->cbfn(GSM_HOOK_RR_PAGING, GSM_PAGING_SUCCEEDED,
- NULL, lchan, req->cbfn_param);
+ NULL, conn, req->cbfn_param);
} else
LOGP(DPAG, LOGL_DEBUG, "Stop paging on bts %d silently.\n", bts->nr);
paging_remove_request(&bts->paging, req);
@@ -298,12 +298,12 @@ static void _paging_request_stop(struct gsm_bts *bts, struct gsm_subscriber *sub
/* Stop paging on all other bts' */
void paging_request_stop(struct gsm_bts *_bts, struct gsm_subscriber *subscr,
- struct gsm_lchan *lchan)
+ struct gsm_subscriber_connection *conn)
{
struct gsm_bts *bts = NULL;
if (_bts)
- _paging_request_stop(_bts, subscr, lchan);
+ _paging_request_stop(_bts, subscr, conn);
do {
/*