aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/paging.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2009-08-19 12:53:57 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2009-09-28 05:14:25 +0200
commit2223025e218263af6e1157ef1eeca1686cefe4b9 (patch)
treec3d9f36d3d14bf650f86b85d4bcc83492c741e1b /openbsc/src/paging.c
parent6b0b103bdcfaf15ca1c33d3c61f211cb40661e92 (diff)
[tmsi] Make the tmsi a 4 octet number
tmsi is four octets long, there is no need to make it a string and then jump through hoops to convert it to a number. Keep the database using it as a string to benefit from the NULL handling of the db. Introduce the reserved tmsi which has all bits set to 1 according to GSM 03.03 ยง2.4 and start checking for it and make sure the db code will never allocate such a tmsi.
Diffstat (limited to 'openbsc/src/paging.c')
-rw-r--r--openbsc/src/paging.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/openbsc/src/paging.c b/openbsc/src/paging.c
index fd0611a14..b8552133e 100644
--- a/openbsc/src/paging.c
+++ b/openbsc/src/paging.c
@@ -90,7 +90,6 @@ static void paging_remove_request(struct gsm_bts_paging_state *paging_bts,
static void page_ms(struct gsm_paging_request *request)
{
u_int8_t mi[128];
- unsigned long int tmsi;
unsigned int mi_len;
unsigned int page_group;
@@ -98,8 +97,7 @@ static void page_ms(struct gsm_paging_request *request)
request->subscr->imsi);
page_group = calculate_group(request->bts, request->subscr);
- tmsi = strtoul(request->subscr->tmsi, NULL, 10);
- mi_len = gsm48_generate_mid_from_tmsi(mi, tmsi);
+ mi_len = gsm48_generate_mid_from_tmsi(mi, request->subscr->tmsi);
rsl_paging_cmd(request->bts, page_group, mi_len, mi,
request->chan_type);
}