aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2009-06-04 16:58:39 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2009-06-10 06:51:46 +0200
commit5c85ef92954a77f10710f6f9fcb6d49b147fc476 (patch)
treef26cbf3e66dfc76fcad843bfe60b81631adc500b /openbsc
parent2c451238070bf9ceec4601c55160db8e0da0d1cc (diff)
Remove use_lchan and put_lchan from location updating request paths
Andreas Eversberg is suspecting that some of these messages are not balanced and we are seeing a leak here. The general location updating request is guarded by the "location updating request" object inside the lchan that will keep the channel open for at least five seconds to get all the information we need.
Diffstat (limited to 'openbsc')
-rw-r--r--openbsc/src/gsm_04_08.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/openbsc/src/gsm_04_08.c b/openbsc/src/gsm_04_08.c
index 5702dca1..804c15de 100644
--- a/openbsc/src/gsm_04_08.c
+++ b/openbsc/src/gsm_04_08.c
@@ -578,11 +578,6 @@ static int mm_rx_id_resp(struct msgb *msg)
DEBUGP(DMM, "IDENTITY RESPONSE: mi_type=0x%02x MI(%s)\n",
mi_type, mi_string);
- /*
- * Rogue messages could trick us but so is life
- */
- put_lchan(lchan);
-
switch (mi_type) {
case GSM_MI_TYPE_IMSI:
if (!lchan->subscr)
@@ -672,7 +667,6 @@ static int mm_rx_loc_upd_req(struct msgb *msg)
switch (mi_type) {
case GSM_MI_TYPE_IMSI:
/* we always want the IMEI, too */
- use_lchan(lchan);
rc = mm_tx_identity_req(lchan, GSM_MI_TYPE_IMEI);
lchan->loc_operation->waiting_for_imei = 1;
@@ -681,7 +675,6 @@ static int mm_rx_loc_upd_req(struct msgb *msg)
break;
case GSM_MI_TYPE_TMSI:
/* we always want the IMEI, too */
- use_lchan(lchan);
rc = mm_tx_identity_req(lchan, GSM_MI_TYPE_IMEI);
lchan->loc_operation->waiting_for_imei = 1;
@@ -689,7 +682,6 @@ static int mm_rx_loc_upd_req(struct msgb *msg)
subscr = subscr_get_by_tmsi(mi_string);
if (!subscr) {
/* send IDENTITY REQUEST message to get IMSI */
- use_lchan(lchan);
rc = mm_tx_identity_req(lchan, GSM_MI_TYPE_IMSI);
lchan->loc_operation->waiting_for_imsi = 1;
}