From 35c178e84d25a216a5c2d9bd1320d072e36937fa Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Mon, 19 Aug 2024 18:22:40 +0200 Subject: [PATCH] llc: Mark old/current tlli as all 1's when unassigning LLME TS 44.064 section 8.3.3 (and other sections) talk about special unassigned value of "all 1's", but I couldn't find any reference to a "all 0's" specific value/meaning. In practice in the code this may not be super important since those values may not ve checked due to the FSM state, but in any case they are initially set to all 1's, so it makes total sense to re-set them to the same unassigned value instead of a randomly chosen all 0's value. Change-Id: I660c8d0ef08b34f8cb74fd51b5c59e5628d687ae --- src/sgsn/gprs_llc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sgsn/gprs_llc.c b/src/sgsn/gprs_llc.c index 6f563851f..82e876d2e 100644 --- a/src/sgsn/gprs_llc.c +++ b/src/sgsn/gprs_llc.c @@ -1112,7 +1112,7 @@ int gprs_llgmm_assign(struct gprs_llc_llme *llme, llme->state = GPRS_LLMS_ASSIGNED; } else if (old_tlli != TLLI_UNASSIGNED && new_tlli == TLLI_UNASSIGNED) { /* TLLI Unassignment 8.3.3) */ - llme->tlli = llme->old_tlli = 0; + llme->tlli = llme->old_tlli = TLLI_UNASSIGNED; llme->state = GPRS_LLMS_UNASSIGNED; for (i = 0; i < ARRAY_SIZE(llme->lle); i++) { struct gprs_llc_lle *l = &llme->lle[i];