From b2f5f216cdfebbfcdd35d7d20f4af807330554e3 Mon Sep 17 00:00:00 2001 From: Guido Casati Date: Thu, 7 Nov 2024 13:18:09 +0100 Subject: [PATCH] Add E1AP cause enum definition --- openair2/COMMON/e1ap_messages_types.h | 74 +++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/openair2/COMMON/e1ap_messages_types.h b/openair2/COMMON/e1ap_messages_types.h index 980fb86173..7ef843f6bd 100644 --- a/openair2/COMMON/e1ap_messages_types.h +++ b/openair2/COMMON/e1ap_messages_types.h @@ -57,6 +57,80 @@ typedef net_ip_address_t e1ap_net_ip_address_t; +typedef enum { + E1AP_RADIO_CAUSE_UNSPECIFIED = 0, + E1AP_RADIO_CAUSE_UNKNOWN_ALREADY_ALLOCATED_GNB_CU_CP_UE_E1AP_ID, + E1AP_RADIO_CAUSE_UNKNOWN_ALREADY_ALLOCATED_GNB_CU_UP_UE_E1AP_ID, + E1AP_RADIO_CAUSE_UNKNOWN_INCONSISTENT_PAIR_UE_E1AP_ID, + E1AP_RADIO_CAUSE_INTERACTION_WITH_OTHER_PROCEDURE, + E1AP_RADIO_CAUSE_PDCP_COUNT_WRAP_AROUND, + E1AP_RADIO_CAUSE_UNSUPPORTED_QCI_VALUE, + E1AP_RADIO_CAUSE_UNSUPPORTED_5QI_VALUE, + E1AP_RADIO_CAUSE_ENCRYPTION_ALGORITHMS_NOT_SUPPORTED, + E1AP_RADIO_CAUSE_INTEGRITY_PROTECTION_ALGORITHMS_NOT_SUPPORTED, + E1AP_RADIO_CAUSE_UP_INTEGRITY_PROTECTION_NOT_POSSIBLE, + E1AP_RADIO_CAUSE_UP_CONFIDENTIALITY_PROTECTION_NOT_POSSIBLE, + E1AP_RADIO_CAUSE_MULTIPLE_PDU_SESSION_ID_INSTANCES, + E1AP_RADIO_CAUSE_UNKNOWN_PDU_SESSION_ID, + E1AP_RADIO_CAUSE_MULTIPLE_QOS_FLOW_ID_INSTANCES, + E1AP_RADIO_CAUSE_UNKNOWN_QOS_FLOW_ID, + E1AP_RADIO_CAUSE_MULTIPLE_DRB_ID_INSTANCES, + E1AP_RADIO_CAUSE_UNKNOWN_DRB_ID, + E1AP_RADIO_CAUSE_INVALID_QOS_COMBINATION, + E1AP_RADIO_CAUSE_PROCEDURE_CANCELLED, + E1AP_RADIO_CAUSE_NORMAL_RELEASE, + E1AP_RADIO_CAUSE_NO_RADIO_RESOURCES_AVAILABLE, + E1AP_RADIO_CAUSE_ACTION_DESIRABLE_FOR_RADIO_REASONS, + E1AP_RADIO_CAUSE_RESOURCES_NOT_AVAILABLE_FOR_SLICE, + E1AP_RADIO_CAUSE_PDCP_CONFIG_NOT_SUPPORTED, + E1AP_RADIO_CAUSE_UE_DL_MAX_INTEGRITY_PROTECTED_DATA_RATE_REASON, + E1AP_RADIO_CAUSE_UP_INTEGRITY_PROTECTION_FAILURE, + E1AP_RADIO_CAUSE_RELEASE_DUE_TO_PREEMPTION, + E1AP_RADIO_CAUSE_RSN_NOT_AVAILABLE_FOR_UP, + E1AP_RADIO_CAUSE_NPN_NOT_SUPPORTED, + E1AP_RADIO_CAUSE_OTHER +} e1ap_cause_radio_t; + +typedef enum { + E1AP_TRANSPORT_CAUSE_UNSPECIFIED = 0, + E1AP_TRANSPORT_CAUSE_RESOURCE_UNAVAILABLE, + E1AP_TRANSPORT_CAUSE_UNKNOWN_TNL_ADDRESS_FOR_IAB, + E1AP_TRANSPORT_CAUSE_OTHER +} e1ap_cause_transport_t; + +typedef enum { + E1AP_PROTOCOL_CAUSE_TRANSFER_SYNTAX_ERROR = 0, + E1AP_PROTOCOL_CAUSE_ABSTRACT_SYNTAX_ERROR_REJECT, + E1AP_PROTOCOL_CAUSE_ABSTRACT_SYNTAX_ERROR_IGNORE_NOTIFY, + E1AP_PROTOCOL_CAUSE_MESSAGE_NOT_COMPATIBLE_WITH_RECEIVER_STATE, + E1AP_PROTOCOL_CAUSE_SEMANTIC_ERROR, + E1AP_PROTOCOL_CAUSE_ABSTRACT_SYNTAX_ERROR_FALSELY_CONSTRUCTED_MESSAGE, + E1AP_PROTOCOL_CAUSE_UNSPECIFIED, + E1AP_PROTOCOL_CAUSE_OTHER +} e1ap_cause_protocol_t; + +typedef enum { + E1AP_MISC_CAUSE_CONTROL_PROCESSING_OVERLOAD, + E1AP_MISC_CAUSE_NOT_ENOUGH_USER_PLANE_PROCESSING_RESOURCES, + E1AP_MISC_CAUSE_HARDWARE_FAILURE, + E1AP_MISC_CAUSE_OM_INTERVENTION, + E1AP_MISC_CAUSE_UNSPECIFIED, + E1AP_MISC_CAUSE_OTHER +} e1ap_cause_misc_t; + +typedef enum e1ap_cause_group_e { + E1AP_CAUSE_NOTHING, + E1AP_CAUSE_RADIO_NETWORK, + E1AP_CAUSE_TRANSPORT, + E1AP_CAUSE_PROTOCOL, + E1AP_CAUSE_MISC +} e1ap_cause_group_t; + +typedef struct e1ap_cause_s { + e1ap_cause_group_t type; + uint8_t value; +} e1ap_cause_t; + typedef enum BEARER_CONTEXT_STATUS_e { BEARER_ACTIVE = 0, BEARER_SUSPEND,