diff options
authorJonathan Santos <jrsantos@jonathanrsantos.com>2011-07-31 12:31:00 -0400
committerJonathan Santos <jrsantos@jonathanrsantos.com>2011-07-31 12:31:00 -0400
commita101a5f43ed33dc0c737ba5906874c24a3063875 (patch)
parentfd7223f7e64673b62b80103191b1bad22c7d4383 (diff)
gprs: Fix retry of ATTACH REQUEST from mobile
If, for some reason, the mobile did not receive an ATTACH ACCEPT it resends an ATTACH REQUEST. The SGSN then would send a new ATTACH ACCEPT. However, after sending the new ATTACH REQUEST, it was unable to find the GMM context if the mobile uses the old foreign tlli (as it is allowed to do). This fixes that.
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gprs/gprs_llc.c b/src/gprs/gprs_llc.c
index c5ff72944..d9b582ec8 100644
--- a/src/gprs/gprs_llc.c
+++ b/src/gprs/gprs_llc.c
@@ -838,7 +838,7 @@ int gprs_llgmm_assign(struct gprs_llc_llme *llme,
/* TLLI Change 8.3.2 */
/* Both TLLI Old and TLLI New are assigned; use New when
* (re)transmitting. Accept toth Old and New on Rx */
- llme->old_tlli = tlli_foreign2local(llme->tlli);
+ llme->old_tlli = tlli_foreign2local(old_tlli);
llme->tlli = tlli_foreign2local(new_tlli);
llme->state = GPRS_LLMS_ASSIGNED;
} else if (old_tlli != 0xffffffff && new_tlli == 0xffffffff) {