lynxis lazus has submitted this change. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/40972?usp=email )
(
1 is the latest approved patch-set. No files were changed between the latest approved patch-set and the submitted one. )Change subject: ranap: Reject InitialUE without RAC IE ......................................................................
ranap: Reject InitialUE without RAC IE
According to 3GPP TS 25.413 clauses 8.22.2 and 9.1.33, RAC IE is mandatory in PS domain.
Change-Id: I7d6b996ddf1c5a7cde1bf06b500d3ed19c6090c6 --- M src/sgsn/gprs_ranap.c 1 file changed, 10 insertions(+), 9 deletions(-)
Approvals: lynxis lazus: Looks good to me, approved Jenkins Builder: Verified
diff --git a/src/sgsn/gprs_ranap.c b/src/sgsn/gprs_ranap.c index 15f5433..0ddb959 100644 --- a/src/sgsn/gprs_ranap.c +++ b/src/sgsn/gprs_ranap.c @@ -379,15 +379,16 @@ return -1; }
- if (ies->presenceMask & INITIALUE_MESSAGEIES_RANAP_RAC_PRESENT) { - ra_id.rac = asn1str_to_u8(&ies->rac); - if (ra_id.rac == OSMO_RESERVED_RAC) { - LOGP(DRANAP, LOGL_ERROR, - "Rejecting RNC with invalid/internally used RAC 0x%02x\n", ra_id.rac); - return -1; - } - } else { - ra_id.rac = OSMO_RESERVED_RAC; + if (!(ies->presenceMask & INITIALUE_MESSAGEIES_RANAP_RAC_PRESENT)) { + LOGP(DRANAP, LOGL_ERROR, "Rejecting InitialUE msg without RAC IE\n"); + return -1; + } + + ra_id.rac = asn1str_to_u8(&ies->rac); + if (ra_id.rac == OSMO_RESERVED_RAC) { + LOGP(DRANAP, LOGL_ERROR, + "Rejecting RNC with invalid/internally used RAC 0x%02x\n", ra_id.rac); + return -1; }
if (iu_grnc_id_parse(&rnc_id, &ies->globalRNC_ID) != 0) {