diff --git a/srsgnb/hdr/stack/ric/e2ap.h b/srsgnb/hdr/stack/ric/e2ap.h index 698ecbac5..73898c73e 100644 --- a/srsgnb/hdr/stack/ric/e2ap.h +++ b/srsgnb/hdr/stack/ric/e2ap.h @@ -54,7 +54,8 @@ public: int process_subscription_request(ricsubscription_request_s subscription_request); e2_ap_pdu_c generate_subscription_response(ric_subscription_reponse_t ric_subscription_reponse); int generate_subscription_failure(); - e2_ap_pdu_c generate_subscription_delete_response(); + e2_ap_pdu_c + generate_subscription_delete_response(uint32_t ric_requestor_id, uint32_t ric_instance_id, uint32_t ra_nfunction_id); e2_ap_pdu_c generate_indication(); e2_ap_pdu_c generate_reset_request(); e2_ap_pdu_c generate_reset_response(); diff --git a/srsgnb/src/stack/ric/e2ap.cc b/srsgnb/src/stack/ric/e2ap.cc index 277171953..64862966b 100644 --- a/srsgnb/src/stack/ric/e2ap.cc +++ b/srsgnb/src/stack/ric/e2ap.cc @@ -107,7 +107,9 @@ e2_ap_pdu_c e2ap::generate_subscription_response(ric_subscription_reponse_t ric_ return pdu; } -e2_ap_pdu_c e2ap::generate_subscription_delete_response() +e2_ap_pdu_c e2ap::generate_subscription_delete_response(uint32_t ric_requestor_id, + uint32_t ric_instance_id, + uint32_t ra_nfunction_id) { e2_ap_pdu_c pdu; successful_outcome_s& success = pdu.set_successful_outcome(); @@ -116,11 +118,11 @@ e2_ap_pdu_c e2ap::generate_subscription_delete_response() ricsubscription_delete_resp_s& sub_resp = success.value.ricsubscription_delete_resp(); sub_resp->ri_crequest_id.crit = asn1::crit_opts::reject; - sub_resp->ri_crequest_id->ric_requestor_id = 1021; - sub_resp->ri_crequest_id->ric_instance_id = 0; + sub_resp->ri_crequest_id->ric_requestor_id = ric_requestor_id; + sub_resp->ri_crequest_id->ric_instance_id = ric_instance_id; sub_resp->ra_nfunction_id.crit = asn1::crit_opts::reject; - sub_resp->ra_nfunction_id->value = 147; + sub_resp->ra_nfunction_id->value = ra_nfunction_id; return pdu; } diff --git a/srsgnb/src/stack/ric/ric_subscription.cc b/srsgnb/src/stack/ric/ric_subscription.cc index ac6ffaf00..d271bf94c 100644 --- a/srsgnb/src/stack/ric/ric_subscription.cc +++ b/srsgnb/src/stack/ric/ric_subscription.cc @@ -57,7 +57,8 @@ void ric_client::ric_subscription::stop_ric_indication_reporting() } parent->logger.debug("Send RIC Subscription Delete Response to RIC Requestor ID: %i\n", ric_requestor_id); - e2_ap_pdu_c send_pdu = parent->e2ap_.generate_subscription_delete_response(); + e2_ap_pdu_c send_pdu = + parent->e2ap_.generate_subscription_delete_response(ric_requestor_id, ric_instance_id, ra_nfunction_id); parent->queue_send_e2ap_pdu(send_pdu); }