summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Santos <jrsantos@jonathanrsantos.com>2011-08-11 02:02:19 -0400
committerHarald Welte <laforge@gnumonks.org>2011-10-16 21:36:26 +0200
commit540d4f9adb20ad3baeb1d04b17b7cc80ddf97b0a (patch)
treeda6af9873ae9a7a35fd8264241d85137666e1703
parentfbdcc859c7404ef2a8d46dff5c345ac4a35cfc33 (diff)
gprs: Also check tlli_new in sgsn_mm_ctx_by_tlli
-rw-r--r--openbsc/src/gprs/gprs_sgsn.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/openbsc/src/gprs/gprs_sgsn.c b/openbsc/src/gprs/gprs_sgsn.c
index 85f710500..2e9c43bb3 100644
--- a/openbsc/src/gprs/gprs_sgsn.c
+++ b/openbsc/src/gprs/gprs_sgsn.c
@@ -97,7 +97,7 @@ struct sgsn_mm_ctx *sgsn_mm_ctx_by_tlli(uint32_t tlli,
int tlli_type;
llist_for_each_entry(ctx, &sgsn_mm_ctxts, list) {
- if (tlli == ctx->tlli &&
+ if ((tlli == ctx->tlli || tlli == ctx->tlli_new) &&
ra_id_equals(raid, &ctx->ra))
return ctx;
}
@@ -115,7 +115,8 @@ struct sgsn_mm_ctx *sgsn_mm_ctx_by_tlli(uint32_t tlli,
break;
case TLLI_FOREIGN:
llist_for_each_entry(ctx, &sgsn_mm_ctxts, list) {
- if (tlli == tlli_foreign(ctx->tlli) &&
+ if ((tlli == tlli_foreign(ctx->tlli) ||
+ tlli == tlli_foreign(ctx->tlli_new)) &&
ra_id_equals(raid, &ctx->ra))
return ctx;
}