fix: send SNDCP XID only on GERAN Gb contexts

Add a condition for GERAN Gb.

SNDCP and IuPS were developed on separate branches, and the merge results in
code trying to use an llme on a UTRAN Iu context where the llme is NULL,
leading to stack corruption upon PDP ctx act.

Change-Id: Ibb20d738c1b64d36630ce8eceb54c33ba4f1b003
This commit is contained in:
Neels Hofmeyr 2016-09-28 13:44:39 +02:00
parent caeb62d7ff
commit c6a44bbab9
1 changed files with 7 additions and 5 deletions

View File

@ -331,11 +331,13 @@ static int send_act_pdp_cont_acc(struct sgsn_pdp_ctx *pctx)
if (rc < 0)
return rc;
/* Send SNDCP XID to MS */
lle = &pctx->mm->gb.llme->lle[pctx->sapi];
rc = sndcp_sn_xid_req(lle,pctx->nsapi);
if (rc < 0)
return rc;
if (pctx->mm->ran_type == MM_CTX_T_GERAN_Gb) {
/* Send SNDCP XID to MS */
lle = &pctx->mm->gb.llme->lle[pctx->sapi];
rc = sndcp_sn_xid_req(lle,pctx->nsapi);
if (rc < 0)
return rc;
}
return 0;
}