aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2009-06-10 02:52:31 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2009-06-10 06:40:47 +0200
commitcd1f751e4c28d12fe0b6e77bd7448206990417f8 (patch)
tree1f832348ecc8123f950426d187772097ff5dbf9e
parentbe1431076d9397f009dc2596bd2320b346dcd163 (diff)
Search for BTS's in the Location Area of the subscriber we call
Search for the MS at BTS in the location area of the called_subscr. This makes the case work where caller and receiver are not in the same location area. In fact this looks like a breach of a BSC/MSC separation, I have no idea if in true networks a BSC is managing BTS in different location areas.
-rw-r--r--openbsc/src/gsm_04_08.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/openbsc/src/gsm_04_08.c b/openbsc/src/gsm_04_08.c
index 0630764a2..462e67af8 100644
--- a/openbsc/src/gsm_04_08.c
+++ b/openbsc/src/gsm_04_08.c
@@ -1357,8 +1357,7 @@ static int gsm48_cc_rx_setup(struct msgb *msg)
/* Start paging subscriber on all BTS in LAC of subscriber */
bts = NULL;
do {
- bts = gsm_bts_by_lac(msg->trx->bts->network,
- msg->lchan->subscr->lac, bts);
+ bts = gsm_bts_by_lac(msg->trx->bts->network, called_subscr->lac, bts);
if (!bts)
break;
/* Trigger paging */