aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/silent_call.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/silent_call.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/silent_call.c')
-rw-r--r--openbsc/src/silent_call.c11
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);