From b28285d8e78acb1041c2f60fcc1ecb133a731adc Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Fri, 21 Aug 2009 14:55:57 +0200 Subject: [paging] Implement paging by IMSI. Try to page by IMSI when the TMSI is not set. This will be required to properly support the MSC/BSSMAP. --- openbsc/src/paging.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'openbsc') diff --git a/openbsc/src/paging.c b/openbsc/src/paging.c index b8552133e..ae46186e8 100644 --- a/openbsc/src/paging.c +++ b/openbsc/src/paging.c @@ -93,11 +93,15 @@ static void page_ms(struct gsm_paging_request *request) unsigned int mi_len; unsigned int page_group; - DEBUGP(DPAG, "Going to send paging commands: '%s'\n", - request->subscr->imsi); + DEBUGP(DPAG, "Going to send paging commands: imsi: '%s' tmsi: '0x%x'\n", + request->subscr->imsi, request->subscr->tmsi); + + if (request->subscr->tmsi == GSM_RESERVED_TMSI) + mi_len = gsm48_generate_mid_from_imsi(mi, request->subscr->imsi); + else + mi_len = gsm48_generate_mid_from_tmsi(mi, request->subscr->tmsi); page_group = calculate_group(request->bts, request->subscr); - mi_len = gsm48_generate_mid_from_tmsi(mi, request->subscr->tmsi); rsl_paging_cmd(request->bts, page_group, mi_len, mi, request->chan_type); } -- cgit v1.2.3