lynxis lazus has submitted this change. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/40976?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: Create iu_rnc upon rx RESET ......................................................................
ranap: Create iu_rnc upon rx RESET
RANAP RESET, the first message an SGSN usually receives from an RNC, contain the GlobalRNC-ID we can already use to register the iu_rnc object. This allows keeping track of peers since first message, before first InitialUE message is received. Once we start tracking peer RNC state within osmo-sgsn (as we already do in other osmo-* programs), this will be needed.
Change-Id: Iaf31271feb4d88881382ed8594d0d8e20e22b194 --- M src/sgsn/gprs_ranap.c 1 file changed, 4 insertions(+), 0 deletions(-)
Approvals: Jenkins Builder: Verified lynxis lazus: Looks good to me, approved
diff --git a/src/sgsn/gprs_ranap.c b/src/sgsn/gprs_ranap.c index f68e5e0..d101a3e 100644 --- a/src/sgsn/gprs_ranap.c +++ b/src/sgsn/gprs_ranap.c @@ -673,6 +673,7 @@ const RANAP_GlobalRNC_ID_t *grnc_id = NULL; RANAP_Cause_t cause; struct osmo_rnc_id rnc_id = {}; + struct ranap_iu_rnc *rnc; struct msgb *resp;
if (ies->presenceMask & ERRORINDICATIONIES_RANAP_CN_DOMAININDICATOR_PRESENT) { @@ -710,6 +711,9 @@ return sgsn_ranap_iu_tx_error_ind(scu_iups, &ud_prim->calling_addr, &cause); }
+ rnc = iu_rnc_find_or_create(&rnc_id, &ud_prim->calling_addr); + OSMO_ASSERT(rnc); + /* send reset response */ resp = ranap_new_msg_reset_ack(ies->cN_DomainIndicator, grnc_id); if (!resp)