diff --git a/srsgnb/hdr/stack/ngap/ngap.h b/srsgnb/hdr/stack/ngap/ngap.h index 86b3da74a..146b12203 100644 --- a/srsgnb/hdr/stack/ngap/ngap.h +++ b/srsgnb/hdr/stack/ngap/ngap.h @@ -133,7 +133,7 @@ private: // TS 38.413 - Section 9.2.6.3 - NG Setup Failure bool handle_ng_setup_failure(const asn1::ngap_nr::ng_setup_fail_s& msg); // TS 38.413 - Section 9.2.2.5 - UE Context Release Command - bool handle_ue_ctxt_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg); + bool handle_ue_context_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg); // TS 38.413 - Section 9.2.2.1 - Initial Context Setup Request bool handle_initial_ctxt_setup_request(const asn1::ngap_nr::init_context_setup_request_s& msg); // TS 38.413 - Section 9.2.1.1 - PDU Session Resource Setup Request diff --git a/srsgnb/hdr/stack/ngap/ngap_ue.h b/srsgnb/hdr/stack/ngap/ngap_ue.h index f51e2722d..c33b5094f 100644 --- a/srsgnb/hdr/stack/ngap/ngap_ue.h +++ b/srsgnb/hdr/stack/ngap/ngap_ue.h @@ -51,11 +51,12 @@ public: // TS 38.413 - Section 9.2.2.4 - UE Context Release Request bool send_ue_context_release_request(asn1::ngap_nr::cause_c cause); // TS 38.413 - Section 9.2.2.5 - UE Context Release Command - bool handle_ue_ctxt_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg); + bool handle_ue_context_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg); // TS 38.413 - Section 9.2.1.1 - PDU Session Resource Setup Request bool handle_pdu_session_res_setup_request(const asn1::ngap_nr::pdu_session_res_setup_request_s& msg); - bool was_uectxtrelease_requested() const { return release_requested; } + /// Checks if a UE Context Release Request was already sent + bool was_ue_context_release_requested() const { return release_requested; } void notify_rrc_reconf_complete(const bool reconf_complete_outcome); ngap_ue_ctxt_t ctxt = {}; diff --git a/srsgnb/hdr/stack/ngap/ngap_ue_bearer_manager.h b/srsgnb/hdr/stack/ngap/ngap_ue_bearer_manager.h index bb249b364..0f896f04a 100644 --- a/srsgnb/hdr/stack/ngap/ngap_ue_bearer_manager.h +++ b/srsgnb/hdr/stack/ngap/ngap_ue_bearer_manager.h @@ -56,12 +56,13 @@ public: int reset_pdu_sessions(uint16_t rnti); - const std::map& pdu_sessions() const { return pdu_session_list; } + using pdu_session_list_t = std::map; + const pdu_session_list_t& pdu_sessions() const { return pdu_session_list; } private: - gtpu_interface_rrc* gtpu = nullptr; - std::map pdu_session_list; - srslog::basic_logger& logger; + gtpu_interface_rrc* gtpu = nullptr; + pdu_session_list_t pdu_session_list; + srslog::basic_logger& logger; std::map next_lcid_list; // Map RNTI to next LCID to be allocated diff --git a/srsgnb/src/stack/ngap/ngap.cc b/srsgnb/src/stack/ngap/ngap.cc index 6dc157fcf..51b620cc2 100644 --- a/srsgnb/src/stack/ngap/ngap.cc +++ b/srsgnb/src/stack/ngap/ngap.cc @@ -432,7 +432,7 @@ bool ngap::handle_initiating_message(const asn1::ngap_nr::init_msg_s& msg) case ngap_elem_procs_o::init_msg_c::types_opts::init_context_setup_request: return handle_initial_ctxt_setup_request(msg.value.init_context_setup_request()); case ngap_elem_procs_o::init_msg_c::types_opts::ue_context_release_cmd: - return handle_ue_ctxt_release_cmd(msg.value.ue_context_release_cmd()); + return handle_ue_context_release_cmd(msg.value.ue_context_release_cmd()); case ngap_elem_procs_o::init_msg_c::types_opts::pdu_session_res_setup_request: return handle_ue_pdu_session_res_setup_request(msg.value.pdu_session_res_setup_request()); default: @@ -547,7 +547,7 @@ bool ngap::handle_initial_ctxt_setup_request(const asn1::ngap_nr::init_context_s return true; } -bool ngap::handle_ue_ctxt_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg) +bool ngap::handle_ue_context_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg) { const asn1::ngap_nr::ue_ngap_id_pair_s& ue_ngap_id_pair = msg.protocol_ies.ue_ngap_ids.value.ue_ngap_id_pair(); @@ -557,9 +557,7 @@ bool ngap::handle_ue_ctxt_release_cmd(const asn1::ngap_nr::ue_context_release_cm return false; } - u->handle_ue_ctxt_release_cmd(msg); - - return true; + return u->handle_ue_context_release_cmd(msg); } bool ngap::handle_ue_pdu_session_res_setup_request(const asn1::ngap_nr::pdu_session_res_setup_request_s& msg) diff --git a/srsgnb/src/stack/ngap/ngap_ue.cc b/srsgnb/src/stack/ngap/ngap_ue.cc index 2a2f0dc1c..1d420877c 100644 --- a/srsgnb/src/stack/ngap/ngap_ue.cc +++ b/srsgnb/src/stack/ngap/ngap_ue.cc @@ -251,7 +251,7 @@ bool ngap::ue::send_ue_context_release_request(asn1::ngap_nr::cause_c cause) return false; } - if (was_uectxtrelease_requested()) { + if (was_ue_context_release_requested()) { // let timeout auto-remove user. return false; } @@ -294,7 +294,7 @@ bool ngap::ue::handle_initial_ctxt_setup_request(const asn1::ngap_nr::init_conte return true; } -bool ngap::ue::handle_ue_ctxt_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg) +bool ngap::ue::handle_ue_context_release_cmd(const asn1::ngap_nr::ue_context_release_cmd_s& msg) { // TODO: Release UE context if (not ue_context_release_proc.launch(msg)) {