diff --git a/openair2/COMMON/ngap_messages_def.h b/openair2/COMMON/ngap_messages_def.h index a82b3cb849..648bd565f3 100644 --- a/openair2/COMMON/ngap_messages_def.h +++ b/openair2/COMMON/ngap_messages_def.h @@ -98,3 +98,8 @@ MESSAGE_DEF(NGAP_DOWNLINKNONUEASSOCIATEDNRPPA, MESSAGE_PRIORITY_MED, ngap_downlink_non_ue_associated_nrppa_t, ngap_downlink_non_ue_associated_nrppa) +MESSAGE_DEF(NGAP_UPLINKUEASSOCIATEDNRPPA, MESSAGE_PRIORITY_MED, ngap_uplink_ue_associated_nrppa_t, ngap_uplink_ue_associated_nrppa) +MESSAGE_DEF(NGAP_UPLINKNONUEASSOCIATEDNRPPA, + MESSAGE_PRIORITY_MED, + ngap_uplink_non_ue_associated_nrppa_t, + ngap_uplink_non_ue_associated_nrppa) diff --git a/openair2/COMMON/ngap_messages_types.h b/openair2/COMMON/ngap_messages_types.h index e05f44f0b5..85d61bba39 100644 --- a/openair2/COMMON/ngap_messages_types.h +++ b/openair2/COMMON/ngap_messages_types.h @@ -81,6 +81,9 @@ #define NGAP_DOWNLINKUEASSOCIATEDNRPPA(mSGpTR) (mSGpTR)->ittiMsg.ngap_downlink_ue_associated_nrppa #define NGAP_DOWNLINKNONUEASSOCIATEDNRPPA(mSGpTR) (mSGpTR)->ittiMsg.ngap_downlink_non_ue_associated_nrppa + +#define NGAP_UPLINKUEASSOCIATEDNRPPA(mSGpTR) (mSGpTR)->ittiMsg.ngap_uplink_ue_associated_nrppa +#define NGAP_UPLINKNONUEASSOCIATEDNRPPA(mSGpTR) (mSGpTR)->ittiMsg.ngap_uplink_non_ue_associated_nrppa //-------------------------------------------------------------------------------------------// /* Length of the transport layer address string diff --git a/openair3/NGAP/ngap_gNB.c b/openair3/NGAP/ngap_gNB.c index 257ca25f1a..c9da148eea 100644 --- a/openair3/NGAP/ngap_gNB.c +++ b/openair3/NGAP/ngap_gNB.c @@ -58,6 +58,7 @@ #include "ngap_gNB_mobility_management.h" #include "ngap_gNB_ue_context.h" #include "ngap_gNB_pdu_session_management.h" +#include "ngap_gNB_NRPPa_transport_procedures.h" #include "oai_asn1.h" #include "openair3/SECU/kdf.h" #include "queue.h" @@ -626,6 +627,14 @@ void *ngap_gNB_process_itti_msg(void *notUsed) { ngap_gNB_handle_ul_ran_status_transfer(instance, &NGAP_UL_RAN_STATUS_TRANSFER(received_msg)); break; + case NGAP_UPLINKUEASSOCIATEDNRPPA: + ngap_gNB_uplink_ue_associated_nrppa_transport(instance, &NGAP_UPLINKUEASSOCIATEDNRPPA(received_msg)); + break; + + case NGAP_UPLINKNONUEASSOCIATEDNRPPA: + ngap_gNB_uplink_non_ue_associated_nrppa_transport(instance, &NGAP_UPLINKNONUEASSOCIATEDNRPPA(received_msg)); + break; + default: NGAP_ERROR("Received unhandled message: %d:%s\n", ITTI_MSG_ID(received_msg), ITTI_MSG_NAME(received_msg)); break; diff --git a/openair3/NGAP/ngap_gNB_encoder.c b/openair3/NGAP/ngap_gNB_encoder.c index ff318ed184..801ce95d42 100644 --- a/openair3/NGAP/ngap_gNB_encoder.c +++ b/openair3/NGAP/ngap_gNB_encoder.c @@ -56,7 +56,9 @@ static inline int ngap_gNB_encode_initiating(NGAP_NGAP_PDU_t *pdu, uint8_t **buf NGAP_ProcedureCode_id_UplinkRANStatusTransfer, NGAP_ProcedureCode_id_HandoverPreparation, NGAP_ProcedureCode_id_HandoverCancel, - NGAP_ProcedureCode_id_HandoverNotification}; + NGAP_ProcedureCode_id_HandoverNotification, + NGAP_ProcedureCode_id_UplinkUEAssociatedNRPPaTransport, + NGAP_ProcedureCode_id_UplinkNonUEAssociatedNRPPaTransport}; int i; for (i = 0; i < sizeofArray(tmp); i++) if (pdu->choice.initiatingMessage->procedureCode == tmp[i])