diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-06-17 15:05:57 +0800 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-06-17 15:05:57 +0800 |
commit | 86481c29d4cc9bed3010db466be6e0757458b031 (patch) | |
tree | a8b74f246eece8021115bce1b8c4f21bd97d5a2b /openbsc/src/silent_call.c | |
parent | 7b4a53d537a1d6cb6bfff2c65e3252c2a4ac0aa7 (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/silent_call.c')
-rw-r--r-- | openbsc/src/silent_call.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/openbsc/src/silent_call.c b/openbsc/src/silent_call.c index 00acc1dc4..0471bff3a 100644 --- a/openbsc/src/silent_call.c +++ b/openbsc/src/silent_call.c @@ -36,10 +36,9 @@ /* paging of the requested subscriber has completed */ static int paging_cb_silent(unsigned int hooknum, unsigned int event, - struct msgb *msg, void *_lchan, void *_data) + struct msgb *msg, void *_conn, void *_data) { - struct gsm_subscriber_connection *conn; - struct gsm_lchan *lchan = _lchan; + struct gsm_subscriber_connection *conn = _conn; struct scall_signal_data sigdata; int rc; @@ -48,15 +47,13 @@ static int paging_cb_silent(unsigned int hooknum, unsigned int event, DEBUGP(DSMS, "paging_cb_silent: "); - conn = &lchan->conn; - - sigdata.lchan = lchan; + sigdata.conn = conn; sigdata.data = _data; switch (event) { case GSM_PAGING_SUCCEEDED: DEBUGPC(DSMS, "success, using Timeslot %u on ARFCN %u\n", - lchan->ts->nr, lchan->ts->trx->arfcn); + conn->lchan->ts->nr, conn->lchan->ts->trx->arfcn); conn->silent_call = 1; /* increment lchan reference count */ dispatch_signal(SS_SCALL, S_SCALL_SUCCESS, &sigdata); |