aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/gprs/gprs_gmm.c
diff options
context:
space:
mode:
authorDaniel Willmann <dwillmann@sysmocom.de>2016-04-08 17:35:53 +0200
committerDaniel Willmann <dwillmann@sysmocom.de>2016-04-08 18:04:04 +0200
commitbae25944247513cbed329ba6d2997412593e981b (patch)
tree78b5316af26ad6cf365c8c34581e316091a0f3e7 /openbsc/src/gprs/gprs_gmm.c
parent5e007d9445b1fe0233b8d4618d6c1a01ec446788 (diff)
gprs: Save integrity protection status inside ue ctx, not mm ctx
Diffstat (limited to 'openbsc/src/gprs/gprs_gmm.c')
-rw-r--r--openbsc/src/gprs/gprs_gmm.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/openbsc/src/gprs/gprs_gmm.c b/openbsc/src/gprs/gprs_gmm.c
index ae0e200ce..2b8581be6 100644
--- a/openbsc/src/gprs/gprs_gmm.c
+++ b/openbsc/src/gprs/gprs_gmm.c
@@ -115,13 +115,12 @@ int sgsn_ranap_iu_event(struct ue_conn_ctx *ctx, enum iu_event_type type, void *
rc = sgsn_ranap_rab_ass_resp(mm, (RANAP_RAB_SetupOrModifiedItemIEs_t *)data);
break;
case IU_EVENT_IU_RELEASE:
- mm->iu.integrity_active = 0;
/* Clean up ue_conn_ctx here */
LOGMMCTXP(LOGL_INFO, mm, "IU release\n");
break;
case IU_EVENT_SECURITY_MODE_COMPLETE:
/* Continue authentication here */
- mm->iu.integrity_active = 1;
+ mm->iu.ue_ctx->integrity_active = 1;
rc = gsm48_gmm_authorize(mm);
break;
default:
@@ -768,7 +767,7 @@ static int gsm48_gmm_authorize(struct sgsn_mm_ctx *ctx)
}
/* The MS is authorized */
- if (ctx->ran_type == MM_CTX_T_UTRAN_Iu && !ctx->iu.integrity_active) {
+ if (ctx->ran_type == MM_CTX_T_UTRAN_Iu && !ctx->iu.ue_ctx->integrity_active) {
return iu_tx_sec_mode_cmd(ctx->iu.ue_ctx, &ctx->auth_triplet, 0);
}