24 #include "pfcp_messages.h" 25 #include "pfcp_messages_encoder.h" 26 #include "pfcp_messages_decoder.h" 30 #define OVERLOADED_NEW_DELETE \ 32 static void* operator new(size_t sz) \ 34 if (sz > pool_->allocSize()) \ 35 throw RequestedSizeTooLarge(); \ 36 return pool_->allocate(); \ 38 static void operator delete(void* m) \ 40 pool_->deallocate(m); \ 42 static Void setMemoryPool(EMemory::Pool &pool) \ 47 static EMemory::Pool *pool_; 51 EString &className() override \ 53 static EString cn_ = ::__CLASS_NAME__; \ 79 virtual uint16_t
length()
const = 0;
92 uint16_t
type()
const {
return hdr_.type; }
95 uint16_t
length()
const {
return hdr_.len; }
96 uint16_t
packedLength()
const {
return hdr_.len > 0 ? hdr_.len +
sizeof(hdr_) : 0; }
98 Bool
present()
const {
return hdr_.len != 0; }
100 pfcp_ie_header_t &
header() {
return hdr_; }
114 pfcp_ie_header_t &hdr_;
159 pfcp_cause_ie_t &data();
167 pfcp_cause_ie_t &ie_;
186 pfcp_src_intfc_ie_t &data();
194 pfcp_src_intfc_ie_t &ie_;
212 uint32_t teid()
const;
215 uint8_t choose_id()
const;
220 FTeidIE &ip_address(
const in_addr &val);
221 FTeidIE &ip_address(
const in6_addr &val);
223 FTeidIE &choose_id(uint8_t val);
224 pfcp_fteid_ie_t &data();
232 pfcp_fteid_ie_t &ie_;
247 const uint8_t *ntwk_inst()
const;
248 const uint16_t ntwk_inst_len()
const;
252 pfcp_ntwk_inst_ie_t &data();
260 pfcp_ntwk_inst_ie_t &ie_;
276 const uint8_t *flow_desc()
const;
277 uint16_t len_of_flow_desc()
const;
278 const uint8_t *tos_traffic_cls()
const;
279 const uint8_t *secur_parm_idx()
const;
280 const uint8_t *flow_label()
const;
281 uint32_t sdf_filter_id()
const;
284 SdfFilterIE &flow_desc(
const uint8_t *flowDesc, uint16_t flowDescLen);
285 SdfFilterIE &tos_traffic_cls(
const uint8_t *tosTrafficClass);
286 SdfFilterIE &secur_parm_idx(
const uint8_t *securityParameterIndex);
288 SdfFilterIE &sdf_filter_id(
const uint32_t sdfFilterId);
289 pfcp_sdf_filter_ie_t &data();
297 pfcp_sdf_filter_ie_t &ie_;
308 uint16_t app_ident_len()
const;
309 const uint8_t *app_ident()
const;
311 pfcp_application_id_ie_t &data();
319 pfcp_application_id_ie_t &ie_;
349 pfcp_gate_status_ie_t &data();
357 pfcp_gate_status_ie_t &ie_;
367 uint64_t ul_mbr()
const;
368 uint64_t dl_mbr()
const;
369 MbrIE &ul_mbr(uint64_t mbr);
370 MbrIE &dl_mbr(uint64_t mbr);
371 pfcp_mbr_ie_t &data();
389 uint64_t ul_gbr()
const;
390 uint64_t dl_gbr()
const;
391 GbrIE &ul_gbr(uint64_t mbr);
392 GbrIE &dl_gbr(uint64_t mbr);
393 pfcp_gbr_ie_t &data();
411 uint32_t qer_corr_id_val()
const;
413 pfcp_qer_corr_id_ie_t &data();
421 pfcp_qer_corr_id_ie_t &ie_;
431 uint32_t prcdnc_val()
const;
433 pfcp_precedence_ie_t &data();
441 pfcp_precedence_ie_t &ie_;
453 const uint8_t *tostraffic_cls()
const;
455 pfcp_trnspt_lvl_marking_ie_t &data();
463 pfcp_trnspt_lvl_marking_ie_t &ie_;
476 uint64_t total_volume()
const;
477 uint64_t uplink_volume()
const;
478 uint64_t downlink_volume()
const;
482 pfcp_vol_thresh_ie_t &data();
490 pfcp_vol_thresh_ie_t &ie_;
500 uint32_t time_threshold()
const;
502 pfcp_time_threshold_ie_t &data();
510 pfcp_time_threshold_ie_t &ie_;
521 const ETime monitoring_time()
const;
524 pfcp_monitoring_time_ie_t &data();
532 pfcp_monitoring_time_ie_t &ie_;
546 uint64_t total_volume()
const;
547 uint64_t uplink_volume()
const;
548 uint64_t downlink_volume()
const;
552 pfcp_sbsqnt_vol_thresh_ie_t &data();
560 pfcp_sbsqnt_vol_thresh_ie_t &ie_;
571 uint32_t sbsqnt_time_thresh()
const;
573 pfcp_sbsqnt_time_thresh_ie_t &data();
581 pfcp_sbsqnt_time_thresh_ie_t &ie_;
591 uint32_t inact_det_time()
const;
593 pfcp_inact_det_time_ie_t &data();
601 pfcp_inact_det_time_ie_t &ie_;
641 pfcp_rptng_triggers_ie_t &data();
649 pfcp_rptng_triggers_ie_t &ie_;
669 uint16_t redir_svr_addr_len()
const;
670 const uint8_t *redir_svr_addr()
const;
671 uint16_t other_redir_svr_addr_len()
const;
672 const uint8_t *other_redir_svr_addr()
const;
676 pfcp_redir_info_ie_t &data();
684 pfcp_redir_info_ie_t &ie_;
701 pfcp_report_type_ie_t &data();
709 pfcp_report_type_ie_t &ie_;
724 uint16_t type_of_the_offending_ie()
const;
726 pfcp_offending_ie_ie_t &data();
734 pfcp_offending_ie_ie_t &ie_;
746 uint8_t frwdng_plcy_ident_len()
const;
747 const uint8_t *frwdng_plcy_ident()
const;
749 pfcp_frwdng_plcy_ie_t &data();
757 pfcp_frwdng_plcy_ie_t &ie_;
780 pfcp_dst_intfc_ie_t &data();
788 pfcp_dst_intfc_ie_t &ie_;
831 pfcp_up_func_feat_ie_t &data();
839 pfcp_up_func_feat_ie_t &ie_;
861 pfcp_apply_action_ie_t &data();
869 pfcp_apply_action_ie_t &ie_;
880 uint8_t paging_plcy_indctn_val()
const;
885 pfcp_dnlnk_data_svc_info_ie_t &data();
893 pfcp_dnlnk_data_svc_info_ie_t &ie_;
905 uint8_t delay_value()
const;
907 pfcp_dnlnk_data_notif_delay_ie_t &data();
915 pfcp_dnlnk_data_notif_delay_ie_t &ie_;
935 uint8_t timer_value()
const;
938 pfcp_dl_buf_dur_ie_t &data();
946 pfcp_dl_buf_dur_ie_t &ie_;
955 uint64_t pckt_cnt_val()
const;
957 pfcp_dl_buf_suggstd_pckt_cnt_ie_t &data();
965 pfcp_dl_buf_suggstd_pckt_cnt_ie_t &ie_;
981 pfcp_pfcpsmreq_flags_ie_t &data();
989 pfcp_pfcpsmreq_flags_ie_t &ie_;
1000 pfcp_pfcpsrrsp_flags_ie_t &data();
1008 pfcp_pfcpsrrsp_flags_ie_t &ie_;
1018 uint32_t sequence_number()
const;
1020 pfcp_sequence_number_ie_t &data();
1028 pfcp_sequence_number_ie_t &ie_;
1038 uint8_t metric()
const;
1040 pfcp_metric_ie_t &data();
1047 pfcp_metric_ie_t &ie_;
1067 uint8_t timer_value()
const;
1069 TimerIE &timer_unit(uint8_t val);
1070 pfcp_timer_ie_t &data();
1078 pfcp_timer_ie_t &ie_;
1091 uint16_t rule_id()
const;
1092 PdrIdIE &rule_id(uint16_t val);
1093 pfcp_pdr_id_ie_t &data();
1101 pfcp_pdr_id_ie_t &ie_;
1114 uint64_t seid()
const;
1120 FSeidIE &ip_address(
const in_addr &val);
1121 FSeidIE &ip_address(
const in6_addr &val);
1122 pfcp_fseid_ie_t &data();
1130 pfcp_fseid_ie_t &ie_;
1136 inline NodeIdException_UnrecognizedNodeIdType::NodeIdException_UnrecognizedNodeIdType(Int err)
1138 setTextf(
"Unrecognized NodeIdType (%d)", err);
1166 const in_addr &node_id_value_ipv4_address()
const;
1167 const in6_addr &node_id_value_ipv6_address()
const;
1168 const uint8_t *node_id_value_fqdn()
const;
1169 uint16_t node_id_valud_fqdn_len()
const;
1172 NodeIdIE &node_id_value(
const in_addr &val);
1173 NodeIdIE &node_id_value(
const in6_addr &val);
1175 pfcp_node_id_ie_t &data();
1183 pfcp_node_id_ie_t &ie_;
1201 uint16_t len_of_flow_desc()
const;
1202 const uint8_t *flow_desc()
const;
1203 uint16_t length_of_url()
const;
1204 const uint8_t *url2()
const;
1205 uint16_t len_of_domain_nm()
const;
1206 const uint8_t *domain_name()
const;
1207 uint16_t len_of_cstm_pfd_cntnt()
const;
1208 const uint8_t *cstm_pfd_cntnt()
const;
1209 uint16_t len_of_domain_nm_prot()
const;
1210 const uint8_t *domain_name_prot()
const;
1211 uint16_t len_of_add_flow_desc()
const;
1212 const uint8_t *add_flow_desc()
const;
1213 uint16_t len_of_add_url()
const;
1214 const uint8_t *add_url()
const;
1215 uint16_t len_of_add_domain_nm_prot()
const;
1216 const uint8_t *add_domain_nm_prot()
const;
1220 PfdContentsIE &domain_name(
const uint8_t *val, uint16_t len);
1221 PfdContentsIE &cstm_pfd_cntnt(
const uint8_t *val, uint16_t len);
1222 PfdContentsIE &domain_name_prot(
const uint8_t *val, uint16_t len);
1223 PfdContentsIE &add_flow_desc(
const uint8_t *val, uint16_t len);
1225 PfdContentsIE &add_domain_nm_prot(
const uint8_t *val, uint16_t len);
1226 pfcp_pfd_contents_ie_t &data();
1234 pfcp_pfd_contents_ie_t &ie_;
1236 Bool move(Bool flag, uint8_t *dest, uint16_t &destofs, uint8_t *src, uint16_t &srcofs, uint16_t len, uint16_t maxlen);
1237 Void updatePointer(Bool flag, uint8_t* &ptr, uint8_t *data, uint16_t &ofs, uint16_t len);
1238 Void updatePointers();
1256 pfcp_meas_mthd_ie_t &data();
1264 pfcp_meas_mthd_ie_t &ie_;
1311 pfcp_usage_rpt_trig_ie_t &data();
1319 pfcp_usage_rpt_trig_ie_t &ie_;
1329 uint32_t meas_period()
const;
1331 pfcp_meas_period_ie_t &data();
1339 pfcp_meas_period_ie_t &ie_;
1359 uint8_t number_of_csids()
const;
1360 const in_addr &ipv4_node_address()
const;
1361 const in6_addr &ipv6_node_address()
const;
1362 uint32_t mcc_mnc_id_node_address()
const;
1363 uint16_t pdn_conn_set_ident(uint8_t idx)
const;
1367 FqCsidIE &node_address(
const in_addr &val);
1368 FqCsidIE &node_address(
const in6_addr &val);
1369 FqCsidIE &node_address(uint32_t val);
1370 uint16_t &pdn_conn_set_ident(uint8_t idx);
1371 int next_pdn_conn_set_ident();
1372 pfcp_fqcsid_ie_t &data();
1380 pfcp_fqcsid_ie_t &ie_;
1395 uint64_t total_volume()
const;
1396 uint64_t uplink_volume()
const;
1397 uint64_t downlink_volume()
const;
1401 pfcp_vol_meas_ie_t &data();
1409 pfcp_vol_meas_ie_t &ie_;
1420 uint32_t duration_value()
const;
1422 pfcp_dur_meas_ie_t &data();
1430 pfcp_dur_meas_ie_t &ie_;
1441 ETime time_of_frst_pckt()
const;
1444 pfcp_time_of_frst_pckt_ie_t &data();
1452 pfcp_time_of_frst_pckt_ie_t &ie_;
1463 ETime time_of_lst_pckt()
const;
1466 pfcp_time_of_lst_pckt_ie_t &data();
1474 pfcp_time_of_lst_pckt_ie_t &ie_;
1484 uint32_t quota_hldng_time_val()
const;
1486 pfcp_quota_hldng_time_ie_t &data();
1494 pfcp_quota_hldng_time_ie_t &ie_;
1508 pfcp_drpd_dl_traffic_thresh_ie_t &data();
1516 pfcp_drpd_dl_traffic_thresh_ie_t &ie_;
1532 pfcp_volume_quota_ie_t &data();
1540 pfcp_volume_quota_ie_t &ie_;
1550 uint32_t time_quota_val()
const;
1552 pfcp_time_quota_ie_t &data();
1560 pfcp_time_quota_ie_t &ie_;
1571 ETime start_time()
const;
1574 pfcp_start_time_ie_t &data();
1582 pfcp_start_time_ie_t &ie_;
1593 ETime end_time()
const;
1596 pfcp_end_time_ie_t &data();
1604 pfcp_end_time_ie_t &ie_;
1621 uint32_t urr_id_value()
const;
1622 UrrIdIE &urr_id_value(uint32_t val);
1623 pfcp_urr_id_ie_t &data();
1631 pfcp_urr_id_ie_t &ie_;
1641 uint32_t lnkd_urr_id_val()
const;
1643 pfcp_linked_urr_id_ie_t &data();
1651 pfcp_linked_urr_id_ie_t &ie_;
1677 uint32_t teid()
const;
1680 uint32_t port_number()
const;
1681 const uint8_t *ctag_value()
const;
1682 const uint8_t *stag_value()
const;
1693 pfcp_outer_hdr_creation_ie_t &data();
1701 pfcp_outer_hdr_creation_ie_t &ie_;
1715 uint8_t bar_id_value()
const;
1716 BarIdIE &bar_id_value(uint8_t val);
1717 pfcp_bar_id_ie_t &data();
1725 pfcp_bar_id_ie_t &ie_;
1741 pfcp_cp_func_feat_ie_t &data();
1749 pfcp_cp_func_feat_ie_t &ie_;
1768 pfcp_usage_info_ie_t &data();
1776 pfcp_usage_info_ie_t &ie_;
1786 const uint8_t *app_inst_ident()
const;
1788 pfcp_app_inst_id_ie_t &data();
1796 pfcp_app_inst_id_ie_t &ie_;
1816 pfcp_flow_info_ie_t &data();
1824 pfcp_flow_info_ie_t &ie_;
1842 const uint8_t ipv6_pfx_dlgtn_bits()
const;
1849 pfcp_ue_ip_address_ie_t &data();
1857 pfcp_ue_ip_address_ie_t &ie_;
1879 uint16_t max_uplnk_pckt_rate()
const;
1881 uint16_t max_dnlnk_pckt_rate()
const;
1884 pfcp_packet_rate_ie_t &data();
1892 pfcp_packet_rate_ie_t &ie_;
1916 Bool pdu_session_container()
const;
1918 pfcp_outer_hdr_removal_ie_t &data();
1926 pfcp_outer_hdr_removal_ie_t &ie_;
1938 ETime rcvry_time_stmp_val()
const;
1940 pfcp_rcvry_time_stmp_ie_t &data();
1948 pfcp_rcvry_time_stmp_ie_t &ie_;
1960 const uint8_t *tostraffic_cls()
const;
1961 const uint8_t *svc_cls_indctr()
const;
1964 pfcp_dl_flow_lvl_marking_ie_t &data();
1972 pfcp_dl_flow_lvl_marking_ie_t &ie_;
1988 uint8_t len_of_hdr_fld_nm()
const;
1989 const uint8_t *hdr_fld_nm()
const;
1990 uint8_t len_of_hdr_fld_val()
const;
1991 const uint8_t *hdr_fld_val()
const;
1995 pfcp_hdr_enrchmt_ie_t &data();
2003 pfcp_hdr_enrchmt_ie_t &ie_;
2021 pfcp_meas_info_ie_t &data();
2029 pfcp_meas_info_ie_t &ie_;
2040 pfcp_node_rpt_type_ie_t &data();
2048 pfcp_node_rpt_type_ie_t &ie_;
2063 uint16_t len_of_dst_intfc_fld()
const;
2065 uint16_t len_of_ntwk_intfc_fld()
const;
2066 const uint8_t *ntwk_instc()
const;
2073 pfcp_rmt_gtpu_peer_ie_t &data();
2081 pfcp_rmt_gtpu_peer_ie_t &ie_;
2092 uint32_t urseqn()
const;
2094 pfcp_urseqn_ie_t &data();
2102 pfcp_urseqn_ie_t &ie_;
2112 uint16_t predef_rules_nm_len()
const;
2113 const uint8_t *predef_rules_nm()
const;
2115 pfcp_actvt_predef_rules_ie_t &data();
2123 pfcp_actvt_predef_rules_ie_t &ie_;
2132 uint16_t predef_rules_nm_len()
const;
2133 const uint8_t *predef_rules_nm()
const;
2135 pfcp_deact_predef_rules_ie_t &data();
2143 pfcp_deact_predef_rules_ie_t &ie_;
2158 uint32_t far_id_value()
const;
2159 FarIdIE &far_id_value(uint32_t val);
2160 pfcp_far_id_ie_t &data();
2168 pfcp_far_id_ie_t &ie_;
2181 uint32_t qer_id_value()
const;
2182 QerIdIE &qer_id_value(uint32_t val);
2183 pfcp_qer_id_ie_t &data();
2191 pfcp_qer_id_ie_t &ie_;
2202 pfcp_oci_flags_ie_t &data();
2210 pfcp_oci_flags_ie_t &ie_;
2221 pfcp_up_assn_rel_req_ie_t &data();
2229 pfcp_up_assn_rel_req_ie_t &ie_;
2249 uint8_t timer_value()
const;
2251 pfcp_graceful_rel_period_ie_t &data();
2259 pfcp_graceful_rel_period_ie_t &ie_;
2279 pfcp_pdn_type_ie_t &data();
2287 pfcp_pdn_type_ie_t &ie_;
2307 uint32_t rule_id_value()
const;
2309 pfcp_failed_rule_id_ie_t &data();
2317 pfcp_failed_rule_id_ie_t &ie_;
2334 uint32_t base_time_int()
const;
2336 pfcp_time_quota_mech_ie_t &data();
2344 pfcp_time_quota_mech_ie_t &ie_;
2357 uint8_t teidri()
const;
2358 Bool assoni()
const;
2359 Bool assosi()
const;
2360 uint8_t teid_range()
const;
2364 uint8_t ntwk_inst_len()
const;
2365 const uint8_t *ntwk_inst()
const;
2373 pfcp_user_plane_ip_rsrc_info_ie_t &data();
2381 pfcp_user_plane_ip_rsrc_info_ie_t &ie_;
2391 uint32_t user_plane_inact_timer()
const;
2393 pfcp_user_plane_inact_timer_ie_t &data();
2401 pfcp_user_plane_inact_timer_ie_t &ie_;
2410 int64_t value_digits()
const;
2411 int32_t exponent()
const;
2414 pfcp_multiplier_ie_t &data();
2422 pfcp_multiplier_ie_t &ie_;
2431 uint32_t urr_id_value()
const;
2433 pfcp_agg_urr_id_ie_t &data();
2441 pfcp_agg_urr_id_ie_t &ie_;
2458 pfcp_sbsqnt_vol_quota_ie_t &data();
2466 pfcp_sbsqnt_vol_quota_ie_t &ie_;
2477 uint32_t time_quota_val()
const;
2479 pfcp_sbsqnt_time_quota_ie_t &data();
2487 pfcp_sbsqnt_time_quota_ie_t &ie_;
2498 RqiIE &rqi(Bool val);
2499 pfcp_rqi_ie_t &data();
2518 uint8_t qfi_value()
const;
2519 QfiIE &qfi_value(uint8_t val);
2520 pfcp_qfi_ie_t &data();
2539 uint32_t query_urr_ref_val()
const;
2541 pfcp_query_urr_ref_ie_t &data();
2549 pfcp_query_urr_ref_ie_t &ie_;
2560 uint16_t nbr_of_add_usage_rpts_val()
const;
2563 pfcp_add_usage_rpts_info_ie_t &data();
2571 pfcp_add_usage_rpts_info_ie_t &ie_;
2586 uint8_t traffic_endpt_id_val()
const;
2588 pfcp_traffic_endpt_id_ie_t &data();
2596 pfcp_traffic_endpt_id_ie_t &ie_;
2609 const uint8_t *src_mac_addr_val()
const;
2610 const uint8_t *dst_mac_addr_val()
const;
2611 const uint8_t *upr_src_mac_addr_val()
const;
2612 const uint8_t *upr_dst_mac_addr_val()
const;
2615 MacAddressIE &upr_dst_mac_addr_val(
const uint8_t *val);
2616 MacAddressIE &upr_src_mac_addr_val(
const uint8_t *val);
2617 pfcp_mac_address_ie_t &data();
2625 pfcp_mac_address_ie_t &ie_;
2637 uint8_t pcp_value()
const;
2638 Bool dei_flag()
const;
2639 uint8_t cvid_value()
const;
2640 uint8_t cvid_value2()
const;
2644 CTagIE &pcp_value(uint8_t val);
2645 CTagIE &dei_flag(Bool val);
2646 CTagIE &cvid_value(uint8_t val);
2647 CTagIE &cvid_value2(uint8_t val);
2648 pfcp_ctag_ie_t &data();
2656 pfcp_ctag_ie_t &ie_;
2668 uint8_t pcp_value()
const;
2669 Bool dei_flag()
const;
2670 uint8_t svid_value()
const;
2671 uint8_t svid_value2()
const;
2675 STagIE &pcp_value(uint8_t val);
2676 STagIE &dei_flag(Bool val);
2677 STagIE &svid_value(uint8_t val);
2678 STagIE &svid_value2(uint8_t val);
2679 pfcp_stag_ie_t &data();
2687 pfcp_stag_ie_t &ie_;
2696 uint16_t ethertype()
const;
2698 pfcp_ethertype_ie_t &data();
2706 pfcp_ethertype_ie_t &ie_;
2719 pfcp_proxying_ie_t &data();
2727 pfcp_proxying_ie_t &ie_;
2736 uint32_t eth_fltr_id_val()
const;
2738 pfcp_eth_fltr_id_ie_t &data();
2746 pfcp_eth_fltr_id_ie_t &ie_;
2757 pfcp_eth_fltr_props_ie_t &data();
2765 pfcp_eth_fltr_props_ie_t &ie_;
2776 uint8_t pckt_cnt_val()
const;
2778 pfcp_suggstd_buf_pckts_cnt_ie_t &data();
2786 pfcp_suggstd_buf_pckts_cnt_ie_t &ie_;
2797 Bool msisdnf()
const;
2799 uint8_t length_of_imsi()
const;
2800 uint8_t length_of_imei()
const;
2801 uint8_t len_of_msisdn()
const;
2802 uint8_t length_of_nai()
const;
2803 const uint8_t *imsi()
const;
2804 const uint8_t *imei()
const;
2805 const uint8_t *msisdn()
const;
2806 const uint8_t *nai()
const;
2807 UserIdIE &imsi(
const uint8_t *val, uint8_t len);
2808 UserIdIE &imei(
const uint8_t *val, uint8_t len);
2809 UserIdIE &msisdn(
const uint8_t *val, uint8_t len);
2810 UserIdIE &nai(
const uint8_t *val, uint8_t len);
2811 pfcp_user_id_ie_t &data();
2819 pfcp_user_id_ie_t &ie_;
2831 pfcp_eth_pdu_sess_info_ie_t &data();
2839 pfcp_eth_pdu_sess_info_ie_t &ie_;
2848 uint8_t nbr_of_mac_addrs()
const;
2849 const uint8_t *mac_addr_val(uint8_t idx);
2851 pfcp_mac_addrs_detctd_ie_t &data();
2859 pfcp_mac_addrs_detctd_ie_t &ie_;
2868 uint8_t nbr_of_mac_addrs()
const;
2869 const uint8_t *mac_addr_val(uint8_t idx);
2871 pfcp_mac_addrs_rmvd_ie_t &data();
2879 pfcp_mac_addrs_rmvd_ie_t &ie_;
2889 uint32_t eth_inact_timer()
const;
2891 pfcp_eth_inact_timer_ie_t &data();
2899 pfcp_eth_inact_timer_ie_t &ie_;
2910 uint32_t sbsqnt_evnt_quota()
const;
2912 pfcp_sbsqnt_evnt_quota_ie_t &data();
2920 pfcp_sbsqnt_evnt_quota_ie_t &ie_;
2931 uint32_t sbsqnt_evnt_thresh()
const;
2933 pfcp_sbsqnt_evnt_thresh_ie_t &data();
2941 pfcp_sbsqnt_evnt_thresh_ie_t &ie_;
2951 uint8_t mcc_digit_1()
const;
2952 uint8_t mcc_digit_2()
const;
2953 uint8_t mcc_digit_3()
const;
2954 uint8_t mnc_digit_1()
const;
2955 uint8_t mnc_digit_2()
const;
2956 uint8_t mnc_digit_3()
const;
2957 uint32_t trace_id()
const;
2958 uint8_t len_of_trigrng_evnts()
const;
2959 const uint8_t *trigrng_evnts()
const;
2960 uint16_t sess_trc_depth()
const;
2961 uint32_t len_of_list_of_intfcs()
const;
2962 const uint8_t *list_of_intfcs()
const;
2963 uint16_t len_of_ip_addr_of_trc_coll_ent()
const;
2964 in_addr &ipv4_addr_of_trc_coll_ent()
const;
2965 in6_addr &ipv6_addr_of_trc_coll_ent()
const;
2976 pfcp_trc_info_ie_t &data();
2984 pfcp_trc_info_ie_t &ie_;
2995 uint16_t framed_route_len()
const;
2996 const uint8_t *framed_route()
const;
2997 FramedRouteIE &framed_route(
const uint8_t *val, uint16_t len);
2998 pfcp_framed_route_ie_t &data();
3006 pfcp_framed_route_ie_t &ie_;
3027 pfcp_framed_routing_ie_t &data();
3035 pfcp_framed_routing_ie_t &ie_;
3046 uint16_t frmd_ipv6_rte_len()
const;
3047 const uint8_t *frmd_ipv6_rte()
const;
3049 pfcp_frmd_ipv6_rte_ie_t &data();
3057 pfcp_frmd_ipv6_rte_ie_t &ie_;
3067 uint32_t sbsqnt_evnt_quota()
const ;
3069 pfcp_event_quota_ie_t &data();
3077 pfcp_event_quota_ie_t &ie_;
3087 uint32_t event_threshold()
const;
3089 pfcp_event_threshold_ie_t &data();
3097 pfcp_event_threshold_ie_t &ie_;
3106 ETime evnt_time_stmp()
const;
3108 pfcp_evnt_time_stmp_ie_t &data();
3116 pfcp_evnt_time_stmp_ie_t &ie_;
3126 uint32_t avgng_wnd()
const;
3128 pfcp_avgng_wnd_ie_t &data();
3136 pfcp_avgng_wnd_ie_t &ie_;
3146 uint8_t ppi_value()
const;
3148 pfcp_paging_plcy_indctr_ie_t &data();
3156 pfcp_paging_plcy_indctr_ie_t &ie_;
3165 uint16_t apn_dnn_len()
const;
3166 const uint8_t *apn_dnn()
const;
3167 ApnDnnIE &apn_dnn(
const uint8_t *val, uint16_t len);
3168 pfcp_apn_dnn_ie_t &data();
3176 pfcp_apn_dnn_ie_t &ie_;
3209 pfcp_3gpp_intfc_type_ie_t &data();
3217 pfcp_3gpp_intfc_type_ie_t &ie_;
3255 pfcp_pfd_context_ie_t &data();
3263 pfcp_pfd_context_ie_t &ie_;
3264 vector<PfdContentsIE> pfdcnts_;
3275 int nextPfdContext();
3276 pfcp_app_ids_pfds_ie_t &data();
3284 pfcp_app_ids_pfds_ie_t &ie_;
3286 std::vector<PfdContextIE> pfdctxts_;
3304 int next_framed_route();
3305 int next_frmd_ipv6_rte();
3306 pfcp_create_traffic_endpt_ie_t &data();
3314 pfcp_create_traffic_endpt_ie_t &ie_;
3320 std::vector<FramedRouteIE> fr_;
3322 std::vector<FramedIpv6RouteIE> fr6_;
3335 pfcp_create_bar_ie_t &data();
3343 pfcp_create_bar_ie_t &ie_;
3359 MbrIE &maximum_bitrate();
3360 GbrIE &guaranteed_bitrate();
3363 QfiIE &qos_flow_ident();
3364 RqiIE &reflective_qos();
3367 pfcp_create_qer_ie_t &data();
3375 pfcp_create_qer_ie_t &ie_;
3403 pfcp_add_mntrng_time_ie_t &data();
3411 pfcp_add_mntrng_time_ie_t &ie_;
3430 pfcp_aggregated_urrs_ie_t &data();
3438 pfcp_aggregated_urrs_ie_t &ie_;
3474 FarIdIE &far_id_for_quota_act();
3477 int next_linked_urr_id();
3478 int next_aggregated_urrs();
3479 int next_add_mntrng_time();
3480 pfcp_create_urr_ie_t &data();
3488 pfcp_create_urr_ie_t &ie_;
3509 std::vector<LinkedUrrIdIE> lui_;
3512 std::vector<AggregatedUrrsIE> aus_;
3515 std::vector<AdditionalMonitoringTimeIE> amt_;
3528 pfcp_dupng_parms_ie_t &data();
3536 pfcp_dupng_parms_ie_t &ie_;
3559 pfcp_frwdng_parms_ie_t &data();
3567 pfcp_frwdng_parms_ie_t &ie_;
3592 int next_dupng_parms();
3593 pfcp_create_far_ie_t &data();
3601 pfcp_create_far_ie_t &ie_;
3605 std::vector<DuplicatingParametersIE> dp_;
3622 int next_sdf_filter();
3623 pfcp_eth_pckt_fltr_ie_t &data();
3631 pfcp_eth_pckt_fltr_ie_t &ie_;
3638 std::vector<SdfFilterIE> sf_;
3659 QfiIE &qfi(uint8_t idx);
3662 int next_sdf_filter();
3663 int next_eth_pckt_fltr();
3665 int next_framed_route();
3666 int next_frmd_ipv6_rte();
3667 pfcp_pdi_ie_t &data();
3681 std::vector<SdfFilterIE> sf_;
3684 std::vector<EthernetPacketFilterIE> epf_;
3685 std::vector<QfiIE> qfi_;
3686 std::vector<FramedRouteIE> fr_;
3688 std::vector<FramedIpv6RouteIE> fr6_;
3708 int next_actvt_predef_rules();
3709 pfcp_create_pdr_ie_t &data();
3717 pfcp_create_pdr_ie_t &ie_;
3723 std::vector<UrrIdIE> ui_;
3724 std::vector<QerIdIE> qi_;
3725 std::vector<ActivatePredefinedRulesIE> apr_;
3738 pfcp_created_traffic_endpt_ie_t &data();
3746 pfcp_created_traffic_endpt_ie_t &ie_;
3761 MetricIE &ovrld_reduction_metric();
3762 TimerIE &period_of_validity();
3764 pfcp_ovrld_ctl_info_ie_t &data();
3772 pfcp_ovrld_ctl_info_ie_t &ie_;
3790 pfcp_load_ctl_info_ie_t &data();
3798 pfcp_load_ctl_info_ie_t &ie_;
3812 pfcp_created_pdr_ie_t &data();
3820 pfcp_created_pdr_ie_t &ie_;
3832 int next_rmt_gtpu_peer();
3833 pfcp_user_plane_path_fail_rpt_ie_t &data();
3841 pfcp_user_plane_path_fail_rpt_ie_t &ie_;
3842 std::vector<RemoteGTPUPeerIE> rgp_;
3852 pfcp_rmv_traffic_endpt_ie_t &data();
3860 pfcp_rmv_traffic_endpt_ie_t &ie_;
3877 int next_framed_route();
3878 int next_frmd_ipv6_rte();
3879 pfcp_upd_traffic_endpt_ie_t &data();
3887 pfcp_upd_traffic_endpt_ie_t &ie_;
3892 std::vector<FramedRouteIE> fr_;
3894 std::vector<FramedIpv6RouteIE> fr6_;
3904 pfcp_remove_bar_ie_t &data();
3912 pfcp_remove_bar_ie_t &ie_;
3925 pfcp_upd_bar_sess_mod_req_ie_t &data();
3933 pfcp_upd_bar_sess_mod_req_ie_t &ie_;
3946 pfcp_query_urr_ie_t &data();
3954 pfcp_query_urr_ie_t &ie_;
3965 pfcp_remove_qer_ie_t &data();
3973 pfcp_remove_qer_ie_t &ie_;
3984 pfcp_remove_urr_ie_t &data();
3992 pfcp_remove_urr_ie_t &ie_;
4003 pfcp_remove_far_ie_t &data();
4011 pfcp_remove_far_ie_t &ie_;
4022 pfcp_remove_pdr_ie_t &data();
4030 pfcp_remove_pdr_ie_t &ie_;
4043 MbrIE &maximum_bitrate();
4044 GbrIE &guaranteed_bitrate();
4047 QfiIE &qos_flow_ident();
4048 RqiIE &reflective_qos();
4051 pfcp_update_qer_ie_t &data();
4059 pfcp_update_qer_ie_t &ie_;
4101 FarIdIE &far_id_for_quota_act();
4106 int next_linked_urr_id();
4107 int next_aggregated_urrs();
4108 pfcp_update_urr_ie_t &data();
4116 pfcp_update_urr_ie_t &ie_;
4137 std::vector<LinkedUrrIdIE> lui_;
4140 std::vector<AggregatedUrrsIE> au_;
4156 pfcp_upd_dupng_parms_ie_t &data();
4164 pfcp_upd_dupng_parms_ie_t &ie_;
4187 pfcp_upd_frwdng_parms_ie_t &data();
4195 pfcp_upd_frwdng_parms_ie_t &ie_;
4219 int next_upd_dupng_parms();
4220 pfcp_update_far_ie_t &data();
4228 pfcp_update_far_ie_t &ie_;
4232 std::vector<UpdateDuplicatingParametersIE> udp_;
4251 int next_actvt_predef_rules();
4252 int next_deact_predef_rules();
4253 pfcp_update_pdr_ie_t &data();
4261 pfcp_update_pdr_ie_t &ie_;
4269 std::vector<ActivatePredefinedRulesIE> apr_;
4270 std::vector<DeactivatePredefinedRulesIE> dpr_;
4283 pfcp_eth_traffic_info_ie_t &data();
4291 pfcp_eth_traffic_info_ie_t &ie_;
4314 pfcp_usage_rpt_sess_mod_rsp_ie_t &data();
4322 pfcp_usage_rpt_sess_mod_rsp_ie_t &ie_;
4354 pfcp_usage_rpt_sess_del_rsp_ie_t &data();
4362 pfcp_usage_rpt_sess_del_rsp_ie_t &ie_;
4382 FTeidIE &remote_fteid(uint8_t idx);
4383 int next_remote_fteid();
4384 pfcp_err_indctn_rpt_ie_t &data();
4392 pfcp_err_indctn_rpt_ie_t &ie_;
4393 std::vector<FTeidIE> rft_;
4405 pfcp_app_det_info_ie_t &data();
4413 pfcp_app_det_info_ie_t &ie_;
4441 int next_evnt_time_stmp();
4442 pfcp_usage_rpt_sess_rpt_req_ie_t &data();
4450 pfcp_usage_rpt_sess_rpt_req_ie_t &ie_;
4465 std::vector<EventTimeStampIE> ets_;
4478 int next_dnlnk_data_svc_info();
4479 pfcp_dnlnk_data_rpt_ie_t &data();
4487 pfcp_dnlnk_data_rpt_ie_t &ie_;
4488 std::vector<PdrIdIE> pi_;
4489 std::vector<DownlinkDataServiceInformationIE> ddsi_;
4503 pfcp_upd_bar_sess_rpt_rsp_ie_t &data();
4511 pfcp_upd_bar_sess_rpt_rsp_ie_t &ie_;
4587 HeartbeatReq(PFCP::LocalNodeSPtr &ln, PFCP::RemoteNodeSPtr &rn, Bool allocSeqNbr =
True);
4591 pfcp_hrtbeat_req_t &data();
4597 pfcp_hrtbeat_req_t data_;
4598 Char iebuffer_[
sizeof(_HeartbeatReq)];
4615 pfcp_hrtbeat_rsp_t &data();
4621 pfcp_hrtbeat_rsp_t data_;
4622 UChar iebuffer_[
sizeof(_HeartbeatRsp)];
4630 PfdMgmtReq(PFCP::LocalNodeSPtr &ln, PFCP::RemoteNodeSPtr &rn, Bool allocSeqNbr =
True);
4633 int next_app_ids_pfds();
4635 pfcp_pfd_mgmt_req_t &data();
4641 pfcp_pfd_mgmt_req_t data_;
4642 std::vector<ApplicationIdsPfdsIE> appids_;
4661 pfcp_pfd_mgmt_rsp_t &data();
4667 pfcp_pfd_mgmt_rsp_t data_;
4668 UChar iebuffer_[
sizeof(_PfdMgmtRsp)];
4684 AssnSetupReq(PFCP::LocalNodeSPtr &ln, PFCP::RemoteNodeSPtr &rn, Bool allocSeqNbr =
True);
4691 int next_user_plane_ip_rsrc_info();
4693 pfcp_assn_setup_req_t &data();
4699 pfcp_assn_setup_req_t data_;
4700 UChar iebuffer_[
sizeof(_AssnSetupReq)];
4701 std::vector<UserPlaneIpResourceInformationIE> upiri_;
4726 int next_user_plane_ip_rsrc_info();
4728 pfcp_assn_setup_rsp_t &data();
4734 pfcp_assn_setup_rsp_t data_;
4735 UChar iebuffer_[
sizeof(_AssnSetupRsp)];
4736 std::vector<UserPlaneIpResourceInformationIE> upiri_;
4741 struct __attribute((__may_alias__)) _AssnUpdateReq
4753 AssnUpdateReq(PFCP::LocalNodeSPtr &ln, PFCP::RemoteNodeSPtr &rn, Bool allocSeqNbr =
True);
4761 int next_user_plane_ip_rsrc_info();
4763 pfcp_assn_upd_req_t &data();
4769 pfcp_assn_upd_req_t data_;
4770 UChar iebuffer_[
sizeof(_AssnUpdateReq)];
4771 std::vector<UserPlaneIpResourceInformationIE> upiri_;
4776 struct __attribute((__may_alias__)) _AssnUpdateRsp
4794 pfcp_assn_upd_rsp_t &data();
4800 pfcp_assn_upd_rsp_t data_;
4801 UChar iebuffer_[
sizeof(_AssnUpdateRsp)];
4806 struct __attribute((__may_alias__)) _AssnReleaseReq
4814 AssnReleaseReq(PFCP::LocalNodeSPtr &ln, PFCP::RemoteNodeSPtr &rn, Bool allocSeqNbr =
True);
4818 pfcp_assn_rel_req_t &data();
4824 pfcp_assn_rel_req_t data_;
4825 UChar iebuffer_[
sizeof(_AssnReleaseReq)];
4830 struct __attribute((__may_alias__)) _AssnReleaseRsp
4844 pfcp_assn_rel_rsp_t &data();
4850 pfcp_assn_rel_rsp_t data_;
4851 UChar iebuffer_[
sizeof(_AssnReleaseRsp)];
4856 #define PFCP_VERSION_NOT_SUPPORTED (11) 4863 pfcp_header_t &data();
4867 pfcp_header_t data_;
4872 struct __attribute((__may_alias__)) _NodeReportReq
4882 NodeReportReq(PFCP::LocalNodeSPtr &ln, PFCP::RemoteNodeSPtr &rn, Bool allocSeqNbr =
True);
4888 pfcp_node_rpt_req_t &data();
4894 pfcp_node_rpt_req_t data_;
4895 UChar iebuffer_[
sizeof(_NodeReportReq)];
4900 struct __attribute((__may_alias__)) _NodeReportRsp
4916 pfcp_node_rpt_rsp_t &data();
4922 pfcp_node_rpt_rsp_t data_;
4923 UChar iebuffer_[
sizeof(_NodeReportRsp)];
4928 struct __attribute((__may_alias__)) _SessionSetDeletionReq
4953 pfcp_sess_set_del_req_t &data();
4959 pfcp_sess_set_del_req_t data_;
4960 UChar iebuffer_[
sizeof(_SessionSetDeletionReq)];
4965 struct __attribute((__may_alias__)) _SessionSetDeletionRsp
4982 pfcp_sess_set_del_rsp_t &data();
4988 pfcp_sess_set_del_rsp_t data_;
4989 UChar iebuffer_[
sizeof(_SessionSetDeletionRsp)];
4994 struct __attribute((__may_alias__)) _SessionEstablishmentReq
5034 int next_create_pdr();
5035 int next_create_far();
5036 int next_create_urr();
5037 int next_create_qer();
5038 int next_create_traffic_endpt();
5040 pfcp_sess_estab_req_t &data();
5046 pfcp_sess_estab_req_t data_;
5047 UChar iebuffer_[
sizeof(_SessionEstablishmentReq)];
5048 std::vector<CreatePdrIE> cp_;
5049 std::vector<CreateFarIE> cf_;
5050 std::vector<CreateUrrIE> cu_;
5051 std::vector<CreateQerIE> cq_;
5052 std::vector<CreateTrafficEndpointIE> cte_;
5057 struct __attribute((__may_alias__)) _SessionEstablishmentRsp
5084 int next_created_pdr();
5085 int next_created_traffic_endpt();
5087 pfcp_sess_estab_rsp_t &data();
5093 pfcp_sess_estab_rsp_t data_;
5094 UChar iebuffer_[
sizeof(_SessionEstablishmentRsp)];
5095 std::vector<CreatedPdrIE> cp_;
5096 std::vector<CreatedTrafficEndpointIE> cte_;
5101 struct __attribute((__may_alias__)) _SessionModificationReq
5155 int next_remove_pdr();
5156 int next_remove_far();
5157 int next_remove_urr();
5158 int next_remove_qer();
5159 int next_create_pdr();
5160 int next_create_far();
5161 int next_create_urr();
5162 int next_create_qer();
5163 int next_update_pdr();
5164 int next_update_far();
5165 int next_update_urr();
5166 int next_update_qer();
5167 int next_query_urr();
5169 pfcp_sess_mod_req_t &data();
5175 pfcp_sess_mod_req_t data_;
5176 UChar iebuffer_[
sizeof(_SessionModificationReq)];
5177 std::vector<RemovePdrIE> rp_;
5178 std::vector<RemoveFarIE> rf_;
5179 std::vector<RemoveUrrIE> ru_;
5180 std::vector<RemoveQerIE> rq_;
5181 std::vector<CreatePdrIE> cp_;
5182 std::vector<CreateFarIE> cf_;
5183 std::vector<CreateUrrIE> cu_;
5184 std::vector<CreateQerIE> cq_;
5185 std::vector<UpdatePdrIE> up_;
5186 std::vector<UpdateFarIE> uf_;
5187 std::vector<UpdateUrrIE> uu_;
5188 std::vector<UpdateQerIE> uq_;
5189 std::vector<QueryUrrIE> qu_;
5194 struct __attribute((__may_alias__)) _SessionModificationRsp
5220 int next_usage_report();
5222 pfcp_sess_mod_rsp_t &data();
5228 pfcp_sess_mod_rsp_t data_;
5229 UChar iebuffer_[
sizeof(_SessionModificationRsp)];
5230 std::vector<UsageReportSessionModificationRspIE> ur_;
5241 pfcp_sess_del_req_t &data();
5245 pfcp_sess_del_req_t data_;
5250 struct __attribute((__may_alias__)) _SessionDeletionRsp
5268 int next_usage_report();
5270 pfcp_sess_del_rsp_t &data();
5276 pfcp_sess_del_rsp_t data_;
5277 UChar iebuffer_[
sizeof(_SessionDeletionRsp)];
5278 std::vector<UsageReportSessionDeletionRspIE> ur_;
5283 struct __attribute((__may_alias__)) _SessionReportReq
5305 int next_usage_report();
5307 pfcp_sess_rpt_req_t &data();
5313 pfcp_sess_rpt_req_t data_;
5314 UChar iebuffer_[
sizeof(_SessionReportReq)];
5315 std::vector<UsageReportSessionReportReqIE> ur_;
5320 struct __attribute((__may_alias__)) _SessionReportRsp
5338 pfcp_sess_rpt_rsp_t &data();
5344 pfcp_sess_rpt_rsp_t data_;
5345 UChar iebuffer_[
sizeof(_SessionReportRsp)];
5357 PFCP::ReqOutPtr encodeHeartbeatReq(PFCP::SndHeartbeatReqData &hb);
5358 PFCP::RspOutPtr encodeHeartbeatRsp(PFCP::SndHeartbeatRspData &hb);
5359 PFCP::RspOutPtr encodeVersionNotSupportedRsp(PFCP::ReqInPtr msg);
5365 PFCP::RcvdHeartbeatReqDataPtr decodeHeartbeatReq(PFCP::ReqInPtr msg);
5366 PFCP::RcvdHeartbeatRspDataPtr decodeHeartbeatRsp(PFCP::RspInPtr msg);
5368 Void getMsgInfo(PFCP::TranslatorMsgInfo &info, cpUChar msg, Int len);
5369 Bool isVersionSupported(UChar ver);
5370 PFCP::MsgClass messageClass(PFCP::MsgType mt);
5372 PFCP::MsgType pfcpHeartbeatReq();
5373 PFCP::MsgType pfcpHeartbeatRsp();
5374 PFCP::MsgType pfcpSessionEstablishmentReq();
5375 PFCP::MsgType pfcpSessionEstablishmentRsp();
5376 PFCP::MsgType pfcpAssociationSetupReq();
5377 PFCP::MsgType pfcpAssociationSetupRsp();
Definition: pfcpr15.h:689
Definition: pfcpr15.h:2904
Definition: pfcpr15.h:1457
Definition: pfcpr15.h:951
Definition: pfcpr15.h:3040
Definition: pfcpr15.h:4298
Definition: pfcpr15.h:1013
Definition: pfcpr15.h:4494
Definition: pfcpr15.h:180
Definition: pfcpr15.h:3847
Definition: pfcpr15.h:446
NodeIdTypeEnum
Definition: pfcpr15.h:1143
#define True
True.
Definition: ebase.h:25
LengthCalculator(LengthCalculator *parent)
Definition: pfcpr15.h:68
SourceInterfaceEnum
Definition: pfcpr15.h:172
Definition: pfcpr15.h:1385
FramedRoutingEnum
Definition: pfcpr15.h:3011
DownlinkGateEnum
Definition: pfcpr15.h:324
Definition: pfcpr15.h:2512
Definition: pfcpr15.h:4421
Definition: pfcpr15.h:2844
Definition: pfcpr15.h:2925
Definition: pfcpr15.h:3545
Definition: pfcpr15.h:2386
Definition: pfcpr15.h:1499
InternetProtocolEnum
Definition: pfcpr15.h:1656
Definition: pfcpr15.h:2492
Represents an OctetString as defined in RFC 6733.
Definition: eostring.h:33
Definition: pfcpr15.h:4653
Definition: pfcpr15.h:1324
The PFCP Translator is used to encode and decode PFCP messages. This is a pure virtual base class tha...
Definition: epfcp.h:1800
Definition: pfcpr15.h:2601
Definition: pfcpr15.h:384
Definition: pfcpr15.h:5258
Definition: pfcpr15.h:1269
HeaderTypeEnum
Definition: pfcpr15.h:1977
Definition: pfcpr15.h:4715
Definition: pfcpr15.h:2196
Definition: pfcpr15.h:1243
Definition: pfcpr15.h:4627
virtual uint16_t length() const =0
Definition: pfcpr15.h:3082
struct __attribute((__may_alias__)) _HeartbeatReq
Definition: pfcpr15.h:4579
Definition: pfcpr15.h:1150
Definition: pfcpr15.h:3960
Definition: pfcpr15.h:3693
DECLARE_ERROR(RequestedSizeTooLarge)
Definition: pfcpr15.h:3827
Definition: pfcpr15.h:5293
Definition: pfcpr15.h:3918
virtual uint16_t calculateLength()=0
Definition: pfcpr15.h:3250
Definition: pfcpr15.h:4836
Definition: pfcpr15.h:2989
Definition: pfcpr15.h:4238
Definition: pfcpr15.h:3423
Definition: pfcpr15.h:5235
Definition: pfcpr15.h:2173
Definition: pfcpr15.h:3998
Definition: pfcpr15.h:1188
Definition: pfcpr15.h:4939
Definition: pfcpr15.h:1545
Definition: pfcpr15.h:4857
Definition: pfcpr15.h:1587
Definition: pfcpr15.h:5328
Definition: pfcpr15.h:3582
virtual Void setLength()
Definition: pfcpr15.h:73
Definition: pfcpr15.h:2770
Definition: pfcpr15.h:199
Definition: pfcpr15.h:4075
#define CLASS_NAME
Definition: pfcpr15.h:49
Definition: pfcpr15.h:4584
Definition: pfcpr15.h:537
Definition: pfcpr15.h:2692
Definition: pfcpr15.h:714
Definition: pfcpr15.h:4339
Definition: pfcpr15.h:3643
Definition: pfcpr15.h:1083
Definition: pfcpr15.h:2630
Definition: pfcpr15.h:1062
Contains the class definitions for the PFCP release 15 messages and information elements.
Definition: pfcpr15.h:59
Definition: pfcpr15.h:237
Definition: pfcpr15.h:3805
Definition: pfcpr15.h:5011
Definition: pfcpr15.h:3102
Definition: pfcpr15.h:4879
Definition: pfcpr15.h:1435
Definition: pfcpr15.h:898
Definition: pfcpr15.h:2791
Definition: pfcpr15.h:1871
Definition: pfcpr15.h:4972
Definition: pfcpr15.h:606
Represents a request application message.
Definition: epfcp.h:954
Definition: pfcpr15.h:2034
Definition: pfcpr15.h:4378
Represents a response application message.
Definition: epfcp.h:1154
Definition: pfcpr15.h:362
#define False
False.
Definition: ebase.h:27
Definition: pfcpr15.h:468
Definition: pfcpr15.h:5121
FlowDirectionEnum
Definition: pfcpr15.h:1801
Definition: pfcpr15.h:2215
Definition: pfcpr15.h:1414
Class for manipulating date and time of day values.
Definition: etime.h:199
Definition: pfcpr15.h:2406
Definition: pfcpr15.h:302
Definition: pfcpr15.h:2864
Definition: pfcpr15.h:144
Definition: pfcpr15.h:1033
Definition: pfcpr15.h:2533
Definition: pfcpr15.h:3291
Definition: pfcpr15.h:1479
Definition: pfcpr15.h:426
BaseTimeIntervalTypeEnum
Definition: pfcpr15.h:2322
FqCsidNodeIdTypeEnum
Definition: pfcpr15.h:1344
Definition: pfcpr15.h:930
Definition: pfcpr15.h:2053
Definition: pfcpr15.h:406
Definition: pfcpr15.h:1609
Definition: pfcpr15.h:586
Definition: pfcpr15.h:1953
std::shared_ptr< SessionBase > SessionBaseSPtr
Definition: epfcp.h:401
Definition: pfcpr15.h:2471
Definition: pfcpr15.h:3269
RuleIdTypeEnum
Definition: pfcpr15.h:2292
Definition: pfcpr15.h:970
Definition: pfcpr15.h:265
#define OVERLOADED_NEW_DELETE
Definition: pfcpr15.h:30
Definition: pfcpr15.h:139
Definition: pfcpr15.h:515
Represents an IP address with mask.
Definition: eip.h:40
Definition: pfcpr15.h:4784
Definition: pfcpr15.h:3611
Defines the EOctetString and ETbcdString classes.
Definition: pfcpr15.h:5069
Represents a response application message.
Definition: epfcp.h:1115
Definition: pfcpr15.h:2148
Definition: pfcpr15.h:2446
Definition: pfcpr15.h:3899
Definition: pfcpr15.h:2086
Definition: pfcpr15.h:565
DestinationInterfaceEnum
Definition: pfcpr15.h:762
Definition: pfcpr15.h:3327
Definition: pfcpr15.h:1730
UplinkGateEnum
Definition: pfcpr15.h:332
Definition: pfcpr15.h:1636
Definition: pfcpr15.h:2244
Definition: pfcpr15.h:2884
Definition: pfcpr15.h:4907
Definition: pfcpr15.h:2661
Definition: pfcpr15.h:3062
CauseEnum
Definition: pfcpr15.h:119
Definition: pfcpr15.h:4017
Definition: pfcpr15.h:4681
Definition: pfcpr15.h:4036
Definition: pfcpr15.h:3161
Definition: pfcpr15.h:3445
Definition: pfcpr15.h:1781
Represents a request application node message (not associated with a session).
Definition: epfcp.h:998
Definition: pfcpr15.h:1521
TimerTimerUnitEnum
Definition: pfcpr15.h:1052
Definition: pfcpr15.h:4148
Definition: pfcpr15.h:1931
Definition: pfcpr15.h:771
Definition: pfcpr15.h:1106
Definition: pfcpr15.h:1565
Definition: pfcpr15.h:1706
Definition: pfcpr15.h:3730
Definition: pfcpr15.h:2107
DECLARE_ERROR(NodeIdException_NodeIdTypeLengthMismatch)
Definition: pfcpr15.h:994
Definition: pfcpr15.h:4210
Definition: pfcpr15.h:739
Definition: pfcpr15.h:1829
pfcp_cause_ie_t & ie_
Definition: pfcpr15.h:141
Definition: pfcpr15.h:3391
Definition: pfcpr15.h:4471
Definition: pfcpr15.h:2576
Definition: pfcpr15.h:3866
Definition: pfcpr15.h:844
Definition: pfcpr15.h:3019
TgppInterfaceTypeEnum
Definition: pfcpr15.h:3181
Definition: pfcpr15.h:3201
Definition: pfcpr15.h:340
Definition: pfcpr15.h:1351
Contains the class definitions to support the PFCP protocol stack.
Definition: pfcpr15.h:4173
Contains the class definitions to support the pool based memory allocation.
Definition: pfcpr15.h:3979
virtual uint16_t packedLength() const =0
Definition: pfcpr15.h:2328
Definition: pfcpr15.h:3520
OuterHeaderRemovalEnum
Definition: pfcpr15.h:1897
Definition: pfcpr15.h:2273
Definition: pfcpr15.h:2751
Definition: pfcpr15.h:495
PdnTypeEnum
Definition: pfcpr15.h:2264
RedirectAddressTypeEnum
Definition: pfcpr15.h:654
UplinkDownlinkTimeUnitEnum
Definition: pfcpr15.h:1862
GracefulReleasePeriodTimerUnitEnum
Definition: pfcpr15.h:2234
Definition: pfcpr15.h:2301
Definition: pfcpr15.h:3121
Encapsulates a sockaddr_storage structure that represents a socket address.
Definition: esocket.h:148
Definition: pfcpr15.h:5206
Definition: pfcpr15.h:2128
Definition: pfcpr15.h:2711
Definition: pfcpr15.h:4811
Definition: pfcpr15.h:793
Definition: pfcpr15.h:4608
Definition: pfcpr15.h:5351
Represents a response application message.
Definition: epfcp.h:1062
Definition: pfcpr15.h:4750
Definition: pfcpr15.h:2732
Definition: pfcpr15.h:3941
Represents a request application session message.
Definition: epfcp.h:1026
Definition: pfcpr15.h:3141
DlBufferingDurationTimerUnitEnum
Definition: pfcpr15.h:920
Definition: pfcpr15.h:3351
DECLARE_ERROR_ADVANCED2(NodeIdException_UnrecognizedNodeIdType)
Definition: pfcpr15.h:2427