diff options
author | Max <msuraev@sysmocom.de> | 2016-06-28 17:39:20 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-07-04 08:42:37 +0000 |
commit | 3955025c2a83a334f65322def52466c1cc86ed89 (patch) | |
tree | 97883e76b75401e0711e4d8b11fc35226d7e78eb /openbsc/src/gprs/gprs_gmm.c | |
parent | 93408ae72719590b9a0df9ce565694956f0cc34a (diff) |
SGSN: move TLLI unassignment into separate function
Change-Id: Ia4df145ab03ebcaad70a13601cff60c488a5de54
Related: OS#1582
Diffstat (limited to 'openbsc/src/gprs/gprs_gmm.c')
-rw-r--r-- | openbsc/src/gprs/gprs_gmm.c | 26 |
1 files changed, 8 insertions, 18 deletions
diff --git a/openbsc/src/gprs/gprs_gmm.c b/openbsc/src/gprs/gprs_gmm.c index 5848a63f5..5db69ddad 100644 --- a/openbsc/src/gprs/gprs_gmm.c +++ b/openbsc/src/gprs/gprs_gmm.c @@ -982,8 +982,7 @@ rejected: if (ctx) mm_ctx_cleanup_free(ctx, "GPRS ATTACH REJ"); else - /* TLLI unassignment */ - gprs_llgmm_assign(llme, llme->tlli, 0xffffffff, GPRS_ALGO_GEA0, NULL); + gprs_llgmm_unassign(llme); return rc; @@ -1286,11 +1285,8 @@ rejected: if (mmctx) mm_ctx_cleanup_free(mmctx, "GPRS RA UPDATE REJ"); else { - if (llme) { - /* TLLI unassignment */ - gprs_llgmm_assign(llme, llme->tlli, 0xffffffff, - GPRS_ALGO_GEA0, NULL); - } + if (llme) + gprs_llgmm_unassign(llme); } return rc; @@ -1323,17 +1319,13 @@ static int gsm0408_rcv_gmm(struct sgsn_mm_ctx *mmctx, struct msgb *msg, /* 4.7.10 */ if (gh->msg_type == GSM48_MT_GMM_STATUS) { /* TLLI unassignment */ - gprs_llgmm_assign(llme, llme->tlli, 0xffffffff, - GPRS_ALGO_GEA0, NULL); + gprs_llgmm_unassign(llme); return 0; } /* Don't reply or establish a LLME on DETACH_ACK */ - if (gh->msg_type == GSM48_MT_GMM_DETACH_ACK) { - /* TLLI unassignment */ - return gprs_llgmm_assign(llme, llme->tlli, 0xffffffff, - GPRS_ALGO_GEA0, NULL); - } + if (gh->msg_type == GSM48_MT_GMM_DETACH_ACK) + return gprs_llgmm_unassign(llme); gprs_llgmm_reset(llme); @@ -1343,8 +1335,7 @@ static int gsm0408_rcv_gmm(struct sgsn_mm_ctx *mmctx, struct msgb *msg, rc = gsm48_rx_gmm_det_req(NULL, msg); /* TLLI unassignment */ - gprs_llgmm_assign(llme, llme->tlli, 0xffffffff, - GPRS_ALGO_GEA0, NULL); + gprs_llgmm_unassign(llme); return rc; } @@ -1352,8 +1343,7 @@ static int gsm0408_rcv_gmm(struct sgsn_mm_ctx *mmctx, struct msgb *msg, rc = sgsn_force_reattach_oldmsg(msg); /* TLLI unassignment */ - gprs_llgmm_assign(llme, llme->tlli, 0xffffffff, - GPRS_ALGO_GEA0, NULL); + gprs_llgmm_unassign(llme); return rc; } |