[PCF] fix the 'NULL' AfEvent in VoNR (#1120)
This commit is contained in:
parent
68edcd6438
commit
831b29973f
|
@ -1,596 +0,0 @@
|
|||
CMakeLists.txt
|
||||
README.md
|
||||
api/IndividualSubscriptionDocumentAPI.c
|
||||
api/IndividualSubscriptionDocumentAPI.h
|
||||
api/IndividualUeContextDocumentAPI.c
|
||||
api/IndividualUeContextDocumentAPI.h
|
||||
api/N1N2IndividualSubscriptionDocumentAPI.c
|
||||
api/N1N2IndividualSubscriptionDocumentAPI.h
|
||||
api/N1N2MessageCollectionDocumentAPI.c
|
||||
api/N1N2MessageCollectionDocumentAPI.h
|
||||
api/N1N2SubscriptionsCollectionForIndividualUEContextsDocumentAPI.c
|
||||
api/N1N2SubscriptionsCollectionForIndividualUEContextsDocumentAPI.h
|
||||
api/NonUEN2MessageNotificationIndividualSubscriptionDocumentAPI.c
|
||||
api/NonUEN2MessageNotificationIndividualSubscriptionDocumentAPI.h
|
||||
api/NonUEN2MessagesCollectionDocumentAPI.c
|
||||
api/NonUEN2MessagesCollectionDocumentAPI.h
|
||||
api/NonUEN2MessagesSubscriptionsCollectionDocumentAPI.c
|
||||
api/NonUEN2MessagesSubscriptionsCollectionDocumentAPI.h
|
||||
api/SubscriptionsCollectionDocumentAPI.c
|
||||
api/SubscriptionsCollectionDocumentAPI.h
|
||||
docs/IndividualSubscriptionDocumentAPI.md
|
||||
docs/IndividualUeContextDocumentAPI.md
|
||||
docs/N1N2IndividualSubscriptionDocumentAPI.md
|
||||
docs/N1N2MessageCollectionDocumentAPI.md
|
||||
docs/N1N2SubscriptionsCollectionForIndividualUEContextsDocumentAPI.md
|
||||
docs/NonUEN2MessageNotificationIndividualSubscriptionDocumentAPI.md
|
||||
docs/NonUEN2MessagesCollectionDocumentAPI.md
|
||||
docs/NonUEN2MessagesSubscriptionsCollectionDocumentAPI.md
|
||||
docs/SubscriptionsCollectionDocumentAPI.md
|
||||
docs/access_token_err.md
|
||||
docs/access_token_req.md
|
||||
docs/access_type.md
|
||||
docs/allowed_nssai.md
|
||||
docs/allowed_snssai.md
|
||||
docs/ambr.md
|
||||
docs/amf_event.md
|
||||
docs/amf_event_area.md
|
||||
docs/amf_event_mode.md
|
||||
docs/amf_event_subscription.md
|
||||
docs/amf_event_subscription_add_info.md
|
||||
docs/amf_event_trigger.md
|
||||
docs/amf_event_trigger_any_of.md
|
||||
docs/amf_event_type.md
|
||||
docs/amf_event_type_any_of.md
|
||||
docs/amf_status_change_notification.md
|
||||
docs/amf_status_change_subscription_data.md
|
||||
docs/amf_status_info.md
|
||||
docs/area.md
|
||||
docs/area_of_validity.md
|
||||
docs/area_scope.md
|
||||
docs/arp.md
|
||||
docs/assign_ebi_data.md
|
||||
docs/assign_ebi_error.md
|
||||
docs/assign_ebi_failed.md
|
||||
docs/assigned_ebi_data.md
|
||||
docs/auth_status.md
|
||||
docs/battery_indication.md
|
||||
docs/cag_data.md
|
||||
docs/cag_info.md
|
||||
docs/ce_mode_b_ind.md
|
||||
docs/ciphering_algorithm.md
|
||||
docs/cn_assisted_ran_para.md
|
||||
docs/collection_period_rmm_lte_mdt.md
|
||||
docs/collection_period_rmm_nr_mdt.md
|
||||
docs/configured_snssai.md
|
||||
docs/core_network_type.md
|
||||
docs/ddd_traffic_descriptor.md
|
||||
docs/ebi_arp_mapping.md
|
||||
docs/ec_restriction_data_wb.md
|
||||
docs/ecgi.md
|
||||
docs/eps_nas_ciphering_algorithm.md
|
||||
docs/eps_nas_integrity_algorithm.md
|
||||
docs/eps_nas_security_mode.md
|
||||
docs/eutra_location.md
|
||||
docs/expected_ue_behavior.md
|
||||
docs/ext_amf_event_subscription.md
|
||||
docs/global_ran_node_id.md
|
||||
docs/gnb_id.md
|
||||
docs/guami.md
|
||||
docs/hfc_node_id.md
|
||||
docs/immediate_mdt_conf.md
|
||||
docs/inline_object.md
|
||||
docs/inline_object_1.md
|
||||
docs/inline_object_2.md
|
||||
docs/inline_object_3.md
|
||||
docs/inline_object_4.md
|
||||
docs/integrity_algorithm.md
|
||||
docs/invalid_param.md
|
||||
docs/job_type.md
|
||||
docs/key_amf.md
|
||||
docs/key_amf_type.md
|
||||
docs/ladn_info.md
|
||||
docs/line_type.md
|
||||
docs/location_filter.md
|
||||
docs/location_filter_any_of.md
|
||||
docs/lte_m_ind.md
|
||||
docs/lte_v2x_auth.md
|
||||
docs/measurement_lte_for_mdt.md
|
||||
docs/measurement_nr_for_mdt.md
|
||||
docs/measurement_period_lte_mdt.md
|
||||
docs/mm_context.md
|
||||
docs/mo_exp_data_counter.md
|
||||
docs/n1_message_class.md
|
||||
docs/n1_message_container.md
|
||||
docs/n1_message_notification.md
|
||||
docs/n1_n2_message_transfer_cause.md
|
||||
docs/n1_n2_message_transfer_error.md
|
||||
docs/n1_n2_message_transfer_req_data.md
|
||||
docs/n1_n2_message_transfer_rsp_data.md
|
||||
docs/n1_n2_msg_txfr_err_detail.md
|
||||
docs/n1_n2_msg_txfr_failure_notification.md
|
||||
docs/n2_info_container.md
|
||||
docs/n2_info_content.md
|
||||
docs/n2_info_notification_rsp_data.md
|
||||
docs/n2_info_notify_reason.md
|
||||
docs/n2_information_class.md
|
||||
docs/n2_information_notification.md
|
||||
docs/n2_information_transfer_error.md
|
||||
docs/n2_information_transfer_req_data.md
|
||||
docs/n2_information_transfer_result.md
|
||||
docs/n2_information_transfer_rsp_data.md
|
||||
docs/n2_ran_information.md
|
||||
docs/n2_sm_information.md
|
||||
docs/n3ga_location.md
|
||||
docs/nas_security_mode.md
|
||||
docs/ncgi.md
|
||||
docs/nf_type.md
|
||||
docs/ng_ap_cause.md
|
||||
docs/ng_ksi.md
|
||||
docs/ng_ran_target_id.md
|
||||
docs/ngap_ie_type.md
|
||||
docs/non_ue_n2_info_subscription_create_data.md
|
||||
docs/non_ue_n2_info_subscription_created_data.md
|
||||
docs/npn_access_info.md
|
||||
docs/nr_location.md
|
||||
docs/nr_v2x_auth.md
|
||||
docs/nrppa_information.md
|
||||
docs/nsi_information.md
|
||||
docs/nssaa_status.md
|
||||
docs/nssai_mapping.md
|
||||
docs/pc5_flow_bit_rates.md
|
||||
docs/pc5_qo_s_para.md
|
||||
docs/pc5_qos_flow_item.md
|
||||
docs/pdu_session_context.md
|
||||
docs/periodic_communication_indicator.md
|
||||
docs/plmn_id.md
|
||||
docs/plmn_id_nid.md
|
||||
docs/policy_req_trigger.md
|
||||
docs/positioning_method_mdt.md
|
||||
docs/preemption_capability.md
|
||||
docs/preemption_vulnerability.md
|
||||
docs/presence_info.md
|
||||
docs/presence_state.md
|
||||
docs/problem_details.md
|
||||
docs/pws_error_data.md
|
||||
docs/pws_information.md
|
||||
docs/pws_response_data.md
|
||||
docs/rat_selector.md
|
||||
docs/rat_type.md
|
||||
docs/reachability_filter.md
|
||||
docs/reachability_filter_any_of.md
|
||||
docs/redirect_response.md
|
||||
docs/ref_to_binary_data.md
|
||||
docs/registration_context_container.md
|
||||
docs/report_amount_mdt.md
|
||||
docs/report_interval_mdt.md
|
||||
docs/report_interval_nr_mdt.md
|
||||
docs/reporting_trigger.md
|
||||
docs/restriction_type.md
|
||||
docs/sbi_binding_level.md
|
||||
docs/sc_type.md
|
||||
docs/scheduled_communication_time.md
|
||||
docs/scheduled_communication_type.md
|
||||
docs/seaf_data.md
|
||||
docs/sensor_measurement.md
|
||||
docs/service_area_restriction.md
|
||||
docs/small_data_rate_status.md
|
||||
docs/small_data_rate_status_info.md
|
||||
docs/smf_change_indication.md
|
||||
docs/smf_change_info.md
|
||||
docs/sms_support.md
|
||||
docs/snssai.md
|
||||
docs/stationary_indication.md
|
||||
docs/status_change.md
|
||||
docs/tac_info.md
|
||||
docs/tai.md
|
||||
docs/tnap_id.md
|
||||
docs/trace_data.md
|
||||
docs/trace_depth.md
|
||||
docs/traffic_descriptor.md
|
||||
docs/traffic_profile.md
|
||||
docs/transfer_reason.md
|
||||
docs/twap_id.md
|
||||
docs/ue_auth.md
|
||||
docs/ue_context.md
|
||||
docs/ue_context_cancel_relocate_data.md
|
||||
docs/ue_context_create_data.md
|
||||
docs/ue_context_create_error.md
|
||||
docs/ue_context_created_data.md
|
||||
docs/ue_context_release.md
|
||||
docs/ue_context_relocate_data.md
|
||||
docs/ue_context_relocated_data.md
|
||||
docs/ue_context_transfer_req_data.md
|
||||
docs/ue_context_transfer_rsp_data.md
|
||||
docs/ue_context_transfer_status.md
|
||||
docs/ue_differentiation_info.md
|
||||
docs/ue_n1_n2_info_subscription_create_data.md
|
||||
docs/ue_n1_n2_info_subscription_created_data.md
|
||||
docs/ue_reg_status_update_req_data.md
|
||||
docs/ue_reg_status_update_rsp_data.md
|
||||
docs/user_location.md
|
||||
docs/v2x_context.md
|
||||
docs/v2x_information.md
|
||||
external/cJSON.c
|
||||
external/cJSON.h
|
||||
external/cJSON.licence
|
||||
include/apiClient.h
|
||||
include/binary.h
|
||||
include/keyValuePair.h
|
||||
include/list.h
|
||||
libcurl.licence
|
||||
model/access_token_err.c
|
||||
model/access_token_err.h
|
||||
model/access_token_req.c
|
||||
model/access_token_req.h
|
||||
model/access_type.c
|
||||
model/access_type.h
|
||||
model/allowed_nssai.c
|
||||
model/allowed_nssai.h
|
||||
model/allowed_snssai.c
|
||||
model/allowed_snssai.h
|
||||
model/ambr.c
|
||||
model/ambr.h
|
||||
model/amf_event.c
|
||||
model/amf_event.h
|
||||
model/amf_event_area.c
|
||||
model/amf_event_area.h
|
||||
model/amf_event_mode.c
|
||||
model/amf_event_mode.h
|
||||
model/amf_event_subscription.c
|
||||
model/amf_event_subscription.h
|
||||
model/amf_event_subscription_add_info.c
|
||||
model/amf_event_subscription_add_info.h
|
||||
model/amf_event_trigger.c
|
||||
model/amf_event_trigger.h
|
||||
model/amf_event_trigger_any_of.c
|
||||
model/amf_event_trigger_any_of.h
|
||||
model/amf_event_type.c
|
||||
model/amf_event_type.h
|
||||
model/amf_event_type_any_of.c
|
||||
model/amf_event_type_any_of.h
|
||||
model/amf_status_change_notification.c
|
||||
model/amf_status_change_notification.h
|
||||
model/amf_status_change_subscription_data.c
|
||||
model/amf_status_change_subscription_data.h
|
||||
model/amf_status_info.c
|
||||
model/amf_status_info.h
|
||||
model/area.c
|
||||
model/area.h
|
||||
model/area_of_validity.c
|
||||
model/area_of_validity.h
|
||||
model/area_scope.c
|
||||
model/area_scope.h
|
||||
model/arp.c
|
||||
model/arp.h
|
||||
model/assign_ebi_data.c
|
||||
model/assign_ebi_data.h
|
||||
model/assign_ebi_error.c
|
||||
model/assign_ebi_error.h
|
||||
model/assign_ebi_failed.c
|
||||
model/assign_ebi_failed.h
|
||||
model/assigned_ebi_data.c
|
||||
model/assigned_ebi_data.h
|
||||
model/auth_status.c
|
||||
model/auth_status.h
|
||||
model/battery_indication.c
|
||||
model/battery_indication.h
|
||||
model/cag_data.c
|
||||
model/cag_data.h
|
||||
model/cag_info.c
|
||||
model/cag_info.h
|
||||
model/ce_mode_b_ind.c
|
||||
model/ce_mode_b_ind.h
|
||||
model/ciphering_algorithm.c
|
||||
model/ciphering_algorithm.h
|
||||
model/cn_assisted_ran_para.c
|
||||
model/cn_assisted_ran_para.h
|
||||
model/collection_period_rmm_lte_mdt.c
|
||||
model/collection_period_rmm_lte_mdt.h
|
||||
model/collection_period_rmm_nr_mdt.c
|
||||
model/collection_period_rmm_nr_mdt.h
|
||||
model/configured_snssai.c
|
||||
model/configured_snssai.h
|
||||
model/core_network_type.c
|
||||
model/core_network_type.h
|
||||
model/ddd_traffic_descriptor.c
|
||||
model/ddd_traffic_descriptor.h
|
||||
model/ebi_arp_mapping.c
|
||||
model/ebi_arp_mapping.h
|
||||
model/ec_restriction_data_wb.c
|
||||
model/ec_restriction_data_wb.h
|
||||
model/ecgi.c
|
||||
model/ecgi.h
|
||||
model/eps_nas_ciphering_algorithm.c
|
||||
model/eps_nas_ciphering_algorithm.h
|
||||
model/eps_nas_integrity_algorithm.c
|
||||
model/eps_nas_integrity_algorithm.h
|
||||
model/eps_nas_security_mode.c
|
||||
model/eps_nas_security_mode.h
|
||||
model/eutra_location.c
|
||||
model/eutra_location.h
|
||||
model/expected_ue_behavior.c
|
||||
model/expected_ue_behavior.h
|
||||
model/ext_amf_event_subscription.c
|
||||
model/ext_amf_event_subscription.h
|
||||
model/global_ran_node_id.c
|
||||
model/global_ran_node_id.h
|
||||
model/gnb_id.c
|
||||
model/gnb_id.h
|
||||
model/guami.c
|
||||
model/guami.h
|
||||
model/hfc_node_id.c
|
||||
model/hfc_node_id.h
|
||||
model/immediate_mdt_conf.c
|
||||
model/immediate_mdt_conf.h
|
||||
model/inline_object.c
|
||||
model/inline_object.h
|
||||
model/inline_object_1.c
|
||||
model/inline_object_1.h
|
||||
model/inline_object_2.c
|
||||
model/inline_object_2.h
|
||||
model/inline_object_3.c
|
||||
model/inline_object_3.h
|
||||
model/inline_object_4.c
|
||||
model/inline_object_4.h
|
||||
model/integrity_algorithm.c
|
||||
model/integrity_algorithm.h
|
||||
model/invalid_param.c
|
||||
model/invalid_param.h
|
||||
model/job_type.c
|
||||
model/job_type.h
|
||||
model/key_amf.c
|
||||
model/key_amf.h
|
||||
model/key_amf_type.c
|
||||
model/key_amf_type.h
|
||||
model/ladn_info.c
|
||||
model/ladn_info.h
|
||||
model/line_type.c
|
||||
model/line_type.h
|
||||
model/location_filter.c
|
||||
model/location_filter.h
|
||||
model/location_filter_any_of.c
|
||||
model/location_filter_any_of.h
|
||||
model/lte_m_ind.c
|
||||
model/lte_m_ind.h
|
||||
model/lte_v2x_auth.c
|
||||
model/lte_v2x_auth.h
|
||||
model/measurement_lte_for_mdt.c
|
||||
model/measurement_lte_for_mdt.h
|
||||
model/measurement_nr_for_mdt.c
|
||||
model/measurement_nr_for_mdt.h
|
||||
model/measurement_period_lte_mdt.c
|
||||
model/measurement_period_lte_mdt.h
|
||||
model/mm_context.c
|
||||
model/mm_context.h
|
||||
model/mo_exp_data_counter.c
|
||||
model/mo_exp_data_counter.h
|
||||
model/n1_message_class.c
|
||||
model/n1_message_class.h
|
||||
model/n1_message_container.c
|
||||
model/n1_message_container.h
|
||||
model/n1_message_notification.c
|
||||
model/n1_message_notification.h
|
||||
model/n1_n2_message_transfer_cause.c
|
||||
model/n1_n2_message_transfer_cause.h
|
||||
model/n1_n2_message_transfer_error.c
|
||||
model/n1_n2_message_transfer_error.h
|
||||
model/n1_n2_message_transfer_req_data.c
|
||||
model/n1_n2_message_transfer_req_data.h
|
||||
model/n1_n2_message_transfer_rsp_data.c
|
||||
model/n1_n2_message_transfer_rsp_data.h
|
||||
model/n1_n2_msg_txfr_err_detail.c
|
||||
model/n1_n2_msg_txfr_err_detail.h
|
||||
model/n1_n2_msg_txfr_failure_notification.c
|
||||
model/n1_n2_msg_txfr_failure_notification.h
|
||||
model/n2_info_container.c
|
||||
model/n2_info_container.h
|
||||
model/n2_info_content.c
|
||||
model/n2_info_content.h
|
||||
model/n2_info_notification_rsp_data.c
|
||||
model/n2_info_notification_rsp_data.h
|
||||
model/n2_info_notify_reason.c
|
||||
model/n2_info_notify_reason.h
|
||||
model/n2_information_class.c
|
||||
model/n2_information_class.h
|
||||
model/n2_information_notification.c
|
||||
model/n2_information_notification.h
|
||||
model/n2_information_transfer_error.c
|
||||
model/n2_information_transfer_error.h
|
||||
model/n2_information_transfer_req_data.c
|
||||
model/n2_information_transfer_req_data.h
|
||||
model/n2_information_transfer_result.c
|
||||
model/n2_information_transfer_result.h
|
||||
model/n2_information_transfer_rsp_data.c
|
||||
model/n2_information_transfer_rsp_data.h
|
||||
model/n2_ran_information.c
|
||||
model/n2_ran_information.h
|
||||
model/n2_sm_information.c
|
||||
model/n2_sm_information.h
|
||||
model/n3ga_location.c
|
||||
model/n3ga_location.h
|
||||
model/nas_security_mode.c
|
||||
model/nas_security_mode.h
|
||||
model/ncgi.c
|
||||
model/ncgi.h
|
||||
model/nf_type.c
|
||||
model/nf_type.h
|
||||
model/ng_ap_cause.c
|
||||
model/ng_ap_cause.h
|
||||
model/ng_ksi.c
|
||||
model/ng_ksi.h
|
||||
model/ng_ran_target_id.c
|
||||
model/ng_ran_target_id.h
|
||||
model/ngap_ie_type.c
|
||||
model/ngap_ie_type.h
|
||||
model/non_ue_n2_info_subscription_create_data.c
|
||||
model/non_ue_n2_info_subscription_create_data.h
|
||||
model/non_ue_n2_info_subscription_created_data.c
|
||||
model/non_ue_n2_info_subscription_created_data.h
|
||||
model/npn_access_info.c
|
||||
model/npn_access_info.h
|
||||
model/nr_location.c
|
||||
model/nr_location.h
|
||||
model/nr_v2x_auth.c
|
||||
model/nr_v2x_auth.h
|
||||
model/nrppa_information.c
|
||||
model/nrppa_information.h
|
||||
model/nsi_information.c
|
||||
model/nsi_information.h
|
||||
model/nssaa_status.c
|
||||
model/nssaa_status.h
|
||||
model/nssai_mapping.c
|
||||
model/nssai_mapping.h
|
||||
model/object.c
|
||||
model/object.h
|
||||
model/pc5_flow_bit_rates.c
|
||||
model/pc5_flow_bit_rates.h
|
||||
model/pc5_qo_s_para.c
|
||||
model/pc5_qo_s_para.h
|
||||
model/pc5_qos_flow_item.c
|
||||
model/pc5_qos_flow_item.h
|
||||
model/pdu_session_context.c
|
||||
model/pdu_session_context.h
|
||||
model/periodic_communication_indicator.c
|
||||
model/periodic_communication_indicator.h
|
||||
model/plmn_id.c
|
||||
model/plmn_id.h
|
||||
model/plmn_id_nid.c
|
||||
model/plmn_id_nid.h
|
||||
model/policy_req_trigger.c
|
||||
model/policy_req_trigger.h
|
||||
model/positioning_method_mdt.c
|
||||
model/positioning_method_mdt.h
|
||||
model/preemption_capability.c
|
||||
model/preemption_capability.h
|
||||
model/preemption_vulnerability.c
|
||||
model/preemption_vulnerability.h
|
||||
model/presence_info.c
|
||||
model/presence_info.h
|
||||
model/presence_state.c
|
||||
model/presence_state.h
|
||||
model/problem_details.c
|
||||
model/problem_details.h
|
||||
model/pws_error_data.c
|
||||
model/pws_error_data.h
|
||||
model/pws_information.c
|
||||
model/pws_information.h
|
||||
model/pws_response_data.c
|
||||
model/pws_response_data.h
|
||||
model/rat_selector.c
|
||||
model/rat_selector.h
|
||||
model/rat_type.c
|
||||
model/rat_type.h
|
||||
model/reachability_filter.c
|
||||
model/reachability_filter.h
|
||||
model/reachability_filter_any_of.c
|
||||
model/reachability_filter_any_of.h
|
||||
model/redirect_response.c
|
||||
model/redirect_response.h
|
||||
model/ref_to_binary_data.c
|
||||
model/ref_to_binary_data.h
|
||||
model/registration_context_container.c
|
||||
model/registration_context_container.h
|
||||
model/report_amount_mdt.c
|
||||
model/report_amount_mdt.h
|
||||
model/report_interval_mdt.c
|
||||
model/report_interval_mdt.h
|
||||
model/report_interval_nr_mdt.c
|
||||
model/report_interval_nr_mdt.h
|
||||
model/reporting_trigger.c
|
||||
model/reporting_trigger.h
|
||||
model/restriction_type.c
|
||||
model/restriction_type.h
|
||||
model/sbi_binding_level.c
|
||||
model/sbi_binding_level.h
|
||||
model/sc_type.c
|
||||
model/sc_type.h
|
||||
model/scheduled_communication_time.c
|
||||
model/scheduled_communication_time.h
|
||||
model/scheduled_communication_type.c
|
||||
model/scheduled_communication_type.h
|
||||
model/seaf_data.c
|
||||
model/seaf_data.h
|
||||
model/sensor_measurement.c
|
||||
model/sensor_measurement.h
|
||||
model/service_area_restriction.c
|
||||
model/service_area_restriction.h
|
||||
model/small_data_rate_status.c
|
||||
model/small_data_rate_status.h
|
||||
model/small_data_rate_status_info.c
|
||||
model/small_data_rate_status_info.h
|
||||
model/smf_change_indication.c
|
||||
model/smf_change_indication.h
|
||||
model/smf_change_info.c
|
||||
model/smf_change_info.h
|
||||
model/sms_support.c
|
||||
model/sms_support.h
|
||||
model/snssai.c
|
||||
model/snssai.h
|
||||
model/stationary_indication.c
|
||||
model/stationary_indication.h
|
||||
model/status_change.c
|
||||
model/status_change.h
|
||||
model/tac_info.c
|
||||
model/tac_info.h
|
||||
model/tai.c
|
||||
model/tai.h
|
||||
model/tnap_id.c
|
||||
model/tnap_id.h
|
||||
model/trace_data.c
|
||||
model/trace_data.h
|
||||
model/trace_depth.c
|
||||
model/trace_depth.h
|
||||
model/traffic_descriptor.c
|
||||
model/traffic_descriptor.h
|
||||
model/traffic_profile.c
|
||||
model/traffic_profile.h
|
||||
model/transfer_reason.c
|
||||
model/transfer_reason.h
|
||||
model/twap_id.c
|
||||
model/twap_id.h
|
||||
model/ue_auth.c
|
||||
model/ue_auth.h
|
||||
model/ue_context.c
|
||||
model/ue_context.h
|
||||
model/ue_context_cancel_relocate_data.c
|
||||
model/ue_context_cancel_relocate_data.h
|
||||
model/ue_context_create_data.c
|
||||
model/ue_context_create_data.h
|
||||
model/ue_context_create_error.c
|
||||
model/ue_context_create_error.h
|
||||
model/ue_context_created_data.c
|
||||
model/ue_context_created_data.h
|
||||
model/ue_context_release.c
|
||||
model/ue_context_release.h
|
||||
model/ue_context_relocate_data.c
|
||||
model/ue_context_relocate_data.h
|
||||
model/ue_context_relocated_data.c
|
||||
model/ue_context_relocated_data.h
|
||||
model/ue_context_transfer_req_data.c
|
||||
model/ue_context_transfer_req_data.h
|
||||
model/ue_context_transfer_rsp_data.c
|
||||
model/ue_context_transfer_rsp_data.h
|
||||
model/ue_context_transfer_status.c
|
||||
model/ue_context_transfer_status.h
|
||||
model/ue_differentiation_info.c
|
||||
model/ue_differentiation_info.h
|
||||
model/ue_n1_n2_info_subscription_create_data.c
|
||||
model/ue_n1_n2_info_subscription_create_data.h
|
||||
model/ue_n1_n2_info_subscription_created_data.c
|
||||
model/ue_n1_n2_info_subscription_created_data.h
|
||||
model/ue_reg_status_update_req_data.c
|
||||
model/ue_reg_status_update_req_data.h
|
||||
model/ue_reg_status_update_rsp_data.c
|
||||
model/ue_reg_status_update_rsp_data.h
|
||||
model/user_location.c
|
||||
model/user_location.h
|
||||
model/v2x_context.c
|
||||
model/v2x_context.h
|
||||
model/v2x_information.c
|
||||
model/v2x_information.h
|
||||
src/apiClient.c
|
||||
src/apiKey.c
|
||||
src/binary.c
|
||||
src/list.c
|
||||
uncrustify-rules.cfg
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
char* OpenAPI_af_event_ToString(OpenAPI_af_event_e af_event)
|
||||
{
|
||||
const char *af_eventArray[] = { "NULL", "SVC_EXPERIENCE", "UE_MOBILITY", "UE_COMM", "EXCEPTIONS" };
|
||||
const char *af_eventArray[] = { "NULL", "ACCESS_TYPE_CHANGE", "ANI_REPORT", "CHARGING_CORRELATION", "EPS_FALLBACK", "FAILED_RESOURCES_ALLOCATION", "OUT_OF_CREDIT", "PLMN_CHG", "QOS_MONITORING", "QOS_NOTIF", "RAN_NAS_CAUSE", "REALLOCATION_OF_CREDIT", "SUCCESSFUL_RESOURCES_ALLOCATION", "TSN_BRIDGE_INFO", "USAGE_REPORT" };
|
||||
size_t sizeofArray = sizeof(af_eventArray) / sizeof(af_eventArray[0]);
|
||||
if (af_event < sizeofArray)
|
||||
return (char *)af_eventArray[af_event];
|
||||
|
@ -17,7 +17,7 @@ char* OpenAPI_af_event_ToString(OpenAPI_af_event_e af_event)
|
|||
OpenAPI_af_event_e OpenAPI_af_event_FromString(char* af_event)
|
||||
{
|
||||
int stringToReturn = 0;
|
||||
const char *af_eventArray[] = { "NULL", "SVC_EXPERIENCE", "UE_MOBILITY", "UE_COMM", "EXCEPTIONS" };
|
||||
const char *af_eventArray[] = { "NULL", "ACCESS_TYPE_CHANGE", "ANI_REPORT", "CHARGING_CORRELATION", "EPS_FALLBACK", "FAILED_RESOURCES_ALLOCATION", "OUT_OF_CREDIT", "PLMN_CHG", "QOS_MONITORING", "QOS_NOTIF", "RAN_NAS_CAUSE", "REALLOCATION_OF_CREDIT", "SUCCESSFUL_RESOURCES_ALLOCATION", "TSN_BRIDGE_INFO", "USAGE_REPORT" };
|
||||
size_t sizeofArray = sizeof(af_eventArray) / sizeof(af_eventArray[0]);
|
||||
while (stringToReturn < sizeofArray) {
|
||||
if (strcmp(af_event, af_eventArray[stringToReturn]) == 0) {
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef enum { OpenAPI_af_event_NULL = 0, OpenAPI_af_event_SVC_EXPERIENCE, OpenAPI_af_event_UE_MOBILITY, OpenAPI_af_event_UE_COMM, OpenAPI_af_event_EXCEPTIONS } OpenAPI_af_event_e;
|
||||
typedef enum { OpenAPI_af_event_NULL = 0, OpenAPI_af_event_ACCESS_TYPE_CHANGE, OpenAPI_af_event_ANI_REPORT, OpenAPI_af_event_CHARGING_CORRELATION, OpenAPI_af_event_EPS_FALLBACK, OpenAPI_af_event_FAILED_RESOURCES_ALLOCATION, OpenAPI_af_event_OUT_OF_CREDIT, OpenAPI_af_event_PLMN_CHG, OpenAPI_af_event_QOS_MONITORING, OpenAPI_af_event_QOS_NOTIF, OpenAPI_af_event_RAN_NAS_CAUSE, OpenAPI_af_event_REALLOCATION_OF_CREDIT, OpenAPI_af_event_SUCCESSFUL_RESOURCES_ALLOCATION, OpenAPI_af_event_TSN_BRIDGE_INFO, OpenAPI_af_event_USAGE_REPORT } OpenAPI_af_event_e;
|
||||
|
||||
char* OpenAPI_af_event_ToString(OpenAPI_af_event_e af_event);
|
||||
|
||||
|
|
|
@ -10,7 +10,6 @@ $openapi_generator_cli generate -i ./modified/TS29521_Nbsf_Management.yaml -c ./
|
|||
$openapi_generator_cli generate -i ./modified/TS29531_Nnssf_NSSelection.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29507_Npcf_AMPolicyControl.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29512_Npcf_SMPolicyControl.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29514_Npcf_PolicyAuthorization.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29503_Nudm_SDM.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29503_Nudm_UECM.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29503_Nudm_UEAU.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
|
@ -20,3 +19,9 @@ $openapi_generator_cli generate -i ./modified/TS29510_Nnrf_NFManagement.yaml -c
|
|||
$openapi_generator_cli generate -i ./modified/TS29504_Nudr_DR.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29502_Nsmf_PDUSession.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
$openapi_generator_cli generate -i ./modified/TS29518_Namf_Communication.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
|
||||
# 'AfEvent' Model was duplicated in TS29514_Npcf_PolicyAuthorization and
|
||||
# TS29517_Naf_EventExposure.yaml.
|
||||
# You should put TS29514_Npcf_PolicyAuthorization bottom to use 'AfEvent'
|
||||
# in TS29514_Npcf_PolicyAuthorization,
|
||||
$openapi_generator_cli generate -i ./modified/TS29514_Npcf_PolicyAuthorization.yaml -c ./openapi-generator/config.yaml -g c -o ../../openapi
|
||||
|
|
|
@ -36,7 +36,6 @@ bool bsf_nbsf_management_handle_pcf_binding(
|
|||
OpenAPI_snssai_t Snssai;
|
||||
char fqdn[OGS_MAX_FQDN_LEN+1];
|
||||
int fqdn_len;
|
||||
uint64_t supported_features = 0;
|
||||
|
||||
ogs_assert(stream);
|
||||
ogs_assert(recvmsg);
|
||||
|
@ -183,9 +182,16 @@ bool bsf_nbsf_management_handle_pcf_binding(
|
|||
header.resource.component[1] = sess->binding_id;
|
||||
|
||||
if (RecvPcfBinding->supp_feat) {
|
||||
supported_features =
|
||||
uint64_t supported_features =
|
||||
ogs_uint64_from_string(RecvPcfBinding->supp_feat);
|
||||
sess->management_features &= supported_features;
|
||||
|
||||
if (sess->management_features != supported_features) {
|
||||
ogs_free(RecvPcfBinding->supp_feat);
|
||||
RecvPcfBinding->supp_feat =
|
||||
ogs_uint64_to_string(sess->management_features);
|
||||
ogs_assert(RecvPcfBinding->supp_feat);
|
||||
}
|
||||
} else {
|
||||
sess->management_features = 0;
|
||||
}
|
||||
|
@ -233,6 +239,8 @@ bool bsf_nbsf_management_handle_pcf_binding(
|
|||
ogs_expect_or_return_val(PcfIpEndPoint, NULL);
|
||||
PcfIpEndPoint->ipv4_address = sess->pcf_ip[i].addr;
|
||||
PcfIpEndPoint->ipv6_address = sess->pcf_ip[i].addr6;
|
||||
|
||||
PcfIpEndPoint->is_port = true;
|
||||
PcfIpEndPoint->port = sess->pcf_ip[i].port;
|
||||
|
||||
OpenAPI_list_add(PcfIpEndPointList, PcfIpEndPoint);
|
||||
|
|
|
@ -244,8 +244,12 @@ pcf_sess_t *pcf_sess_add(pcf_ue_t *pcf_ue, uint8_t psi)
|
|||
/* SBI Features */
|
||||
OGS_SBI_FEATURES_SET(sess->smpolicycontrol_features,
|
||||
OGS_SBI_NPCF_SMPOLICYCONTROL_DN_AUTHORIZATION);
|
||||
|
||||
OGS_SBI_FEATURES_SET(sess->management_features,
|
||||
OGS_SBI_NBSF_MANAGEMENT_BINDING_UPDATE);
|
||||
|
||||
OGS_SBI_FEATURES_SET(sess->policyauthorization_features,
|
||||
OGS_SBI_NPCF_POLICYAUTHORIZATION_SPONSORED_CONNECTIVITY);
|
||||
OGS_SBI_FEATURES_SET(sess->policyauthorization_features,
|
||||
OGS_SBI_NPCF_POLICYAUTHORIZATION_IMS_SBI);
|
||||
|
||||
|
|
|
@ -39,6 +39,8 @@ bool pcf_nbsf_management_handle_register(
|
|||
|
||||
ogs_session_t *session = NULL;
|
||||
|
||||
OpenAPI_pcf_binding_t *PcfBinding = NULL;
|
||||
|
||||
OpenAPI_sm_policy_decision_t SmPolicyDecision;
|
||||
|
||||
OpenAPI_lnode_t *node = NULL, *node2 = NULL;
|
||||
|
@ -89,6 +91,13 @@ bool pcf_nbsf_management_handle_register(
|
|||
goto cleanup;
|
||||
}
|
||||
|
||||
PcfBinding = recvmsg->PcfBinding;
|
||||
if (PcfBinding->supp_feat) {
|
||||
uint64_t supported_features =
|
||||
ogs_uint64_from_string(PcfBinding->supp_feat);
|
||||
sess->management_features &= supported_features;
|
||||
}
|
||||
|
||||
memset(&header, 0, sizeof(header));
|
||||
header.uri = recvmsg->http.location;
|
||||
|
||||
|
|
|
@ -415,6 +415,13 @@ bool pcf_npcf_policyauthorization_handle_create(pcf_sess_t *sess,
|
|||
supported_features = ogs_uint64_from_string(AscReqData->supp_feat);
|
||||
sess->policyauthorization_features &= supported_features;
|
||||
|
||||
if (sess->policyauthorization_features != supported_features) {
|
||||
ogs_free(AscReqData->supp_feat);
|
||||
AscReqData->supp_feat =
|
||||
ogs_uint64_to_string(sess->policyauthorization_features);
|
||||
ogs_assert(AscReqData->supp_feat);
|
||||
}
|
||||
|
||||
memset(&ims_data, 0, sizeof(ims_data));
|
||||
media_component = &ims_data.
|
||||
media_component[ims_data.num_of_media_component];
|
||||
|
|
|
@ -153,6 +153,8 @@ af_sess_t *af_sess_add_by_ue_address(ogs_ip_t *ue_address)
|
|||
ogs_expect_or_return_val(sess->ipv6prefix, NULL);
|
||||
}
|
||||
|
||||
OGS_SBI_FEATURES_SET(sess->policyauthorization_features,
|
||||
OGS_SBI_NPCF_POLICYAUTHORIZATION_SPONSORED_CONNECTIVITY);
|
||||
OGS_SBI_FEATURES_SET(sess->policyauthorization_features,
|
||||
OGS_SBI_NPCF_POLICYAUTHORIZATION_IMS_SBI);
|
||||
|
||||
|
|
|
@ -71,8 +71,7 @@ void af_nbsf_management_handle_pcf_binding(
|
|||
if (!IpEndPoint) continue;
|
||||
|
||||
if (sess->pcf.num_of_ip < OGS_SBI_MAX_NUM_OF_IP_ADDRESS) {
|
||||
port = IpEndPoint->port;
|
||||
if (!port) {
|
||||
if (!IpEndPoint->is_port) {
|
||||
if (ogs_sbi_default_uri_scheme() ==
|
||||
OpenAPI_uri_scheme_http)
|
||||
port = OGS_SBI_HTTP_PORT;
|
||||
|
@ -84,6 +83,8 @@ void af_nbsf_management_handle_pcf_binding(
|
|||
ogs_sbi_default_uri_scheme());
|
||||
ogs_assert_if_reached();
|
||||
}
|
||||
} else {
|
||||
port = IpEndPoint->port;
|
||||
}
|
||||
|
||||
if (IpEndPoint->ipv4_address) {
|
||||
|
|
|
@ -29,6 +29,11 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
|
||||
OpenAPI_app_session_context_t AppSessionContext;
|
||||
OpenAPI_app_session_context_req_data_t AscReqData;
|
||||
|
||||
OpenAPI_events_subsc_req_data_t evSubsc;
|
||||
OpenAPI_list_t *EventList = NULL;
|
||||
OpenAPI_af_event_subscription_t *Event = NULL;
|
||||
|
||||
OpenAPI_snssai_t sNssai;
|
||||
|
||||
OpenAPI_list_t *MediaComponentList = NULL;
|
||||
|
@ -84,6 +89,25 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
|
||||
AscReqData.dnn = sess->dnn;
|
||||
|
||||
memset(&evSubsc, 0, sizeof(evSubsc));
|
||||
|
||||
EventList = OpenAPI_list_create();
|
||||
ogs_assert(EventList);
|
||||
|
||||
Event = ogs_calloc(1, sizeof(*Event));
|
||||
ogs_expect_or_return_val(Event, NULL);
|
||||
Event->event = OpenAPI_af_event_CHARGING_CORRELATION;
|
||||
OpenAPI_list_add(EventList, Event);
|
||||
|
||||
Event = ogs_calloc(1, sizeof(*Event));
|
||||
ogs_expect_or_return_val(Event, NULL);
|
||||
Event->event = OpenAPI_af_event_ANI_REPORT;
|
||||
Event->notif_method = OpenAPI_af_notif_method_ONE_TIME;
|
||||
OpenAPI_list_add(EventList, Event);
|
||||
|
||||
evSubsc.events = EventList;
|
||||
AscReqData.ev_subsc = &evSubsc;
|
||||
|
||||
memset(&sNssai, 0, sizeof(sNssai));
|
||||
if (sess->s_nssai.sst) {
|
||||
sNssai.sst = sess->s_nssai.sst;
|
||||
|
@ -91,6 +115,8 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
AscReqData.slice_info = &sNssai;
|
||||
}
|
||||
|
||||
AscReqData.spon_status = OpenAPI_sponsoring_status_SPONSOR_DISABLED;
|
||||
|
||||
AscReqData.supi = sess->supi;
|
||||
AscReqData.gpsi = sess->gpsi;
|
||||
|
||||
|
@ -106,7 +132,7 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
MediaComponent = ogs_calloc(1, sizeof(*MediaComponent));
|
||||
ogs_expect_or_return_val(MediaComponent, NULL);
|
||||
|
||||
MediaComponent->med_comp_n = (++i);
|
||||
MediaComponent->med_comp_n = (i++);
|
||||
MediaComponent->f_status = OpenAPI_flow_status_ENABLED;
|
||||
MediaComponent->mar_bw_dl = ogs_sbi_bitrate_to_string(
|
||||
41000, OGS_SBI_BITRATE_KBPS);
|
||||
|
@ -153,7 +179,7 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
SubComponent = ogs_calloc(1, sizeof(*SubComponent));
|
||||
ogs_expect_or_return_val(SubComponent, NULL);
|
||||
|
||||
SubComponent->f_num = (++j);
|
||||
SubComponent->f_num = (j++);
|
||||
SubComponent->flow_usage = OpenAPI_flow_usage_NO_INFO;
|
||||
|
||||
SubComponentMap = OpenAPI_map_create(
|
||||
|
@ -177,7 +203,7 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
SubComponent = ogs_calloc(1, sizeof(*SubComponent));
|
||||
ogs_expect_or_return_val(SubComponent, NULL);
|
||||
|
||||
SubComponent->f_num = (++j);
|
||||
SubComponent->f_num = (j++);
|
||||
SubComponent->flow_usage = OpenAPI_flow_usage_NO_INFO;
|
||||
|
||||
SubComponentMap = OpenAPI_map_create(
|
||||
|
@ -207,6 +233,14 @@ ogs_sbi_request_t *af_npcf_policyauthorization_build_create(
|
|||
|
||||
ogs_free(AscReqData.supp_feat);
|
||||
|
||||
EventList = evSubsc.events;
|
||||
OpenAPI_list_for_each(EventList, node) {
|
||||
Event = node->data;
|
||||
if (Event)
|
||||
ogs_free(Event);
|
||||
}
|
||||
OpenAPI_list_free(EventList);
|
||||
|
||||
if (sNssai.sd)
|
||||
ogs_free(sNssai.sd);
|
||||
|
||||
|
|
|
@ -28,6 +28,11 @@ void af_npcf_policyauthorization_handle_create(
|
|||
ogs_sbi_message_t message;
|
||||
ogs_sbi_header_t header;
|
||||
|
||||
OpenAPI_app_session_context_t *AppSessionContext = NULL;
|
||||
OpenAPI_app_session_context_req_data_t *AscReqData = NULL;
|
||||
|
||||
uint64_t supported_features = 0;
|
||||
|
||||
if (!recvmsg->http.location) {
|
||||
ogs_error("[%s:%s] No http.location",
|
||||
sess->ipv4addr ? sess->ipv4addr : "Unknown",
|
||||
|
@ -52,12 +57,37 @@ void af_npcf_policyauthorization_handle_create(
|
|||
sess->ipv4addr ? sess->ipv4addr : "Unknown",
|
||||
sess->ipv6addr ? sess->ipv6addr : "Unknown",
|
||||
recvmsg->http.location);
|
||||
|
||||
ogs_sbi_header_free(&header);
|
||||
return;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
AppSessionContext = recvmsg->AppSessionContext;
|
||||
if (!AppSessionContext) {
|
||||
ogs_error("[%s:%s] No AppSessionContext",
|
||||
sess->ipv4addr ? sess->ipv4addr : "Unknown",
|
||||
sess->ipv6addr ? sess->ipv6addr : "Unknown");
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
AscReqData = AppSessionContext->asc_req_data;
|
||||
if (!AscReqData) {
|
||||
ogs_error("[%s:%s] No AscReqData",
|
||||
sess->ipv4addr ? sess->ipv4addr : "Unknown",
|
||||
sess->ipv6addr ? sess->ipv6addr : "Unknown");
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
if (!AscReqData->supp_feat) {
|
||||
ogs_error("[%s:%s] No AscReqData->suppFeat",
|
||||
sess->ipv4addr ? sess->ipv4addr : "Unknown",
|
||||
sess->ipv6addr ? sess->ipv6addr : "Unknown");
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
supported_features = ogs_uint64_from_string(AscReqData->supp_feat);
|
||||
sess->policyauthorization_features &= supported_features;
|
||||
|
||||
af_sess_set_pcf_app_session_id(sess, message.h.resource.component[1]);
|
||||
|
||||
cleanup:
|
||||
ogs_sbi_header_free(&header);
|
||||
}
|
||||
|
|
|
@ -297,6 +297,9 @@ static void test1_func(abts_case *tc, void *data)
|
|||
af_sess = af_sess_add_by_ue_address(&sess->ue_ip);
|
||||
ogs_assert(af_sess);
|
||||
|
||||
af_sess->dnn = ogs_strdup(sess->dnn);
|
||||
ogs_assert(af_sess->dnn);
|
||||
|
||||
#if 0
|
||||
af_local_discover_and_send(OpenAPI_nf_type_BSF, af_sess, NULL,
|
||||
af_nbsf_management_build_discover);
|
||||
|
|
Loading…
Reference in New Issue