From 4b1626bf249f10e9fb2595faef88d3cf8faf6391 Mon Sep 17 00:00:00 2001 From: Francisco Paisana Date: Tue, 29 Sep 2020 19:25:37 +0100 Subject: [PATCH] fix eutra packing recovering during reestablishment in the srsenb --- srsenb/src/stack/rrc/rrc_mobility.cc | 5 +++++ srsenb/src/stack/rrc/rrc_ue.cc | 13 ++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/srsenb/src/stack/rrc/rrc_mobility.cc b/srsenb/src/stack/rrc/rrc_mobility.cc index eb273ac4f..961a6ee74 100644 --- a/srsenb/src/stack/rrc/rrc_mobility.cc +++ b/srsenb/src/stack/rrc/rrc_mobility.cc @@ -1210,6 +1210,11 @@ bool rrc::ue::rrc_mobility::apply_ho_prep_cfg(const ho_prep_info_r8_ies_s& ho rrc_log->warning("Failed to unpack UE EUTRA Capability\n"); continue; } + if (rrc_log->get_level() == srslte::LOG_LEVEL_DEBUG) { + asn1::json_writer js{}; + rrc_ue->eutra_capabilities.to_json(js); + rrc_log->debug_long("New rnti=0x%x EUTRA capabilities: %s\n", rrc_ue->rnti, js.to_string().c_str()); + } rrc_ue->eutra_capabilities_unpacked = true; } } diff --git a/srsenb/src/stack/rrc/rrc_ue.cc b/srsenb/src/stack/rrc/rrc_ue.cc index 9d695d66d..3e86857b8 100644 --- a/srsenb/src/stack/rrc/rrc_ue.cc +++ b/srsenb/src/stack/rrc/rrc_ue.cc @@ -368,7 +368,13 @@ void rrc::ue::handle_rrc_con_reest_req(rrc_conn_reest_request_s* msg) } // Make sure UE capabilities are copied over to new RNTI - eutra_capabilities = parent->users[old_rnti]->eutra_capabilities; + eutra_capabilities = parent->users[old_rnti]->eutra_capabilities; + eutra_capabilities_unpacked = parent->users[old_rnti]->eutra_capabilities_unpacked; + if (parent->rrc_log->get_level() == srslte::LOG_LEVEL_DEBUG) { + asn1::json_writer js{}; + eutra_capabilities.to_json(js); + parent->rrc_log->debug_long("rnti=0x%x EUTRA capabilities: %s\n", rnti, js.to_string().c_str()); + } old_reest_rnti = old_rnti; state = RRC_STATE_WAIT_FOR_CON_REEST_COMPLETE; @@ -745,6 +751,11 @@ bool rrc::ue::handle_ue_cap_info(ue_cap_info_s* msg) parent->rrc_log->error("Failed to unpack EUTRA capabilities message\n"); return false; } + if (parent->rrc_log->get_level() == srslte::LOG_LEVEL_DEBUG) { + asn1::json_writer js{}; + eutra_capabilities.to_json(js); + parent->rrc_log->debug_long("rnti=0x%x EUTRA capabilities: %s\n", rnti, js.to_string().c_str()); + } eutra_capabilities_unpacked = true; ue_capabilities = srslte::make_rrc_ue_capabilities(eutra_capabilities);