/* * Copyright (C) 2019-2024 by Sukchan Lee * * This file is part of Open5GS. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ /******************************************************************************* * This file had been created by gtp-tlv.py script v0.1.0 * Please do not modify this file but regenerate it via script. * Created on: 2024-03-23 07:21:22.438775 by acetcom * from 29274-h70.docx ******************************************************************************/ #if !defined(OGS_GTP_INSIDE) && !defined(OGS_GTP_COMPILATION) #error "This header cannot be included directly." #endif #ifndef OGS_GTP2_MESSAGE_H #define OGS_GTP2_MESSAGE_H #ifdef __cplusplus extern "C" { #endif /* 5.1 General format */ #define OGS_GTPV1U_HEADER_LEN 8 #define OGS_GTPV2C_HEADER_LEN 12 #define OGS_GTP2_TEID_LEN 4 typedef struct ogs_gtp2_header_s { union { struct { #define OGS_GTP2_VERSION_0 0 #define OGS_GTP2_VERSION_1 1 #define OGS_GTP2_TEID_NO_PRESENCE 0 #define OGS_GTP2_TEID_PRESENCE 1 ED4(uint8_t version:3;, uint8_t piggybacked:1;, uint8_t teid_presence:1;, uint8_t spare1:3;) }; /* GTU-U flags */ #define OGS_GTPU_FLAGS_V 0x20 #define OGS_GTPU_FLAGS_PT 0x10 #define OGS_GTPU_FLAGS_E 0x04 #define OGS_GTPU_FLAGS_S 0x02 #define OGS_GTPU_FLAGS_PN 0x01 uint8_t flags; }; /* GTP-U message type, defined in 3GPP TS 29.281 Release 11 */ #define OGS_GTPU_MSGTYPE_ECHO_REQ 1 #define OGS_GTPU_MSGTYPE_ECHO_RSP 2 #define OGS_GTPU_MSGTYPE_ERR_IND 26 #define OGS_GTPU_MSGTYPE_SUPP_EXTHDR_NOTI 31 #define OGS_GTPU_MSGTYPE_END_MARKER 254 #define OGS_GTPU_MSGTYPE_GPDU 255 uint8_t type; uint16_t length; union { struct { uint32_t teid; /* sqn : 31bit ~ 8bit, spare : 7bit ~ 0bit */ #define OGS_GTP2_XID_TO_SQN(__xid) htobe32(((__xid) << 8)) #define OGS_GTP2_SQN_TO_XID(__sqn) (be32toh(__sqn) >> 8) uint32_t sqn; }; /* sqn : 31bit ~ 8bit, spare : 7bit ~ 0bit */ uint32_t sqn_only; }; } __attribute__ ((packed)) ogs_gtp2_header_t; /* GTPv2-C message type */ #define OGS_GTP2_ECHO_REQUEST_TYPE 1 #define OGS_GTP2_ECHO_RESPONSE_TYPE 2 #define OGS_GTP2_VERSION_NOT_SUPPORTED_INDICATION_TYPE 3 #define OGS_GTP2_CREATE_SESSION_REQUEST_TYPE 32 #define OGS_GTP2_CREATE_SESSION_RESPONSE_TYPE 33 #define OGS_GTP2_MODIFY_BEARER_REQUEST_TYPE 34 #define OGS_GTP2_MODIFY_BEARER_RESPONSE_TYPE 35 #define OGS_GTP2_DELETE_SESSION_REQUEST_TYPE 36 #define OGS_GTP2_DELETE_SESSION_RESPONSE_TYPE 37 #define OGS_GTP2_CHANGE_NOTIFICATION_REQUEST_TYPE 38 #define OGS_GTP2_CHANGE_NOTIFICATION_RESPONSE_TYPE 39 #define OGS_GTP2_REMOTE_UE_REPORT_NOTIFICATION_TYPE 40 #define OGS_GTP2_REMOTE_UE_REPORT_ACKNOWLEDGE_TYPE 41 #define OGS_GTP2_MODIFY_BEARER_COMMAND_TYPE 64 #define OGS_GTP2_MODIFY_BEARER_FAILURE_INDICATION_TYPE 65 #define OGS_GTP2_DELETE_BEARER_COMMAND_TYPE 66 #define OGS_GTP2_DELETE_BEARER_FAILURE_INDICATION_TYPE 67 #define OGS_GTP2_BEARER_RESOURCE_COMMAND_TYPE 68 #define OGS_GTP2_BEARER_RESOURCE_FAILURE_INDICATION_TYPE 69 #define OGS_GTP2_DOWNLINK_DATA_NOTIFICATION_FAILURE_INDICATION_TYPE 70 #define OGS_GTP2_TRACE_SESSION_ACTIVATION_TYPE 71 #define OGS_GTP2_TRACE_SESSION_DEACTIVATION_TYPE 72 #define OGS_GTP2_STOP_PAGING_INDICATION_TYPE 73 #define OGS_GTP2_CREATE_BEARER_REQUEST_TYPE 95 #define OGS_GTP2_CREATE_BEARER_RESPONSE_TYPE 96 #define OGS_GTP2_UPDATE_BEARER_REQUEST_TYPE 97 #define OGS_GTP2_UPDATE_BEARER_RESPONSE_TYPE 98 #define OGS_GTP2_DELETE_BEARER_REQUEST_TYPE 99 #define OGS_GTP2_DELETE_BEARER_RESPONSE_TYPE 100 #define OGS_GTP2_DELETE_PDN_CONNECTION_SET_REQUEST_TYPE 101 #define OGS_GTP2_DELETE_PDN_CONNECTION_SET_RESPONSE_TYPE 102 #define OGS_GTP2_PGW_DOWNLINK_TRIGGERING_NOTIFICATION_TYPE 103 #define OGS_GTP2_PGW_DOWNLINK_TRIGGERING_ACKNOWLEDGE_TYPE 104 #define OGS_GTP2_CREATE_FORWARDING_TUNNEL_REQUEST_TYPE 160 #define OGS_GTP2_CREATE_FORWARDING_TUNNEL_RESPONSE_TYPE 161 #define OGS_GTP2_SUSPEND_NOTIFICATION_TYPE 162 #define OGS_GTP2_SUSPEND_ACKNOWLEDGE_TYPE 163 #define OGS_GTP2_RESUME_NOTIFICATION_TYPE 164 #define OGS_GTP2_RESUME_ACKNOWLEDGE_TYPE 165 #define OGS_GTP2_CREATE_INDIRECT_DATA_FORWARDING_TUNNEL_REQUEST_TYPE 166 #define OGS_GTP2_CREATE_INDIRECT_DATA_FORWARDING_TUNNEL_RESPONSE_TYPE 167 #define OGS_GTP2_DELETE_INDIRECT_DATA_FORWARDING_TUNNEL_REQUEST_TYPE 168 #define OGS_GTP2_DELETE_INDIRECT_DATA_FORWARDING_TUNNEL_RESPONSE_TYPE 169 #define OGS_GTP2_RELEASE_ACCESS_BEARERS_REQUEST_TYPE 170 #define OGS_GTP2_RELEASE_ACCESS_BEARERS_RESPONSE_TYPE 171 #define OGS_GTP2_DOWNLINK_DATA_NOTIFICATION_TYPE 176 #define OGS_GTP2_DOWNLINK_DATA_NOTIFICATION_ACKNOWLEDGE_TYPE 177 #define OGS_GTP2_PGW_RESTART_NOTIFICATION_TYPE 179 #define OGS_GTP2_PGW_RESTART_NOTIFICATION_ACKNOWLEDGE_TYPE 180 #define OGS_GTP2_UPDATE_PDN_CONNECTION_SET_REQUEST_TYPE 200 #define OGS_GTP2_UPDATE_PDN_CONNECTION_SET_RESPONSE_TYPE 201 #define OGS_GTP2_MODIFY_ACCESS_BEARERS_REQUEST_TYPE 211 #define OGS_GTP2_MODIFY_ACCESS_BEARERS_RESPONSE_TYPE 212 #define OGS_GTP2_IMSI_TYPE 1 #define OGS_GTP2_CAUSE_TYPE 2 #define OGS_GTP2_RECOVERY_TYPE 3 #define OGS_GTP2_STN_SR_TYPE 51 #define OGS_GTP2_SRVCC_CAUSE_TYPE 56 #define OGS_GTP2_APN_TYPE 71 #define OGS_GTP2_AMBR_TYPE 72 #define OGS_GTP2_EBI_TYPE 73 #define OGS_GTP2_IP_ADDRESS_TYPE 74 #define OGS_GTP2_MEI_TYPE 75 #define OGS_GTP2_MSISDN_TYPE 76 #define OGS_GTP2_INDICATION_TYPE 77 #define OGS_GTP2_PCO_TYPE 78 #define OGS_GTP2_PAA_TYPE 79 #define OGS_GTP2_BEARER_QOS_TYPE 80 #define OGS_GTP2_FLOW_QOS_TYPE 81 #define OGS_GTP2_RAT_TYPE_TYPE 82 #define OGS_GTP2_SERVING_NETWORK_TYPE 83 #define OGS_GTP2_BEARER_TFT_TYPE 84 #define OGS_GTP2_TAD_TYPE 85 #define OGS_GTP2_ULI_TYPE 86 #define OGS_GTP2_F_TEID_TYPE 87 #define OGS_GTP2_TMSI_TYPE 88 #define OGS_GTP2_GLOBAL_CN_ID_TYPE 89 #define OGS_GTP2_S103PDF_TYPE 90 #define OGS_GTP2_S1UDF_TYPE 91 #define OGS_GTP2_DELAY_VALUE_TYPE 92 #define OGS_GTP2_BEARER_CONTEXT_TYPE 93 #define OGS_GTP2_CHARGING_ID_TYPE 94 #define OGS_GTP2_CHARGING_CHARACTERISTICS_TYPE 95 #define OGS_GTP2_TRACE_INFORMATION_TYPE 96 #define OGS_GTP2_BEARER_FLAGS_TYPE 97 #define OGS_GTP2_PDN_TYPE_TYPE 99 #define OGS_GTP2_PTI_TYPE 100 #define OGS_GTP2_MM_CONTEXT_TYPE 107 #define OGS_GTP2_PDN_CONNECTION_TYPE 109 #define OGS_GTP2_PDU_NUMBERS_TYPE 110 #define OGS_GTP2_P_TMSI_TYPE 111 #define OGS_GTP2_P_TMSI_SIGNATURE_TYPE 112 #define OGS_GTP2_HOP_COUNTER_TYPE 113 #define OGS_GTP2_UE_TIME_ZONE_TYPE 114 #define OGS_GTP2_TRACE_REFERENCE_TYPE 115 #define OGS_GTP2_COMPLETE_REQUEST_MESSAGE_TYPE 116 #define OGS_GTP2_GUTI_TYPE 117 #define OGS_GTP2_F_CONTAINER_TYPE 118 #define OGS_GTP2_F_CAUSE_TYPE 119 #define OGS_GTP2_PLMN_ID_TYPE 120 #define OGS_GTP2_TARGET_IDENTIFICATION_TYPE 121 #define OGS_GTP2_PACKET_FLOW_ID_TYPE 123 #define OGS_GTP2_RAB_CONTEXT_TYPE 124 #define OGS_GTP2_SOURCE_RNC_PDCP_CONTEXT_INFO_TYPE 125 #define OGS_GTP2_PORT_NUMBER_TYPE 126 #define OGS_GTP2_APN_RESTRICTION_TYPE 127 #define OGS_GTP2_SELECTION_MODE_TYPE 128 #define OGS_GTP2_SOURCE_IDENTIFICATION_TYPE 129 #define OGS_GTP2_CHANGE_REPORTING_ACTION_TYPE 131 #define OGS_GTP2_FQ_CSID_TYPE 132 #define OGS_GTP2_CHANNEL_NEEDED_TYPE 133 #define OGS_GTP2_EMLPP_PRIORITY_TYPE 134 #define OGS_GTP2_NODE_TYPE_TYPE 135 #define OGS_GTP2_FQDN_TYPE 136 #define OGS_GTP2_TI_TYPE 137 #define OGS_GTP2_MBMS_SESSION_DURATION_TYPE 138 #define OGS_GTP2_MBMS_SERVICE_AREA_TYPE 139 #define OGS_GTP2_MBMS_SESSION_IDENTIFIER_TYPE 140 #define OGS_GTP2_MBMS_FLOW_IDENTIFIER_TYPE 141 #define OGS_GTP2_MBMS_IP_MULTICAST_DISTRIBUTION_TYPE 142 #define OGS_GTP2_MBMS_DISTRIBUTION_ACKNOWLEDGE_TYPE 143 #define OGS_GTP2_RFSP_INDEX_TYPE 144 #define OGS_GTP2_UCI_TYPE 145 #define OGS_GTP2_CSG_INFORMATION_REPORTING_ACTION_TYPE 146 #define OGS_GTP2_CSG_ID_TYPE 147 #define OGS_GTP2_CMI_TYPE 148 #define OGS_GTP2_SERVICE_INDICATOR_TYPE 149 #define OGS_GTP2_DETACH_TYPE_TYPE 150 #define OGS_GTP2_LDN_TYPE 151 #define OGS_GTP2_NODE_FEATURES_TYPE 152 #define OGS_GTP2_MBMS_TIME_TO_DATA_TRANSFER_TYPE 153 #define OGS_GTP2_THROTTLING_TYPE 154 #define OGS_GTP2_ARP_TYPE 155 #define OGS_GTP2_EPC_TIMER_TYPE 156 #define OGS_GTP2_SIGNALLING_PRIORITY_INDICATION_TYPE 157 #define OGS_GTP2_TMGI_TYPE 158 #define OGS_GTP2_ADDITIONAL_MM_CONTEXT_FOR_SRVCC_TYPE 159 #define OGS_GTP2_ADDITIONAL_FLAGS_FOR_SRVCC_TYPE 160 #define OGS_GTP2_MDT_CONFIGURATION_TYPE 162 #define OGS_GTP2_APCO_TYPE 163 #define OGS_GTP2_ABSOLUTE_TIME_OF_MBMS_DATA_TRANSFER_TYPE 164 #define OGS_GTP2_ENB_INFORMATION_REPORTING_TYPE 165 #define OGS_GTP2_IP4CP_TYPE 166 #define OGS_GTP2_CHANGE_TO_REPORT_FLAGS_TYPE 167 #define OGS_GTP2_ACTION_INDICATION_TYPE 168 #define OGS_GTP2_TWAN_IDENTIFIER_TYPE 169 #define OGS_GTP2_ULI_TIMESTAMP_TYPE 170 #define OGS_GTP2_MBMS_FLAGS_TYPE 171 #define OGS_GTP2_RAN_NAS_CAUSE_TYPE 172 #define OGS_GTP2_CN_OPERATOR_SELECTION_ENTITY_TYPE 173 #define OGS_GTP2_TWMI_TYPE 174 #define OGS_GTP2_NODE_NUMBER_TYPE 175 #define OGS_GTP2_NODE_IDENTIFIER_TYPE 176 #define OGS_GTP2_PRESENCE_REPORTING_AREA_ACTION_TYPE 177 #define OGS_GTP2_PRESENCE_REPORTING_AREA_INFORMATION_TYPE 178 #define OGS_GTP2_TWAN_IDENTIFIER_TIMESTAMP_TYPE 179 #define OGS_GTP2_OVERLOAD_CONTROL_INFORMATION_TYPE 180 #define OGS_GTP2_LOAD_CONTROL_INFORMATION_TYPE 181 #define OGS_GTP2_METRIC_TYPE 182 #define OGS_GTP2_SEQUENCE_NUMBER_TYPE 183 #define OGS_GTP2_APN_AND_RELATIVE_CAPACITY_TYPE 184 #define OGS_GTP2_WLAN_OFFLOADABILITY_INDICATION_TYPE 185 #define OGS_GTP2_PAGING_AND_SERVICE_INFORMATION_TYPE 186 #define OGS_GTP2_INTEGER_NUMBER_TYPE 187 #define OGS_GTP2_MILLISECOND_TIME_STAMP_TYPE 188 #define OGS_GTP2_MONITORING_EVENT_INFORMATION_TYPE 189 #define OGS_GTP2_ECGI_LIST_TYPE 190 #define OGS_GTP2_REMOTE_UE_CONTEXT_TYPE 191 #define OGS_GTP2_REMOTE_USER_ID_TYPE 192 #define OGS_GTP2_REMOTE_UE_IP_INFORMATION_TYPE 193 #define OGS_GTP2_CIOT_OPTIMIZATIONS_SUPPORT_INDICATION_TYPE 194 #define OGS_GTP2_SCEF_PDN_CONNECTION_TYPE 195 #define OGS_GTP2_HEADER_COMPRESSION_CONFIGURATION_TYPE 196 #define OGS_GTP2_EPCO_TYPE 197 #define OGS_GTP2_SERVING_PLMN_RATE_CONTROL_TYPE 198 #define OGS_GTP2_COUNTER_TYPE 199 #define OGS_GTP2_MAPPED_UE_USAGE_TYPE_TYPE 200 #define OGS_GTP2_SECONDARY_RAT_USAGE_DATA_REPORT_TYPE 201 #define OGS_GTP2_UP_FUNCTION_SELECTION_INDICATION_FLAGS_TYPE 202 #define OGS_GTP2_MAXIMUM_PACKET_LOSS_RATE_TYPE 203 #define OGS_GTP2_APN_RATE_CONTROL_STATUS_TYPE 204 #define OGS_GTP2_EXTENDED_TRACE_INFORMATION_TYPE 205 #define OGS_GTP2_MONITORING_EVENT_EXTENSION_INFORMATION_TYPE 206 #define OGS_GTP2_ADDITIONAL_RRM_POLICY_INDEX_TYPE 207 #define OGS_GTP2_V2X_CONTEXT_TYPE 208 #define OGS_GTP2_PC5_QOS_PARAMETERS_TYPE 209 #define OGS_GTP2_SERVICES_AUTHORIZED_TYPE 210 #define OGS_GTP2_BIT_RATE_TYPE 211 #define OGS_GTP2_PC5_QOS_FLOW_TYPE 212 #define OGS_GTP2_SGI_PTP_TUNNEL_ADDRESS_TYPE 213 #define OGS_GTP2_PGW_CHANGE_INFO_TYPE 214 #define OGS_GTP2_PGW_FQDN_TYPE 215 #define OGS_GTP2_GROUP_ID_TYPE 216 #define OGS_GTP2_PSCELL_ID_TYPE 217 #define OGS_GTP2_UP_SECURITY_POLICY_TYPE 218 #define OGS_GTP2_ALTERNATIVE_IMSI_TYPE 219 /* Information Element TLV Descriptor */ extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_imsi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_cause_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_recovery_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_stn_sr_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_srvcc_cause_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_apn_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ambr_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ebi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ebi_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ip_address_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ip_address_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ip_address_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ip_address_3; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mei_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_msisdn_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_indication_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pco_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_paa_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_qos_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_flow_qos_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_rat_type_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_serving_network_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_tft_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_tad_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_uli_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_uli_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_3; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_4; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_5; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_6; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_7; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_8; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_9; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_10; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_teid_11; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_tmsi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_global_cn_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_s103pdf_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_s1udf_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delay_value_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_charging_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_charging_characteristics_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_trace_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_flags_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pdn_type_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pti_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mm_context_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pdu_numbers_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_p_tmsi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_p_tmsi_signature_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_hop_counter_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ue_time_zone_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_trace_reference_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_complete_request_message_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_guti_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_container_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_f_cause_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_plmn_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_target_identification_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_packet_flow_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_rab_context_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_source_rnc_pdcp_context_info_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_port_number_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_port_number_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_port_number_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_apn_restriction_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_selection_mode_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_source_identification_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_change_reporting_action_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fq_csid_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fq_csid_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fq_csid_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fq_csid_3; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_channel_needed_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_emlpp_priority_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_node_type_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fqdn_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fqdn_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fqdn_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_fqdn_3; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ti_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_session_duration_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_service_area_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_session_identifier_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_flow_identifier_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_ip_multicast_distribution_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_distribution_acknowledge_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_rfsp_index_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_uci_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_csg_information_reporting_action_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_csg_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_cmi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_service_indicator_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_detach_type_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ldn_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ldn_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ldn_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ldn_3; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_node_features_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_time_to_data_transfer_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_throttling_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_arp_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_epc_timer_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_signalling_priority_indication_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_tmgi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_additional_mm_context_for_srvcc_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_additional_flags_for_srvcc_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mdt_configuration_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_apco_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_absolute_time_of_mbms_data_transfer_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_enb_information_reporting_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ip4cp_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_change_to_report_flags_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_action_indication_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_twan_identifier_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_twan_identifier_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_uli_timestamp_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mbms_flags_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ran_nas_cause_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_cn_operator_selection_entity_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_twmi_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_node_number_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_node_identifier_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_presence_reporting_area_action_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_presence_reporting_area_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_twan_identifier_timestamp_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_twan_identifier_timestamp_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_metric_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_sequence_number_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_apn_and_relative_capacity_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_wlan_offloadability_indication_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_paging_and_service_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_integer_number_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_millisecond_time_stamp_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_monitoring_event_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ecgi_list_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_remote_user_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_remote_ue_ip_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_ciot_optimizations_support_indication_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_header_compression_configuration_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_epco_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_serving_plmn_rate_control_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_counter_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_mapped_ue_usage_type_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_secondary_rat_usage_data_report_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_up_function_selection_indication_flags_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_maximum_packet_loss_rate_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_apn_rate_control_status_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_extended_trace_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_monitoring_event_extension_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_additional_rrm_policy_index_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_services_authorized_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_services_authorized_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bit_rate_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bit_rate_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pc5_qos_flow_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_sgi_ptp_tunnel_address_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_fqdn_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_fqdn_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_group_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_group_id_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pscell_id_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_up_security_policy_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_alternative_imsi_0; /* Group Information Element TLV Descriptor */ extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pc5_qos_parameters_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_remote_ue_context_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_change_info_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_v2x_context_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_context_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_context_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pdn_connection_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_overload_control_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_overload_control_information_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_overload_control_information_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_load_control_information_0; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_load_control_information_1; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_load_control_information_2; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_scef_pdn_connection_0; /* Message Descriptor */ extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_echo_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_echo_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_version_not_supported_indication; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_session_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_session_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_modify_bearer_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_modify_bearer_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_session_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_session_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_change_notification_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_change_notification_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_remote_ue_report_notification; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_remote_ue_report_acknowledge; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_modify_bearer_command; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_modify_bearer_failure_indication; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_bearer_command; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_bearer_failure_indication; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_resource_command; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_bearer_resource_failure_indication; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_downlink_data_notification_failure_indication; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_trace_session_activation; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_trace_session_deactivation; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_stop_paging_indication; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_bearer_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_bearer_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_update_bearer_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_update_bearer_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_bearer_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_bearer_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_pdn_connection_set_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_pdn_connection_set_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_downlink_triggering_notification; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_downlink_triggering_acknowledge; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_forwarding_tunnel_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_forwarding_tunnel_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_suspend_notification; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_suspend_acknowledge; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_resume_notification; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_resume_acknowledge; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_indirect_data_forwarding_tunnel_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_create_indirect_data_forwarding_tunnel_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_indirect_data_forwarding_tunnel_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_delete_indirect_data_forwarding_tunnel_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_release_access_bearers_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_release_access_bearers_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_downlink_data_notification; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_downlink_data_notification_acknowledge; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_restart_notification; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_pgw_restart_notification_acknowledge; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_update_pdn_connection_set_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_update_pdn_connection_set_response; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_modify_access_bearers_request; extern ogs_tlv_desc_t ogs_gtp2_tlv_desc_modify_access_bearers_response; /* Structure for Information Element */ typedef ogs_tlv_octet_t ogs_gtp2_tlv_imsi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_cause_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_recovery_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_stn_sr_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_srvcc_cause_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_apn_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ambr_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_ebi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ip_address_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mei_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_msisdn_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_indication_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_pco_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_paa_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_bearer_qos_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_flow_qos_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_rat_type_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_serving_network_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_bearer_tft_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_tad_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_uli_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_f_teid_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_tmsi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_global_cn_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_s103pdf_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_s1udf_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_delay_value_t; typedef ogs_tlv_uint32_t ogs_gtp2_tlv_charging_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_charging_characteristics_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_trace_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_bearer_flags_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_pdn_type_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_pti_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mm_context_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_pdu_numbers_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_p_tmsi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_p_tmsi_signature_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_hop_counter_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ue_time_zone_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_trace_reference_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_complete_request_message_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_guti_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_f_container_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_f_cause_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_plmn_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_target_identification_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_packet_flow_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_rab_context_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_source_rnc_pdcp_context_info_t; typedef ogs_tlv_uint16_t ogs_gtp2_tlv_port_number_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_apn_restriction_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_selection_mode_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_source_identification_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_change_reporting_action_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_fq_csid_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_channel_needed_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_emlpp_priority_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_node_type_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_fqdn_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ti_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_session_duration_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_service_area_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_session_identifier_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_flow_identifier_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_ip_multicast_distribution_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_distribution_acknowledge_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_rfsp_index_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_uci_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_csg_information_reporting_action_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_csg_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_cmi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_service_indicator_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_detach_type_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ldn_t; typedef ogs_tlv_uint8_t ogs_gtp2_tlv_node_features_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_time_to_data_transfer_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_throttling_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_arp_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_epc_timer_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_signalling_priority_indication_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_tmgi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_additional_mm_context_for_srvcc_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_additional_flags_for_srvcc_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mdt_configuration_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_apco_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_absolute_time_of_mbms_data_transfer_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_enb_information_reporting_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ip4cp_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_change_to_report_flags_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_action_indication_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_twan_identifier_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_uli_timestamp_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mbms_flags_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ran_nas_cause_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_cn_operator_selection_entity_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_twmi_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_node_number_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_node_identifier_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_presence_reporting_area_action_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_presence_reporting_area_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_twan_identifier_timestamp_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_metric_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_sequence_number_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_apn_and_relative_capacity_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_wlan_offloadability_indication_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_paging_and_service_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_integer_number_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_millisecond_time_stamp_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_monitoring_event_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ecgi_list_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_remote_user_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_remote_ue_ip_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_ciot_optimizations_support_indication_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_header_compression_configuration_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_epco_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_serving_plmn_rate_control_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_counter_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_mapped_ue_usage_type_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_secondary_rat_usage_data_report_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_up_function_selection_indication_flags_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_maximum_packet_loss_rate_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_apn_rate_control_status_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_extended_trace_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_monitoring_event_extension_information_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_additional_rrm_policy_index_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_services_authorized_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_bit_rate_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_pc5_qos_flow_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_sgi_ptp_tunnel_address_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_pgw_fqdn_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_group_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_pscell_id_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_up_security_policy_t; typedef ogs_tlv_octet_t ogs_gtp2_tlv_alternative_imsi_t; /* Structure for Group Information Element */ typedef struct ogs_gtp2_tlv_pc5_qos_parameters_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_pc5_qos_flow_t pc5_qos_flows; ogs_gtp2_tlv_bit_rate_t pc5_link_aggregated_bit_rates; } ogs_gtp2_tlv_pc5_qos_parameters_t; typedef struct ogs_gtp2_tlv_remote_ue_context_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_remote_user_id_t remote_user_id; ogs_gtp2_tlv_remote_ue_ip_information_t remote_ue_ip_information; } ogs_gtp2_tlv_remote_ue_context_t; typedef struct ogs_gtp2_tlv_pgw_change_info_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_pgw_fqdn_t pgw_set_fqdn; ogs_gtp2_tlv_ip_address_t alternative_pgw_c_smf_ip_address; ogs_gtp2_tlv_pgw_fqdn_t alternative_pgw_c_smf_fqdn; ogs_gtp2_tlv_group_id_t group_id; ogs_gtp2_tlv_ip_address_t new_pgw_c_smf_ip_address; ogs_gtp2_tlv_ip_address_t new_sgw_c_ip_address; ogs_gtp2_tlv_fq_csid_t pgw_c_smf_fq_csid; ogs_gtp2_tlv_ip_address_t pgw_control_plane_ip_address; ogs_gtp2_tlv_group_id_t new_group_id; } ogs_gtp2_tlv_pgw_change_info_t; typedef struct ogs_gtp2_tlv_v2x_context_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_services_authorized_t lte_v2x_services_authorized; ogs_gtp2_tlv_services_authorized_t nr_v2x_services_authorized; ogs_gtp2_tlv_bit_rate_t lte_ue_sidelink_aggregate_maximum_bit_rate; ogs_gtp2_tlv_bit_rate_t nr_ue_sidelink_aggregate_maximum_bit_rate; ogs_gtp2_tlv_pc5_qos_parameters_t pc5_qos_parameters; } ogs_gtp2_tlv_v2x_context_t; typedef struct ogs_gtp2_tlv_bearer_context_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_ebi_t eps_bearer_id; ogs_gtp2_tlv_bearer_tft_t tft; ogs_gtp2_tlv_f_teid_t s1_u_enodeb_f_teid; /* Instance : 0 */ ogs_gtp2_tlv_f_teid_t s4_u_sgsn_f_teid; /* Instance : 1 */ ogs_gtp2_tlv_f_teid_t s5_s8_u_sgw_f_teid; /* Instance : 2 */ ogs_gtp2_tlv_f_teid_t s5_s8_u_pgw_f_teid; /* Instance : 3 */ ogs_gtp2_tlv_f_teid_t s12_rnc_f_teid; /* Instance : 4 */ ogs_gtp2_tlv_f_teid_t s2b_u_epdg_f_teid_5; /* Instance : 5 */ ogs_gtp2_tlv_f_teid_t s2a_u_twan_f_teid_6; /* Instance : 6 */ ogs_gtp2_tlv_bearer_qos_t bearer_level_qos; ogs_gtp2_tlv_f_teid_t s11_u_mme_f_teid; /* Instance : 7 */ ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_charging_id_t charging_id; ogs_gtp2_tlv_bearer_flags_t bearer_flags; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_maximum_packet_loss_rate_t maximum_packet_loss_rate; ogs_gtp2_tlv_f_teid_t s2b_u_epdg_f_teid_8; /* Instance : 8 */ ogs_gtp2_tlv_f_teid_t s2b_u_pgw_f_teid; /* Instance : 9 */ ogs_gtp2_tlv_f_teid_t s2a_u_twan_f_teid_10; /* Instance : 10 */ ogs_gtp2_tlv_f_teid_t s2a_u_pgw_f_teid; /* Instance : 11 */ ogs_gtp2_tlv_ran_nas_cause_t ran_nas_cause; ogs_gtp2_tlv_apco_t additional_protocol_configuration_options; ogs_gtp2_tlv_f_container_t bss_container; ogs_gtp2_tlv_ti_t transaction_identifier; ogs_gtp2_tlv_packet_flow_id_t packet_flow_id; } ogs_gtp2_tlv_bearer_context_t; typedef struct ogs_gtp2_tlv_pdn_connection_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_apn_t apn; ogs_gtp2_tlv_apn_restriction_t apn_restriction; ogs_gtp2_tlv_selection_mode_t selection_mode; ogs_gtp2_tlv_ip_address_t ipv4_address; ogs_gtp2_tlv_ip_address_t ipv6_address; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_f_teid_t pgw_s5_s8_ip_address_for_control_plane_or_pmip; /* Instance : 0 */ ogs_gtp2_tlv_fqdn_t pgw_node_name; ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_ambr_t aggregate_maximum_bit_rate; ogs_gtp2_tlv_charging_characteristics_t charging_characteristics; ogs_gtp2_tlv_change_reporting_action_t change_reporting_action; ogs_gtp2_tlv_csg_information_reporting_action_t csg_information_reporting_action; ogs_gtp2_tlv_enb_information_reporting_t hnb_information_reporting; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_signalling_priority_indication_t signalling_priority_indication; ogs_gtp2_tlv_change_to_report_flags_t change_to_report_flags; ogs_gtp2_tlv_fqdn_t local_home_network_id; ogs_gtp2_tlv_presence_reporting_area_action_t presence_reporting_area_action; ogs_gtp2_tlv_wlan_offloadability_indication_t wlan_offloadability_indication; ogs_gtp2_tlv_remote_ue_context_t remote_ue_context_connected; ogs_gtp2_tlv_pdn_type_t pdn_type; ogs_gtp2_tlv_header_compression_configuration_t header_compression_configuration; ogs_gtp2_tlv_pgw_change_info_t pgw_change_info; ogs_gtp2_tlv_up_security_policy_t up_security_policy; } ogs_gtp2_tlv_pdn_connection_t; typedef struct ogs_gtp2_tlv_overload_control_information_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_sequence_number_t overload_control_sequence_number; ogs_gtp2_tlv_metric_t overload_reduction_metric; ogs_gtp2_tlv_epc_timer_t period_of_validity; ogs_gtp2_tlv_apn_t list_of_access_point_name; } ogs_gtp2_tlv_overload_control_information_t; typedef struct ogs_gtp2_tlv_load_control_information_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_sequence_number_t load_control_sequence_number; ogs_gtp2_tlv_metric_t load_metric; ogs_gtp2_tlv_apn_and_relative_capacity_t list_of_apn_and_relative_capacity; } ogs_gtp2_tlv_load_control_information_t; typedef struct ogs_gtp2_tlv_scef_pdn_connection_s { ogs_tlv_presence_t presence; ogs_gtp2_tlv_apn_t apn; ogs_gtp2_tlv_ebi_t default_eps_bearer_id; ogs_gtp2_tlv_node_identifier_t scef_id; } ogs_gtp2_tlv_scef_pdn_connection_t; /* Structure for Message */ typedef struct ogs_gtp2_echo_request_s { ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_node_features_t sending_node_features; } ogs_gtp2_echo_request_t; typedef struct ogs_gtp2_echo_response_s { ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_node_features_t sending_node_features; } ogs_gtp2_echo_response_t; typedef struct ogs_gtp2_create_session_request_s { ogs_gtp2_tlv_imsi_t imsi; ogs_gtp2_tlv_msisdn_t msisdn; ogs_gtp2_tlv_mei_t me_identity; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_serving_network_t serving_network; ogs_gtp2_tlv_rat_type_t rat_type; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_f_teid_t pgw_s5_s8_address_for_control_plane_or_pmip; ogs_gtp2_tlv_apn_t access_point_name; ogs_gtp2_tlv_selection_mode_t selection_mode; ogs_gtp2_tlv_pdn_type_t pdn_type; ogs_gtp2_tlv_paa_t pdn_address_allocation; ogs_gtp2_tlv_apn_restriction_t maximum_apn_restriction; ogs_gtp2_tlv_ambr_t aggregate_maximum_bit_rate; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_twmi_t trusted_wlan_mode_indication; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_bearer_context_t bearer_contexts_to_be_created[OGS_BEARER_PER_UE]; ogs_gtp2_tlv_bearer_context_t bearer_contexts_to_be_removed; ogs_gtp2_tlv_trace_information_t trace_information; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_fq_csid_t mme_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_fq_csid_t epdg_fq_csid; ogs_gtp2_tlv_fq_csid_t twan_fq_csid; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_uci_t user_csg_information; ogs_gtp2_tlv_charging_characteristics_t charging_characteristics; ogs_gtp2_tlv_ldn_t mme_s4_sgsn_ldn; ogs_gtp2_tlv_ldn_t sgw_ldn; ogs_gtp2_tlv_ldn_t epdg_ldn; ogs_gtp2_tlv_ldn_t twan_ldn; ogs_gtp2_tlv_signalling_priority_indication_t signalling_priority_indication; ogs_gtp2_tlv_ip_address_t ue_local_ip_address; ogs_gtp2_tlv_port_number_t ue_udp_port; ogs_gtp2_tlv_apco_t additional_protocol_configuration_options; ogs_gtp2_tlv_ip_address_t hnb_local_ip_address; ogs_gtp2_tlv_port_number_t hnb_udp_port; ogs_gtp2_tlv_ip_address_t mme_s4_sgsn_identifier; ogs_gtp2_tlv_twan_identifier_t twan_identifier; ogs_gtp2_tlv_ip_address_t epdg_ip_address; ogs_gtp2_tlv_cn_operator_selection_entity_t cn_operator_selection_entity; ogs_gtp2_tlv_presence_reporting_area_information_t presence_reporting_area_information; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t twan_epdg_s_overload_control_information; ogs_gtp2_tlv_millisecond_time_stamp_t origination_time_stamp; ogs_gtp2_tlv_integer_number_t maximum_wait_time; ogs_gtp2_tlv_twan_identifier_t wlan_location_information; ogs_gtp2_tlv_twan_identifier_timestamp_t wlan_location_timestamp; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_remote_ue_context_t remote_ue_context_connected; ogs_gtp2_tlv_node_identifier_t _aaa_server_identifier; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_serving_plmn_rate_control_t serving_plmn_rate_control; ogs_gtp2_tlv_counter_t mo_exception_data_counter; ogs_gtp2_tlv_port_number_t ue_tcp_port; ogs_gtp2_tlv_mapped_ue_usage_type_t mapped_ue_usage_type; ogs_gtp2_tlv_uli_t user_location_information_for_sgw; ogs_gtp2_tlv_fqdn_t sgw_u_node_name; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_up_function_selection_indication_flags_t up_function_selection_indication_flags; ogs_gtp2_tlv_apn_rate_control_status_t apn_rate_control_status; } ogs_gtp2_create_session_request_t; typedef struct ogs_gtp2_create_session_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_change_reporting_action_t change_reporting_action; ogs_gtp2_tlv_csg_information_reporting_action_t csg_information_reporting_action; ogs_gtp2_tlv_enb_information_reporting_t hnb_information_reporting; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_f_teid_t pgw_s5_s8__s2a_s2b_f_teid_for_pmip_based_interface_or_for_gtp_based_control_plane_interface; ogs_gtp2_tlv_paa_t pdn_address_allocation; ogs_gtp2_tlv_apn_restriction_t apn_restriction; ogs_gtp2_tlv_ambr_t aggregate_maximum_bit_rate; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_bearer_context_t bearer_contexts_created[OGS_BEARER_PER_UE]; ogs_gtp2_tlv_bearer_context_t bearer_contexts_marked_for_removal; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_fqdn_t charging_gateway_name; ogs_gtp2_tlv_ip_address_t charging_gateway_address; ogs_gtp2_tlv_fq_csid_t pgw_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_ldn_t sgw_ldn; ogs_gtp2_tlv_ldn_t pgw_ldn; ogs_gtp2_tlv_epc_timer_t pgw_back_off_time; ogs_gtp2_tlv_apco_t additional_protocol_configuration_options; ogs_gtp2_tlv_ip4cp_t trusted_wlan_ipv4_parameters; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_presence_reporting_area_action_t presence_reporting_area_action; ogs_gtp2_tlv_load_control_information_t pgw_s_node_level_load_control_information; ogs_gtp2_tlv_load_control_information_t pgw_s_apn_level_load_control_information; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_charging_id_t pdn_connection_charging_id; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_fqdn_t pgw_node_name; ogs_gtp2_tlv_sgi_ptp_tunnel_address_t sgi_ptp_tunnel_address; ogs_gtp2_tlv_pgw_change_info_t pgw_change_info; ogs_gtp2_tlv_fqdn_t alternative_pgw_c_smf_fqdn; ogs_gtp2_tlv_ip_address_t alternative_pgw_c_smf_ip_address; ogs_gtp2_tlv_up_security_policy_t up_security_policy; } ogs_gtp2_create_session_response_t; typedef struct ogs_gtp2_modify_bearer_request_s { ogs_gtp2_tlv_mei_t me_identity; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_serving_network_t serving_network; ogs_gtp2_tlv_rat_type_t rat_type; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_ambr_t aggregate_maximum_bit_rate; ogs_gtp2_tlv_delay_value_t delay_downlink_packet_notification_request; ogs_gtp2_tlv_bearer_context_t bearer_contexts_to_be_modified[OGS_BEARER_PER_UE]; ogs_gtp2_tlv_bearer_context_t bearer_contexts_to_be_removed; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_fq_csid_t mme_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_uci_t user_csg_information; ogs_gtp2_tlv_ip_address_t ue_local_ip_address; ogs_gtp2_tlv_port_number_t ue_udp_port; ogs_gtp2_tlv_ldn_t mme_s4_sgsn_ldn; ogs_gtp2_tlv_ldn_t sgw_ldn; ogs_gtp2_tlv_ip_address_t hnb_local_ip_address; ogs_gtp2_tlv_port_number_t hnb_udp_port; ogs_gtp2_tlv_ip_address_t mme_s4_sgsn_identifier; ogs_gtp2_tlv_cn_operator_selection_entity_t cn_operator_selection_entity; ogs_gtp2_tlv_presence_reporting_area_information_t presence_reporting_area_information; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t epdg_s_overload_control_information; ogs_gtp2_tlv_serving_plmn_rate_control_t serving_plmn_rate_control; ogs_gtp2_tlv_counter_t mo_exception_data_counter; ogs_gtp2_tlv_imsi_t imsi; ogs_gtp2_tlv_uli_t user_location_information_for_sgw; ogs_gtp2_tlv_twan_identifier_t wlan_location_information; ogs_gtp2_tlv_twan_identifier_timestamp_t wlan_location_timestamp; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_modify_bearer_request_t; typedef struct ogs_gtp2_modify_bearer_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_msisdn_t msisdn; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_apn_restriction_t apn_restriction; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_bearer_context_t bearer_contexts_modified[OGS_BEARER_PER_UE]; ogs_gtp2_tlv_bearer_context_t bearer_contexts_marked_for_removal; ogs_gtp2_tlv_change_reporting_action_t change_reporting_action; ogs_gtp2_tlv_csg_information_reporting_action_t csg_information_reporting_action; ogs_gtp2_tlv_enb_information_reporting_t hnb_information_reporting; ogs_gtp2_tlv_fqdn_t charging_gateway_name; ogs_gtp2_tlv_ip_address_t charging_gateway_address; ogs_gtp2_tlv_fq_csid_t pgw_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_ldn_t sgw_ldn; ogs_gtp2_tlv_ldn_t pgw_ldn; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_presence_reporting_area_action_t presence_reporting_area_action; ogs_gtp2_tlv_load_control_information_t pgw_s_node_level_load_control_information; ogs_gtp2_tlv_load_control_information_t pgw_s_apn_level_load_control_information; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_charging_id_t pdn_connection_charging_id; ogs_gtp2_tlv_pgw_change_info_t pgw_change_info; } ogs_gtp2_modify_bearer_response_t; typedef struct ogs_gtp2_delete_session_request_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_node_type_t originating_node; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_uli_timestamp_t uli_timestamp; ogs_gtp2_tlv_ran_nas_cause_t ran_nas_release_cause; ogs_gtp2_tlv_twan_identifier_t twan_identifier; ogs_gtp2_tlv_twan_identifier_timestamp_t twan_identifier_timestamp; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t twan_epdg_s_overload_control_information; ogs_gtp2_tlv_twan_identifier_t wlan_location_information; ogs_gtp2_tlv_twan_identifier_timestamp_t wlan_location_timestamp; ogs_gtp2_tlv_ip_address_t ue_local_ip_address; ogs_gtp2_tlv_port_number_t ue_udp_port; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_port_number_t ue_tcp_port; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_delete_session_request_t; typedef struct ogs_gtp2_delete_session_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_load_control_information_t pgw_s_node_level_load_control_information; ogs_gtp2_tlv_load_control_information_t pgw_s_apn_level_load_control_information; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_apn_rate_control_status_t apn_rate_control_status; } ogs_gtp2_delete_session_response_t; typedef struct ogs_gtp2_modify_bearer_command_s { ogs_gtp2_tlv_ambr_t apn_aggregate_maximum_bit_rate; ogs_gtp2_tlv_bearer_context_t bearer_context; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t twan_epdg_s_overload_control_information; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; } ogs_gtp2_modify_bearer_command_t; typedef struct ogs_gtp2_modify_bearer_failure_indication_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; } ogs_gtp2_modify_bearer_failure_indication_t; typedef struct ogs_gtp2_delete_bearer_command_s { ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_uli_timestamp_t uli_timestamp; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_delete_bearer_command_t; typedef struct ogs_gtp2_delete_bearer_failure_indication_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_bearer_context_t bearer_context; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; } ogs_gtp2_delete_bearer_failure_indication_t; typedef struct ogs_gtp2_bearer_resource_command_s { ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_pti_t procedure_transaction_id; ogs_gtp2_tlv_flow_qos_t flow_quality_of_service; ogs_gtp2_tlv_tad_t traffic_aggregate_description; ogs_gtp2_tlv_rat_type_t rat_type; ogs_gtp2_tlv_serving_network_t serving_network; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_ebi_t eps_bearer_id; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_f_teid_t s4_u_sgsn_f_teid; ogs_gtp2_tlv_f_teid_t s12_rnc_f_teid; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_signalling_priority_indication_t signalling_priority_indication; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_bearer_resource_command_t; typedef struct ogs_gtp2_bearer_resource_failure_indication_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_pti_t procedure_transaction_id; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_f_container_t nbifom_container; } ogs_gtp2_bearer_resource_failure_indication_t; typedef struct ogs_gtp2_downlink_data_notification_failure_indication_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_node_type_t originating_node; ogs_gtp2_tlv_imsi_t imsi; } ogs_gtp2_downlink_data_notification_failure_indication_t; typedef struct ogs_gtp2_create_bearer_request_s { ogs_gtp2_tlv_pti_t procedure_transaction_id; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_fq_csid_t pgw_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_change_reporting_action_t change_reporting_action; ogs_gtp2_tlv_csg_information_reporting_action_t csg_information_reporting_action; ogs_gtp2_tlv_enb_information_reporting_t hnb_information_reporting; ogs_gtp2_tlv_presence_reporting_area_action_t presence_reporting_area_action; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_load_control_information_t pgw_s_node_level_load_control_information; ogs_gtp2_tlv_load_control_information_t pgw_s_apn_level_load_control_information; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_pgw_change_info_t pgw_change_info; } ogs_gtp2_create_bearer_request_t; typedef struct ogs_gtp2_create_bearer_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_fq_csid_t mme_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_fq_csid_t epdg_fq_csid; ogs_gtp2_tlv_fq_csid_t twan_fq_csid; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_twan_identifier_t twan_identifier; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_presence_reporting_area_information_t presence_reporting_area_information; ogs_gtp2_tlv_ip_address_t mme_s4_sgsn_identifier; ogs_gtp2_tlv_overload_control_information_t twan_epdg_s_overload_control_information; ogs_gtp2_tlv_twan_identifier_t wlan_location_information; ogs_gtp2_tlv_twan_identifier_timestamp_t wlan_location_timestamp; ogs_gtp2_tlv_port_number_t ue_udp_port; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_port_number_t ue_tcp_port; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_create_bearer_response_t; typedef struct ogs_gtp2_update_bearer_request_s { ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_pti_t procedure_transaction_id; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_ambr_t aggregate_maximum_bit_rate; ogs_gtp2_tlv_change_reporting_action_t change_reporting_action; ogs_gtp2_tlv_csg_information_reporting_action_t csg_information_reporting_action; ogs_gtp2_tlv_enb_information_reporting_t hnb_information_reporting; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_fq_csid_t pgw_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_presence_reporting_area_action_t presence_reporting_area_action; ogs_gtp2_tlv_load_control_information_t pgw_s_node_level_load_control_information; ogs_gtp2_tlv_load_control_information_t pgw_s_apn_level_load_control_information; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_pgw_change_info_t pgw_change_info; } ogs_gtp2_update_bearer_request_t; typedef struct ogs_gtp2_update_bearer_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_fq_csid_t mme_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_fq_csid_t epdg_fq_csid; ogs_gtp2_tlv_fq_csid_t twan_fq_csid; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_twan_identifier_t twan_identifier; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_presence_reporting_area_information_t presence_reporting_area_information; ogs_gtp2_tlv_ip_address_t mme_s4_sgsn_identifier; ogs_gtp2_tlv_overload_control_information_t twan_epdg_s_overload_control_information; ogs_gtp2_tlv_twan_identifier_t wlan_location_information; ogs_gtp2_tlv_twan_identifier_timestamp_t wlan_location_timestamp; ogs_gtp2_tlv_port_number_t ue_udp_port; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_port_number_t ue_tcp_port; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_update_bearer_response_t; typedef struct ogs_gtp2_delete_bearer_request_s { ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_ebi_t eps_bearer_ids; ogs_gtp2_tlv_bearer_context_t failed_bearer_contexts; ogs_gtp2_tlv_pti_t procedure_transaction_id; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_fq_csid_t pgw_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_load_control_information_t pgw_s_node_level_load_control_information; ogs_gtp2_tlv_load_control_information_t pgw_s_apn_level_load_control_information; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t pgw_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_apn_rate_control_status_t apn_rate_control_status; ogs_gtp2_tlv_epco_t extended_protocol_configuration_options; ogs_gtp2_tlv_pgw_change_info_t pgw_change_info; } ogs_gtp2_delete_bearer_request_t; typedef struct ogs_gtp2_delete_bearer_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_ebi_t linked_eps_bearer_id; ogs_gtp2_tlv_bearer_context_t bearer_contexts; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_fq_csid_t mme_fq_csid; ogs_gtp2_tlv_fq_csid_t sgw_fq_csid; ogs_gtp2_tlv_fq_csid_t epdg_fq_csid; ogs_gtp2_tlv_fq_csid_t twan_fq_csid; ogs_gtp2_tlv_pco_t protocol_configuration_options; ogs_gtp2_tlv_ue_time_zone_t ue_time_zone; ogs_gtp2_tlv_uli_t user_location_information; ogs_gtp2_tlv_uli_timestamp_t uli_timestamp; ogs_gtp2_tlv_twan_identifier_t twan_identifier; ogs_gtp2_tlv_twan_identifier_timestamp_t twan_identifier_timestamp; ogs_gtp2_tlv_overload_control_information_t mme_s4_sgsn_s_overload_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_ip_address_t mme_s4_sgsn_identifier; ogs_gtp2_tlv_overload_control_information_t twan_epdg_s_overload_control_information; ogs_gtp2_tlv_twan_identifier_t wlan_location_information; ogs_gtp2_tlv_twan_identifier_timestamp_t wlan_location_timestamp; ogs_gtp2_tlv_port_number_t ue_udp_port; ogs_gtp2_tlv_f_container_t nbifom_container; ogs_gtp2_tlv_port_number_t ue_tcp_port; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_delete_bearer_response_t; typedef struct ogs_gtp2_create_indirect_data_forwarding_tunnel_request_s { ogs_gtp2_tlv_imsi_t imsi; ogs_gtp2_tlv_mei_t me_identity; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_bearer_context_t bearer_contexts[OGS_BEARER_PER_UE]; ogs_gtp2_tlv_recovery_t recovery; } ogs_gtp2_create_indirect_data_forwarding_tunnel_request_t; typedef struct ogs_gtp2_create_indirect_data_forwarding_tunnel_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_bearer_context_t bearer_contexts[OGS_BEARER_PER_UE]; ogs_gtp2_tlv_recovery_t recovery; } ogs_gtp2_create_indirect_data_forwarding_tunnel_response_t; typedef struct ogs_gtp2_delete_indirect_data_forwarding_tunnel_request_s { } ogs_gtp2_delete_indirect_data_forwarding_tunnel_request_t; typedef struct ogs_gtp2_delete_indirect_data_forwarding_tunnel_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_recovery_t recovery; } ogs_gtp2_delete_indirect_data_forwarding_tunnel_response_t; typedef struct ogs_gtp2_release_access_bearers_request_s { ogs_gtp2_tlv_ebi_t list_of_rabs; ogs_gtp2_tlv_node_type_t originating_node; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_release_access_bearers_request_t; typedef struct ogs_gtp2_release_access_bearers_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; } ogs_gtp2_release_access_bearers_response_t; typedef struct ogs_gtp2_downlink_data_notification_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_ebi_t eps_bearer_id; ogs_gtp2_tlv_arp_t allocation_retention_priority; ogs_gtp2_tlv_imsi_t imsi; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; ogs_gtp2_tlv_paging_and_service_information_t paging_and_service_information; ogs_gtp2_tlv_integer_number_t dl_data_packets_size; } ogs_gtp2_downlink_data_notification_t; typedef struct ogs_gtp2_downlink_data_notification_acknowledge_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_delay_value_t data_notification_delay; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_throttling_t dl_low_priority_traffic_throttling; ogs_gtp2_tlv_imsi_t imsi; ogs_gtp2_tlv_epc_timer_t dl_buffering_duration; ogs_gtp2_tlv_integer_number_t dl_buffering_suggested_packet_count; } ogs_gtp2_downlink_data_notification_acknowledge_t; typedef struct ogs_gtp2_modify_access_bearers_request_s { ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_f_teid_t sender_f_teid_for_control_plane; ogs_gtp2_tlv_delay_value_t delay_downlink_packet_notification_request; ogs_gtp2_tlv_bearer_context_t bearer_contexts_to_be_modified; ogs_gtp2_tlv_bearer_context_t bearer_contexts_to_be_removed; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_secondary_rat_usage_data_report_t secondary_rat_usage_data_report; ogs_gtp2_tlv_pscell_id_t pscell_id; } ogs_gtp2_modify_access_bearers_request_t; typedef struct ogs_gtp2_modify_access_bearers_response_s { ogs_gtp2_tlv_cause_t cause; ogs_gtp2_tlv_bearer_context_t bearer_contexts_modified; ogs_gtp2_tlv_bearer_context_t bearer_contexts_marked_for_removal; ogs_gtp2_tlv_recovery_t recovery; ogs_gtp2_tlv_indication_t indication_flags; ogs_gtp2_tlv_load_control_information_t sgw_s_node_level_load_control_information; ogs_gtp2_tlv_overload_control_information_t sgw_s_overload_control_information; } ogs_gtp2_modify_access_bearers_response_t; typedef struct ogs_gtp2_message_s { ogs_gtp2_header_t h; union { ogs_gtp2_echo_request_t echo_request; ogs_gtp2_echo_response_t echo_response; ogs_gtp2_create_session_request_t create_session_request; ogs_gtp2_create_session_response_t create_session_response; ogs_gtp2_modify_bearer_request_t modify_bearer_request; ogs_gtp2_modify_bearer_response_t modify_bearer_response; ogs_gtp2_delete_session_request_t delete_session_request; ogs_gtp2_delete_session_response_t delete_session_response; ogs_gtp2_modify_bearer_command_t modify_bearer_command; ogs_gtp2_modify_bearer_failure_indication_t modify_bearer_failure_indication; ogs_gtp2_delete_bearer_command_t delete_bearer_command; ogs_gtp2_delete_bearer_failure_indication_t delete_bearer_failure_indication; ogs_gtp2_bearer_resource_command_t bearer_resource_command; ogs_gtp2_bearer_resource_failure_indication_t bearer_resource_failure_indication; ogs_gtp2_downlink_data_notification_failure_indication_t downlink_data_notification_failure_indication; ogs_gtp2_create_bearer_request_t create_bearer_request; ogs_gtp2_create_bearer_response_t create_bearer_response; ogs_gtp2_update_bearer_request_t update_bearer_request; ogs_gtp2_update_bearer_response_t update_bearer_response; ogs_gtp2_delete_bearer_request_t delete_bearer_request; ogs_gtp2_delete_bearer_response_t delete_bearer_response; ogs_gtp2_create_indirect_data_forwarding_tunnel_request_t create_indirect_data_forwarding_tunnel_request; ogs_gtp2_create_indirect_data_forwarding_tunnel_response_t create_indirect_data_forwarding_tunnel_response; ogs_gtp2_delete_indirect_data_forwarding_tunnel_request_t delete_indirect_data_forwarding_tunnel_request; ogs_gtp2_delete_indirect_data_forwarding_tunnel_response_t delete_indirect_data_forwarding_tunnel_response; ogs_gtp2_release_access_bearers_request_t release_access_bearers_request; ogs_gtp2_release_access_bearers_response_t release_access_bearers_response; ogs_gtp2_downlink_data_notification_t downlink_data_notification; ogs_gtp2_downlink_data_notification_acknowledge_t downlink_data_notification_acknowledge; ogs_gtp2_modify_access_bearers_request_t modify_access_bearers_request; ogs_gtp2_modify_access_bearers_response_t modify_access_bearers_response; }; } ogs_gtp2_message_t; int ogs_gtp2_parse_msg(ogs_gtp2_message_t *gtp2_message, ogs_pkbuf_t *pkbuf); ogs_pkbuf_t *ogs_gtp2_build_msg(ogs_gtp2_message_t *gtp2_message); #ifdef __cplusplus } #endif #endif /* OGS_GTP2_MESSAGE_H */