- for(idx=0; idx<f1SetRspMsg->protocolIEs.list.count; idx++)
- {
-// F1SetupResponseIEs_t f1RspIe = f1SetRspMsg->protocolIEs.list.array[idx];
- switch(f1SetRspMsg->protocolIEs.list.array[idx]->id)
- {
- case ProtocolIE_ID_id_Cells_to_be_Activated_List:
- {
- procCellsToBeActivated(f1SetRspMsg->protocolIEs.list.array[idx]->\
- value.choice.Cells_to_be_Activated_List);
- break;
- }
- //TODO: where to store and how to use below variables?can they be skipped
- case ProtocolIE_ID_id_TransactionID:
- {
- f1SetRspDb.transId = f1SetRspMsg->protocolIEs.list.array[idx]->\
- value.choice.TransactionID;
- break;
- }
- case ProtocolIE_ID_id_gNB_CU_Name:
- {
- cuName = &f1SetRspMsg->protocolIEs.list.array[idx]->\
- value.choice.GNB_CU_Name;
- strcpy(f1SetRspDb.cuName, (const char*)cuName->buf);
- break;
- }
- case ProtocolIE_ID_id_GNB_CU_RRC_Version:
- {
- rrc_Ver = &f1SetRspMsg->protocolIEs.list.array[idx]->\
- value.choice.RRC_Version;
- strcpy(f1SetRspDb.rrcVersion.rrcVer,
- (const char*)rrc_Ver->latest_RRC_Version.buf);
- break;
- }
- default:
- DU_LOG("\nDU_APP : Invalid IE received in F1SetupRsp:%ld",
- f1SetRspMsg->protocolIEs.list.array[idx]->id);
- }
- }
-
- /* TODO :Check the deallocation */
-#if 0
- DU_FREE(f1SetupRsp->protocolIEs.list.array,(Size)elementCnt * sizeof(F1SetupResponseIEs_t *));
- DU_FREE(f1apMsg->choice.successfulOutcome,(Size)sizeof(SuccessfulOutcome_t));
- DU_FREE(f1apMsg,(Size)sizeof(F1AP_PDU_t));
-#endif
-
- return ret;
+/*******************************************************************
+ *
+ * @brief Handles GNB DU Cfg Update Ack received in F1AP
+ *
+ * @details
+ *
+ * Function : duProcGnbDuCfgUpdAckMsg
+ *
+ * Functionality:
+ * - Handles GNB DU Cfg Update Ack received in F1AP
+ *
+ * @params[in] Pointer to F1GnbDuCfgUpdAck
+ * @return void
+ *
+ ******************************************************************/
+void duProcGnbDuCfgUpdAckMsg()
+{
+ DU_LOG("\nDU APP: GNB-DU config update Ack received ");