pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-gprs/+/32738 )
Change subject: sm: Allow passing old RAI during attach ......................................................................
sm: Allow passing old RAI during attach
This is stored by the MS and hence shall be passed by the application.
Change-Id: Icd357d8c7f4848441da011d59a4e520785d64779 --- M include/osmocom/gprs/sm/sm_prim.h M src/sm/sm.c M src/sm/sm_prim.c 3 files changed, 15 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/38/32738/1
diff --git a/include/osmocom/gprs/sm/sm_prim.h b/include/osmocom/gprs/sm/sm_prim.h index 0cfc5bb..d9be348 100644 --- a/include/osmocom/gprs/sm/sm_prim.h +++ b/include/osmocom/gprs/sm/sm_prim.h @@ -90,6 +90,7 @@ struct { uint32_t allocated_ptmsi; uint32_t allocated_tlli; + struct gprs_ra_id rai; } gmm; } acc; struct { diff --git a/src/sm/sm.c b/src/sm/sm.c index b13559c..c5520bf 100644 --- a/src/sm/sm.c +++ b/src/sm/sm.c @@ -225,6 +225,7 @@ memcpy(sm_prim_tx->smreg.pdp_act_cnf.acc.qos, &sme->qos, sme->qos_len); sm_prim_tx->smreg.pdp_act_cnf.acc.gmm.allocated_ptmsi = sme->ms->gmm.ptmsi; sm_prim_tx->smreg.pdp_act_cnf.acc.gmm.allocated_tlli = sme->ms->gmm.tlli; + memcpy(&sm_prim_tx->smreg.pdp_act_cnf.acc.gmm.rai, &sme->ms->gmm.ra, sizeof(sme->ms->gmm.ra)); } else { sm_prim_tx->smreg.pdp_act_cnf.rej.cause = cause; } diff --git a/src/sm/sm_prim.c b/src/sm/sm_prim.c index db6b174..ea84d3e 100644 --- a/src/sm/sm_prim.c +++ b/src/sm/sm_prim.c @@ -481,6 +481,8 @@ sme->ms->gmm.ptmsi = gmm_prim->gmmsm.establish_cnf.acc.allocated_ptmsi; /* Set allocated TLLI: */ sme->ms->gmm.tlli = gmm_prim->gmmsm.establish_cnf.acc.allocated_tlli; + /* Set the current RAI: */ + memcpy(&sme->ms->gmm.ra, &gmm_prim->gmmsm.establish_cnf.acc.rai, sizeof(sme->ms->gmm.ra)); rc = osmo_fsm_inst_dispatch(sme->ms_fsm.fi, GPRS_SM_MS_EV_RX_GMM_ESTABLISH_CNF, NULL); } else { rc = osmo_fsm_inst_dispatch(sme->ms_fsm.fi, GPRS_SM_MS_EV_RX_GMM_ESTABLISH_REJ, NULL);