mirror of https://github.com/PentHertz/srsLTE.git
fix set of rrc reconf message radio resource cfg fields
This commit is contained in:
parent
890113fd32
commit
2ef1e286b2
|
@ -90,7 +90,7 @@ public:
|
|||
const std::map<uint8_t, erab_t>& get_erabs() const { return erabs; }
|
||||
const asn1::rrc::drb_to_add_mod_list_l& get_established_drbs() const { return current_drbs; }
|
||||
const asn1::rrc::srb_to_add_mod_list_l& get_established_srbs() const { return current_srbs; }
|
||||
srslte::span<const asn1::rrc::drb_to_add_mod_s> get_pending_addmod_drbs() const { return drbs_to_add; }
|
||||
const asn1::rrc::drb_to_add_mod_list_l& get_pending_addmod_drbs() const { return drbs_to_add; }
|
||||
srslte::span<const uint8_t> get_pending_rem_drbs() const { return drbs_to_release; }
|
||||
srslte::span<const asn1::rrc::srb_to_add_mod_s> get_pending_addmod_srbs() const { return srbs_to_add; }
|
||||
|
||||
|
|
|
@ -719,13 +719,13 @@ bool rrc::ue::rrc_mobility::start_ho_preparation(uint32_t target_eci,
|
|||
empty_meascfg.compute_diff_meas_cfg(target_var_meas, &hoprep_r8.as_cfg.source_meas_cfg);
|
||||
// - fill source RR Config
|
||||
fill_rr_cfg_ded_setup(hoprep_r8.as_cfg.source_rr_cfg, rrc_enb->cfg, rrc_ue->cell_ded_list);
|
||||
// Add already established SRBs to the message
|
||||
hoprep_r8.as_cfg.source_rr_cfg.srb_to_add_mod_list_present = true;
|
||||
hoprep_r8.as_cfg.source_rr_cfg.srb_to_add_mod_list = rrc_ue->bearer_list.get_established_srbs();
|
||||
// Get DRBs configuration
|
||||
hoprep_r8.as_cfg.source_rr_cfg.drb_to_add_mod_list = rrc_ue->bearer_list.get_established_drbs();
|
||||
hoprep_r8.as_cfg.source_rr_cfg.drb_to_add_mod_list_present =
|
||||
hoprep_r8.as_cfg.source_rr_cfg.drb_to_add_mod_list.size() > 0;
|
||||
fill_rr_cfg_ded_reconf(hoprep_r8.as_cfg.source_rr_cfg,
|
||||
hoprep_r8.as_cfg.source_rr_cfg,
|
||||
rrc_enb->cfg,
|
||||
rrc_ue->cell_ded_list,
|
||||
rrc_ue->bearer_list,
|
||||
rrc_ue->ue_capabilities,
|
||||
reconf_cause::handover);
|
||||
// Get security cfg
|
||||
hoprep_r8.as_cfg.source_security_algorithm_cfg = rrc_ue->ue_security_cfg.get_security_algorithm_cfg();
|
||||
hoprep_r8.as_cfg.source_ue_id.from_number(rrc_ue->rnti);
|
||||
|
|
|
@ -62,11 +62,11 @@ srb_to_add_mod_s* add_srb(srb_to_add_mod_list_l& srbs, uint8_t srb_id)
|
|||
void fill_srbs_reconf(srb_to_add_mod_list_l& srbs, const srb_to_add_mod_list_l& current_srbs)
|
||||
{
|
||||
// NOTE: In case of Handover, the Reconf includes SRB1
|
||||
if (not srslte::find_rrc_obj_id(current_srbs, 1)) {
|
||||
if (srslte::find_rrc_obj_id(current_srbs, 1) == current_srbs.end()) {
|
||||
add_srb(srbs, 1);
|
||||
}
|
||||
|
||||
if (not srslte::find_rrc_obj_id(current_srbs, 2)) {
|
||||
if (srslte::find_rrc_obj_id(current_srbs, 2) == current_srbs.end()) {
|
||||
add_srb(srbs, 2);
|
||||
}
|
||||
}
|
||||
|
@ -335,7 +335,7 @@ void fill_rr_cfg_ded_reconf(asn1::rrc::rr_cfg_ded_s& rr_cfg,
|
|||
|
||||
// Update DRBs if required
|
||||
srslte::compute_cfg_diff(current_rr_cfg.drb_to_add_mod_list,
|
||||
bearers.get_established_drbs(),
|
||||
bearers.get_pending_addmod_drbs(),
|
||||
rr_cfg.drb_to_add_mod_list,
|
||||
rr_cfg.drb_to_release_list);
|
||||
rr_cfg.drb_to_add_mod_list_present = rr_cfg.drb_to_add_mod_list.size() > 0;
|
||||
|
|
Loading…
Reference in New Issue