enb,ngap: extend type to store AMF id to 64bit

AMF is up to 40bit long
master
Andre Puschmann 3 years ago
parent 6984159c6f
commit e2efb88415

@ -154,7 +154,7 @@ private:
ue* find_ue_rnti(uint16_t rnti); ue* find_ue_rnti(uint16_t rnti);
ue* find_ue_gnbid(uint32_t gnbid); ue* find_ue_gnbid(uint32_t gnbid);
ue* find_ue_amfid(uint32_t amfid); ue* find_ue_amfid(uint64_t amfid);
ue* add_user(value_type user); ue* add_user(value_type user);
void erase(ue* ue_ptr); void erase(ue* ue_ptr);
iterator begin() { return users.begin(); } iterator begin() { return users.begin(); }
@ -190,7 +190,7 @@ private:
ngap* ngap_ptr = nullptr; ngap* ngap_ptr = nullptr;
}; };
ue* handle_ngapmsg_ue_id(uint32_t gnb_id, uint32_t amf_id); ue* handle_ngapmsg_ue_id(uint32_t gnb_id, uint64_t amf_id);
srsran::proc_t<ng_setup_proc_t> ngsetup_proc; srsran::proc_t<ng_setup_proc_t> ngsetup_proc;

@ -24,7 +24,7 @@ struct ngap_ue_ctxt_t {
uint16_t rnti = SRSRAN_INVALID_RNTI; uint16_t rnti = SRSRAN_INVALID_RNTI;
uint32_t ran_ue_ngap_id = invalid_gnb_id; uint32_t ran_ue_ngap_id = invalid_gnb_id;
srsran::optional<uint32_t> amf_ue_ngap_id; srsran::optional<uint64_t> amf_ue_ngap_id;
uint32_t gnb_cc_idx = 0; uint32_t gnb_cc_idx = 0;
struct timeval init_timestamp = {}; struct timeval init_timestamp = {};

@ -302,7 +302,7 @@ ngap::ue* ngap::user_list::find_ue_gnbid(uint32_t gnbid)
return (it != users.end()) ? it->second.get() : nullptr; return (it != users.end()) ? it->second.get() : nullptr;
} }
ngap::ue* ngap::user_list::find_ue_amfid(uint32_t amfid) ngap::ue* ngap::user_list::find_ue_amfid(uint64_t amfid)
{ {
auto it = std::find_if(users.begin(), users.end(), [amfid](const user_list::pair_type& v) { auto it = std::find_if(users.begin(), users.end(), [amfid](const user_list::pair_type& v) {
return v.second->ctxt.amf_ue_ngap_id == amfid; return v.second->ctxt.amf_ue_ngap_id == amfid;
@ -758,7 +758,7 @@ bool ngap::sctp_send_ngap_pdu(const asn1::ngap::ngap_pdu_c& tx_pdu, uint32_t rnt
* @param amf_id amf_ue_ngap_id value stored in NGAP message * @param amf_id amf_ue_ngap_id value stored in NGAP message
* @return pointer to user if it has been found * @return pointer to user if it has been found
*/ */
ngap::ue* ngap::handle_ngapmsg_ue_id(uint32_t gnb_id, uint32_t amf_id) ngap::ue* ngap::handle_ngapmsg_ue_id(uint32_t gnb_id, uint64_t amf_id)
{ {
ue* user_ptr = users.find_ue_gnbid(gnb_id); ue* user_ptr = users.find_ue_gnbid(gnb_id);
ue* user_amf_ptr = nullptr; ue* user_amf_ptr = nullptr;

Loading…
Cancel
Save