Revert "[Epic-ID: ODUHIGH-516][Task-ID: ODUHIGH-530] RIC Subscription Delete Req" 86/12086/1
authorPriyanka Borla <pborla@radisys.com>
Tue, 21 Nov 2023 12:50:02 +0000 (12:50 +0000)
committerPriyanka Borla <pborla@radisys.com>
Tue, 21 Nov 2023 12:50:02 +0000 (12:50 +0000)
This reverts commit 0992b1493542e0771a54b66d595166ca30f5c881.

Reason for revert: Incorrect commit message

Change-Id: Ifa9dc312bd34cd3cd192cd1012505ed082e68cba
Signed-off-by: pborla <pborla@radisys.com>
src/du_app/du_e2ap_msg_hdl.c
src/ric_stub/ric_e2ap_msg_hdl.c
src/ric_stub/ric_e2ap_msg_hdl.h
src/ric_stub/ric_stub.h

index fe44624..bddc73b 100644 (file)
@@ -9434,278 +9434,6 @@ void procE2ConnectionUpdate(E2AP_PDU_t  *e2apMsg)
    freeAperDecodingOfE2ConnectionUpdate(connectionUpdate);
 }
 
-/*******************************************************************
- *
- * @brief Free RIC Subscription  action to be added list
- *
- * @details
- *
- *    Function : freeAperDecodingOfRicSubsActionToBeAdded
- *
- *    Functionality: Free the RIC Subscription action to be added list
- *
- * @params[in] RICactions_ToBeAddedForModification_List_t *subsDetails
- * @return void
- *
- * ****************************************************************/
-void freeAperDecodingOfRicSubsActionToBeAdded(RICactions_ToBeAddedForModification_List_t *subsDetails)
-{
-   uint8_t elementIdx = 0;
-   RICaction_ToBeAddedForModification_ItemIEs_t *addedActionItemIe=NULLP;
-
-   if(subsDetails->list.array)
-   {
-      for(elementIdx = 0; elementIdx < subsDetails->list.count; elementIdx++)
-      {
-         if(subsDetails->list.array[elementIdx])
-         {
-            addedActionItemIe = (RICaction_ToBeAddedForModification_ItemIEs_t*)subsDetails->list.array[elementIdx];
-            free(addedActionItemIe->value.choice.RICaction_ToBeAddedForModification_Item.ricActionDefinition.buf);
-            free(subsDetails->list.array[elementIdx]);
-         }
-      }
-      free(subsDetails->list.array);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Deallocation of memory allocated by aper decoder for
- * RIC Subscription  action to be removed list
- *
- * @details
- *
- *    Function : freeAperDecodingOfRicSubsActionToBeRemoved
- *
- *    Functionality: Free the RIC Subscription action to be removed list
- *
- * @params[in] RICactions_ToBeRemovedForModification_List_t *subsDetails
- * @return void
- *
- * ****************************************************************/
-void freeAperDecodingOfRicSubsActionToBeRemoved(RICactions_ToBeRemovedForModification_List_t *subsDetails)
-{
-   uint8_t elementIdx = 0;
-
-   if(subsDetails->list.array)
-   {
-      for(elementIdx = 0; elementIdx < subsDetails->list.count; elementIdx++)
-      {
-         if(subsDetails->list.array[elementIdx])
-         {
-            free(subsDetails->list.array[elementIdx]);
-         }
-      }
-      free(subsDetails->list.array);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Deallocation of memory allocated by aper decoder for
- * RIC Subscription action to be modify
- *
- * @details
- *
- *    Function : freeAperDecodingOfRicSubsActionToBeModified
- *
- *    Functionality: Free the RIC Subscription action to be modify
- *
- * @params[in] RICactions_ToBeModifiedForModification_List_t List
- * @return void
- *
- * ****************************************************************/
-void freeAperDecodingOfRicSubsActionToBeModified(RICactions_ToBeModifiedForModification_List_t *subsDetails)
-{
-   uint8_t elementIdx = 0;
-   RICaction_ToBeModifiedForModification_ItemIEs_t *actionItem = NULLP;
-
-   if(subsDetails->list.array)
-   {
-      for(elementIdx = 0; elementIdx < subsDetails->list.count; elementIdx++)
-      {
-         if(subsDetails->list.array[elementIdx])
-         {
-            actionItem = (RICaction_ToBeModifiedForModification_ItemIEs_t *)subsDetails->list.array[elementIdx];
-            if(actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition)
-            {
-               free(actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition->buf);
-               free(actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition);
-            }
-            free(subsDetails->list.array[elementIdx]);
-         }
-      }
-      free(subsDetails->list.array);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Deallocation of memory allocated by aper decoder for 
- * RIC Subscription modification Request
- *
- * @details
- *
- *    Function freeAperDecodingOfRicSubsModificationReq
- *
- * Functionality : Free RIC Subscription modification Request
- *
- * @params[in] E2AP_PDU  
- * @return void
- *
- ******************************************************************/
-void freeAperDecodingOfRicSubsModificationReq(E2AP_PDU_t *e2apRicMsg)
-{
-   uint8_t idx = 0;
-   RICsubscriptionModificationRequest_t   *ricSubscriptionModReq;
-   RICsubscriptionModificationRequest_IEs_t *ricSubscriptionModReqIe;
-
-   ricSubscriptionModReq = &e2apRicMsg->choice.initiatingMessage->value.choice.RICsubscriptionModificationRequest;
-   
-   if(ricSubscriptionModReq->protocolIEs.list.array)
-   {
-      for(idx=0; idx < ricSubscriptionModReq->protocolIEs.list.count; idx++)
-      {
-         if(ricSubscriptionModReq->protocolIEs.list.array[idx])
-         {
-            ricSubscriptionModReqIe = ricSubscriptionModReq->protocolIEs.list.array[idx];
-
-            switch(ricSubscriptionModReq->protocolIEs.list.array[idx]->id)
-            {
-               case ProtocolIE_IDE2_id_RICrequestID:
-                  break;
-               
-               case ProtocolIE_IDE2_id_RANfunctionID:
-                  break;
-
-               case ProtocolIE_IDE2_id_RICactionsToBeRemovedForModification_List:
-                  {
-                     freeAperDecodingOfRicSubsActionToBeRemoved(&(ricSubscriptionModReqIe->value.choice.RICactions_ToBeRemovedForModification_List));
-                     break;
-                  }
-               case ProtocolIE_IDE2_id_RICactionsToBeModifiedForModification_List:
-                  {
-                     freeAperDecodingOfRicSubsActionToBeModified(&(ricSubscriptionModReqIe->value.choice.RICactions_ToBeModifiedForModification_List));
-                     break;
-                  }
-               case ProtocolIE_IDE2_id_RICactionsToBeAddedForModification_List:
-                  {
-                     freeAperDecodingOfRicSubsActionToBeAdded(&(ricSubscriptionModReqIe->value.choice.RICactions_ToBeAddedForModification_List));
-                     break;
-                  }
-               default:
-                  {
-                     DU_LOG("\nERROR  -->  E2AP : Received Invalid Ie [%ld]", ricSubscriptionModReq->protocolIEs.list.array[idx]->id);
-                     break;
-                  }
-
-            }
-
-            free(ricSubscriptionModReq->protocolIEs.list.array[idx]);
-         }
-      }
-      free(ricSubscriptionModReq->protocolIEs.list.array);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Process RIC Subscription modification request
- *
- * @details
- *
- *    Function : procRicSubscriptionModificationRequest
- *
- * Functionality: Process RIC subscription modification request.
- *
- * @params[in] E2AP PDU
- * @return void
- *
- ******************************************************************/
-void procRicSubscriptionModificationRequest(E2AP_PDU_t *e2apMsg)
-{
-   uint8_t ieIdx = 0;
-   uint16_t ranFuncId = 0;
-   bool procFailure = false;
-   RicRequestId ricReqId;
-   RanFunction *ranFuncDb = NULLP;
-   CmLList *ricSubsNode = NULLP;
-   RicSubscription *ricSubsDb = NULLP;
-   RICsubscriptionModificationRequest_t *ricSubsModifyReq = NULLP;
-   RICsubscriptionModificationRequest_IEs_t *ricSubsModifyReqIe = NULLP;
-
-   DU_LOG("\nINFO   -->  E2AP : %s: Received RIC Subscription Modification Request", __func__);
-
-   do{
-      if(!e2apMsg)
-      {
-         DU_LOG("\nERROR  -->  E2AP : %s: E2AP Message is NULL", __func__);
-         break;
-      }
-
-      if(!e2apMsg->choice.initiatingMessage)
-      {
-         DU_LOG("\nERROR  -->  E2AP : %s: Initiating Message in E2AP PDU is NULL", __func__);
-         break;
-      }
-      
-      ricSubsModifyReq =  &e2apMsg->choice.initiatingMessage->value.choice.RICsubscriptionModificationRequest;
-      for(ieIdx = 0; ieIdx < ricSubsModifyReq->protocolIEs.list.count; ieIdx++)
-      {
-         if(!ricSubsModifyReq->protocolIEs.list.array[ieIdx])
-         {
-            DU_LOG("\nERROR  -->  E2AP : %s: IE at index [%d] in E2AP message IEs list is null", __func__, ieIdx);
-            break;
-         }
-
-         ricSubsModifyReqIe = ricSubsModifyReq->protocolIEs.list.array[ieIdx];
-         switch(ricSubsModifyReqIe->id)
-         {
-            case ProtocolIE_IDE2_id_RICrequestID:
-               {
-                  memset(&ricReqId, 0, sizeof(RicRequestId));
-                  ricReqId.requestorId = ricSubsModifyReqIe->value.choice.RICrequestID.ricRequestorID;
-                  ricReqId.instanceId = ricSubsModifyReqIe->value.choice.RICrequestID.ricInstanceID;
-                  break;
-               }
-
-            case ProtocolIE_IDE2_id_RANfunctionID:
-               {
-                  ranFuncId = ricSubsModifyReqIe->value.choice.RANfunctionID;
-                  ranFuncDb = fetchRanFuncFromRanFuncId(ranFuncId);
-                  if(!ranFuncDb)
-                  {
-                     DU_LOG("\nERROR  -->  E2AP : %s: RAN Function ID [%d] not found", __func__, ranFuncId);
-                     procFailure = true;
-                     break;
-                  }
-
-                  ricSubsDb = fetchSubsInfoFromRicReqId(ricReqId, ranFuncDb, &ricSubsNode);
-                  if(!ricSubsDb)
-                  {
-                     DU_LOG("\nERROR  -->  E2AP : %s: RIC Subscription not found for Requestor_ID [%d] Instance_ID [%d]",\
-                           __func__, ricReqId.requestorId, ricReqId.instanceId);
-                     procFailure = true;
-                     break;
-                  }
-
-                  break;
-               }
-
-            default:
-               break;
-         } /* End of switch for Protocol IE Id */
-
-         if(procFailure)
-            break;
-      } /* End of for loop for Protocol IE list */
-
-      break;
-   }while(true);
-
-   freeAperDecodingOfRicSubsModificationReq(e2apMsg);
-}
-
 /*******************************************************************
  *
  * @brief Handles received E2AP message and sends back response  
@@ -9906,12 +9634,6 @@ void E2APMsgHdlr(Buffer *mBuf)
                      procE2ConnectionUpdate(e2apMsg);
                      break;
                   }
-               case InitiatingMessageE2__value_PR_RICsubscriptionModificationRequest:
-                  {
-                     DU_LOG("\nINFO  -->  E2AP : RIC Subscription Modification Request received");
-                     procRicSubscriptionModificationRequest(e2apMsg);
-                     break;
-                  }
                default:
                   {
                      DU_LOG("\nERROR  -->  E2AP : Invalid type of E2AP_PDU_PR_initiatingMessage [%d]",\
index b739658..f9540ce 100644 (file)
@@ -1784,7 +1784,7 @@ void  FreeRicActionDefinition(E2SM_KPM_ActionDefinition_t actionDef)
  *         RFAILED
  *
  * ****************************************************************/
-uint8_t fillRicActionDef(RICactionDefinition_t *ricActionDef, uint8_t ricActionId, ConfigType configType)
+uint8_t fillRicActionDef(RICactionDefinition_t *ricActionDef)
 {
    uint8_t ret = RFAILED;
    asn_enc_rval_t  encRetVal;
@@ -1850,8 +1850,7 @@ uint8_t fillRicActionDef(RICactionDefinition_t *ricActionDef, uint8_t ricActionI
          break;
 
       /* Granularity Period */
-      actionFormat1->granulPeriod = RIC_ACTION_GRANULARITY_PERIOD(configType, ricActionId); /* In ms */
-      DU_LOG("\nPBORLA configType %d ricActionId %d, actionFormat1->granulPeriod  %d", configType, ricActionId, actionFormat1->granulPeriod );
+      actionFormat1->granulPeriod = RIC_ACTION_GRANULARITY_PERIOD; /* In ms */
 
       /* Prints the Msg formed */
       xer_fprint(stdout, &asn_DEF_E2SM_KPM_ActionDefinition, &actionDef);
@@ -1933,7 +1932,7 @@ uint8_t fillActionToBeSetup(RICaction_ToBeSetup_ItemIEs_t *actionItem, RicSubscr
          DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
          break;
       }
-      if(fillRicActionDef(actionItem->value.choice.RICaction_ToBeSetup_Item.ricActionDefinition, ricActionId, CONFIG_ADD) != ROK)
+      if(fillRicActionDef(actionItem->value.choice.RICaction_ToBeSetup_Item.ricActionDefinition) != ROK)
       {
          DU_LOG("\nERROR  -->  E2AP : Failed at [%s] : line [%d]", __func__, __LINE__);
          break;
@@ -7221,602 +7220,6 @@ void ProcRicSubsDeleteRsp(uint32_t duId, RICsubscriptionDeleteResponse_t *ricSub
    }
 }
 
-/*******************************************************************
- *
- * @brief Free RIC Subscription  action to be added list
- *
- * @details
- *
- *    Function : FreeRicSubsActionToBeAdded
- *
- *    Functionality: Free the RIC Subscription action to be added list
- *
- * @params[in] RICactions_ToBeAddedForModification_List_t *subsDetails
- * @return void
- *
- * ****************************************************************/
-void FreeRicSubsActionToBeAdded(RICactions_ToBeAddedForModification_List_t *subsDetails)
-{
-   uint8_t elementIdx = 0;
-   RICaction_ToBeAddedForModification_ItemIEs_t *addedActionItemIe=NULLP;
-
-   if(subsDetails->list.array)
-   {
-      for(elementIdx = 0; elementIdx < subsDetails->list.count; elementIdx++)
-      {
-         if(subsDetails->list.array[elementIdx])
-         {
-            addedActionItemIe = (RICaction_ToBeAddedForModification_ItemIEs_t*)subsDetails->list.array[elementIdx];
-            RIC_FREE(addedActionItemIe->value.choice.RICaction_ToBeAddedForModification_Item.ricActionDefinition.buf, \
-            addedActionItemIe->value.choice.RICaction_ToBeAddedForModification_Item.ricActionDefinition.size);
-            RIC_FREE(subsDetails->list.array[elementIdx], sizeof(RICaction_ToBeAddedForModification_ItemIEs_t));
-         }
-      }
-      RIC_FREE(subsDetails->list.array, subsDetails->list.size);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Free RIC Subscription  action to be removed list
- *
- * @details
- *
- *    Function : FreeRicSubsActionToBeRemoved
- *
- *    Functionality: Free the RIC Subscription action to be removed list
- *
- * @params[in] RICactions_ToBeRemovedForModification_List_t *subsDetails
- * @return void
- *
- * ****************************************************************/
-void FreeRicSubsActionToBeRemoved(RICactions_ToBeRemovedForModification_List_t *subsDetails)
-{
-   uint8_t elementIdx = 0;
-
-   if(subsDetails->list.array)
-   {
-      for(elementIdx = 0; elementIdx < subsDetails->list.count; elementIdx++)
-      {
-         RIC_FREE(subsDetails->list.array[elementIdx], sizeof(RICaction_ToBeRemovedForModification_ItemIEs_t));
-      }
-      RIC_FREE(subsDetails->list.array, subsDetails->list.size);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Free RIC Subscription action to be modify
- *
- * @details
- *
- *    Function : FreeRicSubsActionToBeModified
- *
- *    Functionality: Free the RIC Subscription action to be modify
- *
- * @params[in] RICactions_ToBeModifiedForModification_List_t List
- * @return void
- *
- * ****************************************************************/
-void FreeRicSubsActionToBeModified(RICactions_ToBeModifiedForModification_List_t *subsDetails)
-{
-   uint8_t elementIdx = 0;
-   RICaction_ToBeModifiedForModification_ItemIEs_t *actionItem = NULLP;
-
-   if(subsDetails->list.array)
-   {
-      for(elementIdx = 0; elementIdx < subsDetails->list.count; elementIdx++)
-      {
-         if(subsDetails->list.array[elementIdx])
-         {
-            actionItem = (RICaction_ToBeModifiedForModification_ItemIEs_t *)subsDetails->list.array[elementIdx];
-            if(actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition)
-            {
-               RIC_FREE(actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition->buf, \
-                  actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition->size);
-               RIC_FREE(actionItem->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition, sizeof(RICactionDefinition_t));
-            }
-            RIC_FREE(subsDetails->list.array[elementIdx], sizeof(RICaction_ToBeModifiedForModification_ItemIEs_t))
-         }
-      }
-      RIC_FREE(subsDetails->list.array, subsDetails->list.size);
-   }
-}
-
-/*******************************************************************
- *
- * @brief Free RIC Subscription modification Request
- *
- * @details
- *
- *    Function :FreeRicSubscriptionModReq
- *
- * Functionality : Free RIC Subscription modification Request
- *
- * @params[in] E2AP_PDU
- * @return void
- *
- ******************************************************************/
-void FreeRicSubscriptionModReq(E2AP_PDU_t *e2apRicMsg)
-{
-   uint8_t idx = 0;
-   RICsubscriptionModificationRequest_t   *ricSubscriptionModReq =NULLP;
-   RICsubscriptionModificationRequest_IEs_t *ricSubscriptionModReqIe=NULLP;
-
-   if(e2apRicMsg)
-   {
-      if(e2apRicMsg->choice.initiatingMessage)
-      {
-         ricSubscriptionModReq = &e2apRicMsg->choice.initiatingMessage->value.choice.RICsubscriptionModificationRequest;
-         if(ricSubscriptionModReq->protocolIEs.list.array)
-         {
-            for(idx=0; idx < ricSubscriptionModReq->protocolIEs.list.count; idx++)
-            {
-               if(ricSubscriptionModReq->protocolIEs.list.array[idx])
-               {
-                  ricSubscriptionModReqIe = ricSubscriptionModReq->protocolIEs.list.array[idx];
-                  switch(ricSubscriptionModReq->protocolIEs.list.array[idx]->id)
-                  {
-                     case ProtocolIE_IDE2_id_RICrequestID:
-                        break;
-                     case ProtocolIE_IDE2_id_RANfunctionID:
-                        break;
-                     case ProtocolIE_IDE2_id_RICactionsToBeRemovedForModification_List:
-                        {
-                           FreeRicSubsActionToBeRemoved(&(ricSubscriptionModReqIe->value.choice.RICactions_ToBeRemovedForModification_List));
-                           break;
-                        }
-                     case ProtocolIE_IDE2_id_RICactionsToBeModifiedForModification_List:
-                        {
-                           FreeRicSubsActionToBeModified(&(ricSubscriptionModReqIe->value.choice.RICactions_ToBeModifiedForModification_List));
-                           break;
-                        }
-                     case ProtocolIE_IDE2_id_RICactionsToBeAddedForModification_List:
-                        {
-                           FreeRicSubsActionToBeAdded(&(ricSubscriptionModReqIe->value.choice.RICactions_ToBeAddedForModification_List));
-                           break;
-                        }
-                     default:
-                        {
-                           DU_LOG("\nERROR  -->  E2AP : Received Invalid Ie [%ld]", ricSubscriptionModReq->protocolIEs.list.array[idx]->id);
-                           break;
-                        }
-
-                  }
-
-                  RIC_FREE(ricSubscriptionModReq->protocolIEs.list.array[idx], sizeof(RICsubscriptionModificationRequest_IEs_t));
-               }
-            }
-            RIC_FREE(ricSubscriptionModReq->protocolIEs.list.array, ricSubscriptionModReq->protocolIEs.list.size);
-         }
-         RIC_FREE(e2apRicMsg->choice.initiatingMessage, sizeof(InitiatingMessageE2_t));
-      }
-      RIC_FREE(e2apRicMsg, sizeof(E2AP_PDU_t));
-   }
-}
-
-/*******************************************************************
-*
-* @brief Build Ric subscription action to be modify list
-*
-* @details
-*
-*    Function : BuildRicSubsActionToBeModify
-*
-*    Functionality: Build Ric subscription action to be modify list
-*
-* @params[in]
-*    RICactions_ToBeModifiedForModification_List_t to be filled
-*    Num of action to be modify
-*    List of action to be modify
-*
-* @return ROK     - success
-*         RFAILED - failure
-*
-******************************************************************/
-
-uint8_t BuildRicSubsActionToBeModify(RICactions_ToBeModifiedForModification_List_t *modifyActionList, uint8_t numOfActionToBeModify, ActionInfo *actionToBeModify)
-{
-   uint8_t arrIdx=0;
-   RICaction_ToBeModifiedForModification_ItemIEs_t *modifiedActionItemIe=NULLP;
-
-   modifyActionList->list.count = numOfActionToBeModify;
-   modifyActionList->list.size = modifyActionList->list.count *  sizeof(RICaction_ToBeModifiedForModification_ItemIEs_t*);
-   RIC_ALLOC(modifyActionList->list.array, modifyActionList->list.size);
-   if(!modifyActionList->list.array)
-   {
-      DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-      return RFAILED;
-   }
-
-   for(arrIdx = 0; arrIdx< modifyActionList->list.count; arrIdx++)
-   {
-      RIC_ALLOC(modifyActionList->list.array[arrIdx], sizeof(RICaction_ToBeModifiedForModification_ItemIEs_t));
-      if(!modifyActionList->list.array[arrIdx])
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         return RFAILED;
-      }
-      modifiedActionItemIe = (RICaction_ToBeModifiedForModification_ItemIEs_t*)modifyActionList->list.array[arrIdx];
-      modifiedActionItemIe->id = ProtocolIE_IDE2_id_RICaction_ToBeModifiedForModification_Item;
-      modifiedActionItemIe->criticality = CriticalityE2_ignore;
-      modifiedActionItemIe->value.present = RICaction_ToBeModifiedForModification_ItemIEs__value_PR_RICaction_ToBeModifiedForModification_Item;
-      modifiedActionItemIe->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionID = actionToBeModify[arrIdx].actionId;
-
-      /* RIC Action Definition */
-      RIC_ALLOC(modifiedActionItemIe->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition, sizeof(RICactionDefinition_t));
-      if(!modifiedActionItemIe->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         break;
-      }
-
-      if(fillRicActionDef(modifiedActionItemIe->value.choice.RICaction_ToBeModifiedForModification_Item.ricActionDefinition,\
-               actionToBeModify[arrIdx].actionId, CONFIG_MOD) != ROK)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Failed at [%s] : line [%d]", __func__, __LINE__);
-         break;
-      }
-
-   }
-   return ROK;
-}
-
-/*******************************************************************
-*
-* @brief Build Ric subscription action to be removed list
-*
-* @details
-*
-*    Function : BuildRicSubsActionToBeRemoved
-*
-*    Functionality: Build Ric subscription action to be removed list
-*
-* @params[in]
-*    RICactions_ToBeRemovedForModification_List_t to be filled
-*    Num Of Action To Be Remove 
-*    Action remove list
-*
-* @return ROK     - success
-*         RFAILED - failure
-*
-******************************************************************/
-
-uint8_t BuildRicSubsActionToBeRemoved(RICactions_ToBeRemovedForModification_List_t *removeActionList, uint8_t numOfActionToBeRemove, ActionInfo *actionToBeRemove)
-{
-   uint8_t arrIdx=0;
-   RICaction_ToBeRemovedForModification_ItemIEs_t *removeActionItemIe=NULLP;
-
-   removeActionList->list.count = numOfActionToBeRemove;
-   removeActionList->list.size = removeActionList->list.count *  sizeof(RICaction_ToBeRemovedForModification_ItemIEs_t*);
-   RIC_ALLOC(removeActionList->list.array, removeActionList->list.size);
-   if(!removeActionList->list.array)
-   {
-      DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-      return RFAILED;
-   }
-
-   for(arrIdx = 0; arrIdx< removeActionList->list.count; arrIdx++)
-   {
-      RIC_ALLOC(removeActionList->list.array[arrIdx], sizeof(RICaction_ToBeRemovedForModification_ItemIEs_t));
-      if(!removeActionList->list.array[arrIdx])
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         return RFAILED;
-      }
-      removeActionItemIe = (RICaction_ToBeRemovedForModification_ItemIEs_t*)removeActionList->list.array[arrIdx];
-      removeActionItemIe->id = ProtocolIE_IDE2_id_RICaction_ToBeRemovedForModification_Item;
-      removeActionItemIe->criticality = CriticalityE2_ignore;
-      removeActionItemIe->value.present = RICaction_ToBeRemovedForModification_ItemIEs__value_PR_RICaction_ToBeRemovedForModification_Item;
-      removeActionItemIe->value.choice.RICaction_ToBeRemovedForModification_Item.ricActionID = actionToBeRemove[arrIdx].actionId;
-   }
-   return ROK;
-}
-
-/*******************************************************************
-*
-* @brief Build Ric subscription action to be added list
-*
-* @details
-*
-*    Function : BuildRicSubsActionToBeAdded 
-*
-*    Functionality: Build Ric subscription action to be added list
-*
-* @params[in]
-*    RICactions_ToBeAddedForModification_List_t to be filled
-*    Num Of Action To Be added 
-*    Action add list
-*
-* @return ROK     - success
-*         RFAILED - failure
-*
-******************************************************************/
-
-uint8_t BuildRicSubsActionToBeAdded(RICactions_ToBeAddedForModification_List_t *addedActionList, RicSubscription **ricSubsInfo, uint8_t numOfActionToBeAdded, ActionInfo *actionToBeAdded)
-{
-   uint8_t arrIdx=0;
-   RICaction_ToBeAddedForModification_ItemIEs_t *addedActionItemIe;
-
-   addedActionList->list.count = numOfActionToBeAdded;
-   addedActionList->list.size = addedActionList->list.count *  sizeof(RICaction_ToBeAddedForModification_ItemIEs_t*);
-   RIC_ALLOC(addedActionList->list.array, addedActionList->list.size);
-   if(!addedActionList->list.array)
-   {
-      DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-      return RFAILED;
-   }
-
-   for(arrIdx = 0; arrIdx< addedActionList->list.count; arrIdx++)
-   {
-      RIC_ALLOC(addedActionList->list.array[arrIdx], sizeof(RICaction_ToBeAddedForModification_ItemIEs_t));
-      if(!addedActionList->list.array[arrIdx])
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         return RFAILED;
-      }
-      addedActionItemIe = (RICaction_ToBeAddedForModification_ItemIEs_t*)addedActionList->list.array[arrIdx];
-      addedActionItemIe->id = ProtocolIE_IDE2_id_RICaction_ToBeAddedForModification_Item;
-      addedActionItemIe->criticality = CriticalityE2_ignore;
-      addedActionItemIe->value.present = RICaction_ToBeAddedForModification_ItemIEs__value_PR_RICaction_ToBeAddedForModification_Item;
-      addedActionItemIe->value.choice.RICaction_ToBeAddedForModification_Item.ricActionID = actionToBeAdded[arrIdx].actionId;
-      
-      addedActionItemIe->value.choice.RICaction_ToBeAddedForModification_Item.ricActionType = RICactionType_report;
-
-      if(fillRicActionDef(&addedActionItemIe->value.choice.RICaction_ToBeAddedForModification_Item.ricActionDefinition, \
-      actionToBeAdded[arrIdx].actionId, CONFIG_ADD) != ROK)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Failed at [%s] : line [%d]", __func__, __LINE__);
-         break;
-      }
-      (*ricSubsInfo)->actionSequence[(*ricSubsInfo)->numOfActions].actionId =  (*ricSubsInfo)->numOfActions;
-      (*ricSubsInfo)->numOfActions++;
-   }
-   return ROK;
-}
-
-/*******************************************************************
- *
- * @brief Builds and Send the RicSubscriptionModReq
- *
- * @details
- *
- *    Function : BuildAndSendRicSubscriptionModReq
- *
- * Functionality:Builds and Send the RicSubscriptionModReq
- *
- * @params[in]
- *    Du databse
- *    Ric subs information
- *    List of ric subs action which needs to modify/add/remove
- * @return ROK     - success
- *         RFAILED - failure
- *
- ******************************************************************/
-
-uint8_t BuildAndSendRicSubscriptionModReq(DuDb *duDb, RicSubscription **ricSubsInfo, RicSubsModReq ricSubsModReq)
-{
-   uint8_t         ret = RFAILED;
-   uint8_t         elementCnt = 0;
-   uint8_t         idx = 0, cfgIdx=0;
-   asn_enc_rval_t  encRetVal;        /* Encoder return value */
-   E2AP_PDU_t                 *e2apRicMsg = NULL;
-   RICsubscriptionModificationRequest_t   *ricSubscriptionModReq;
-   RanFunction  *ranFuncDb = &duDb->ranFunction[0];
-   CmLList *subscriptionNode = NULLP;
-   
-   DU_LOG("\nINFO   -->  E2AP : Building RIC Subscription Request\n");
-
-   while(true)
-   {
-      RIC_ALLOC(e2apRicMsg, sizeof(E2AP_PDU_t));
-      if(e2apRicMsg == NULLP)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         break;
-      }
-
-      e2apRicMsg->present = E2AP_PDU_PR_initiatingMessage;
-      RIC_ALLOC(e2apRicMsg->choice.initiatingMessage, sizeof(InitiatingMessageE2_t));
-      if(e2apRicMsg->choice.initiatingMessage == NULLP)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         break;
-      }
-      e2apRicMsg->choice.initiatingMessage->procedureCode = ProcedureCodeE2_id_RICsubscriptionModification;
-      e2apRicMsg->choice.initiatingMessage->criticality = CriticalityE2_reject;
-      e2apRicMsg->choice.initiatingMessage->value.present = InitiatingMessageE2__value_PR_RICsubscriptionModificationRequest;
-
-      ricSubscriptionModReq = &e2apRicMsg->choice.initiatingMessage->value.choice.RICsubscriptionModificationRequest;
-
-      /* Increasing the elment count based on the number of configured action to  be add, mod, delete */
-      elementCnt = 2;
-      if(ricSubsModReq.numOfActionToBeAdded)
-         elementCnt++;
-      if(ricSubsModReq.numOfActionToBeModify)
-         elementCnt++;
-      if(ricSubsModReq.numOfActionToBeRemove)
-         elementCnt++;
-
-      ricSubscriptionModReq->protocolIEs.list.count = elementCnt;
-      ricSubscriptionModReq->protocolIEs.list.size  = elementCnt * sizeof(RICsubscriptionModificationRequest_IEs_t);
-
-      /* Initialize the subscription members */
-      RIC_ALLOC(ricSubscriptionModReq->protocolIEs.list.array, ricSubscriptionModReq->protocolIEs.list.size);
-      if(ricSubscriptionModReq->protocolIEs.list.array == NULLP)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-         break;
-      }
-
-      for(idx=0; idx<elementCnt; idx++)
-      {
-         RIC_ALLOC(ricSubscriptionModReq->protocolIEs.list.array[idx], sizeof(RICsubscriptionModificationRequest_IEs_t));
-         if(ricSubscriptionModReq->protocolIEs.list.array[idx] == NULLP)
-         {
-            DU_LOG("\nERROR  -->  E2AP : Memory allocation failed at [%s] : line [%d]", __func__, __LINE__);
-            break;
-         }
-      }
-      if(idx < elementCnt)
-         break;
-
-      /* Filling RIC Request Id */
-      idx = 0;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->id = ProtocolIE_IDE2_id_RICrequestID;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->criticality = CriticalityE2_reject;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->value.present =\
-                                                                      RICsubscriptionModificationRequest_IEs__value_PR_RICrequestID;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->value.choice.RICrequestID.ricRequestorID = (*ricSubsInfo)->requestId.requestorId;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->value.choice.RICrequestID.ricInstanceID =  (*ricSubsInfo)->requestId.instanceId;
-
-      /* Filling RAN Function Id */
-      idx++;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->id = ProtocolIE_IDE2_id_RANfunctionID;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->criticality = CriticalityE2_reject;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->value.present =\
-                                                                      RICsubscriptionModificationRequest_IEs__value_PR_RANfunctionID;
-      ricSubscriptionModReq->protocolIEs.list.array[idx]->value.choice.RANfunctionID = (*ricSubsInfo)->ranFuncId;
-
-      if(ricSubsModReq.numOfActionToBeRemove)
-      {
-         /* Filling RIC Subscription action to be removed */
-         idx++;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->id = ProtocolIE_IDE2_id_RICactionsToBeRemovedForModification_List;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->criticality = CriticalityE2_ignore;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->value.present = RICsubscriptionModificationRequest_IEs__value_PR_RICactions_ToBeRemovedForModification_List;
-         if(BuildRicSubsActionToBeRemoved(&ricSubscriptionModReq->protocolIEs.list.array[idx]->value.choice.RICactions_ToBeRemovedForModification_List,\
-                  ricSubsModReq.numOfActionToBeRemove, ricSubsModReq.actionToBeRemove) != ROK)
-         {
-            DU_LOG("\nERROR  -->  E2AP : Failed at [%s] : line [%d]", __func__, __LINE__);
-            break;
-         }
-      }
-      if(ricSubsModReq.numOfActionToBeModify)
-      {
-         /* Filling RIC Subscription action to be modified */
-         idx++;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->id = ProtocolIE_IDE2_id_RICactionsToBeModifiedForModification_List;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->criticality = CriticalityE2_ignore;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->value.present = RICsubscriptionModificationRequest_IEs__value_PR_RICactions_ToBeModifiedForModification_List;
-         if(BuildRicSubsActionToBeModify(&ricSubscriptionModReq->protocolIEs.list.array[idx]->value.choice.RICactions_ToBeModifiedForModification_List,\
-                  ricSubsModReq.numOfActionToBeModify, ricSubsModReq.actionToBeModify) != ROK)
-         {
-            DU_LOG("\nERROR  -->  E2AP : Failed at [%s] : line [%d]", __func__, __LINE__);
-            break;
-         }
-      }
-
-      if(ricSubsModReq.numOfActionToBeAdded)
-      {
-         /* Filling RIC Subscription action to be added */
-         idx++;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->id = ProtocolIE_IDE2_id_RICactionsToBeAddedForModification_List;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->criticality = CriticalityE2_ignore;
-         ricSubscriptionModReq->protocolIEs.list.array[idx]->value.present = RICsubscriptionModificationRequest_IEs__value_PR_RICactions_ToBeAddedForModification_List;
-         if(BuildRicSubsActionToBeAdded(&ricSubscriptionModReq->protocolIEs.list.array[idx]->value.choice.RICactions_ToBeAddedForModification_List,\
-         ricSubsInfo, ricSubsModReq.numOfActionToBeAdded, ricSubsModReq.actionToBeAdded) != ROK)
-         {
-            DU_LOG("\nERROR  -->  E2AP : Failed at [%s] : line [%d]", __func__, __LINE__);
-            break;
-         }
-      }
-
-      /* Prints the Msg formed */
-      xer_fprint(stdout, &asn_DEF_E2AP_PDU, e2apRicMsg);
-
-      memset(encBuf, 0, ENC_BUF_MAX_LEN);
-      encBufSize = 0;
-      encRetVal = aper_encode(&asn_DEF_E2AP_PDU, 0, e2apRicMsg, PrepFinalEncBuf, encBuf);
-      if(encRetVal.encoded == ENCODE_FAIL)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Could not encode RicSubscriptionModRequest structure (at %s)\n",\
-               encRetVal.failed_type ? encRetVal.failed_type->name : "unknown");
-         break;
-      }
-      else
-      {
-         DU_LOG("\nDEBUG  -->  E2AP : Created APER encoded buffer for RicSubscriptionModRequest\n");
-         for(int i=0; i< encBufSize; i++)
-         {
-            DU_LOG("%x",encBuf[i]);
-         }
-      }
-
-      /* Sending msg */
-      if(SendE2APMsg(RIC_APP_MEM_REG, RIC_POOL, duDb->duId) != ROK)
-      {
-         DU_LOG("\nERROR  -->  E2AP : Sending RIC subscription Request failed");
-         break;
-      }
-
-      ret = ROK;
-      break;
-   }
-
-   FreeRicSubscriptionModReq(e2apRicMsg);
-   return ret;
-}
-
-/*******************************************************************
- *
- * @brief Builds RicSubscriptionModReq
- *
- * @details
- *
- *    Function : BuildRicSubscriptionModReq
- *
- * Functionality:Builds the RicSubscriptionModReq
- *
- * @params[in]
- *    Du databse
- * @return void
- *
- * ****************************************************************/
-
-void BuildRicSubsModificationReq(DuDb *duDb, RicSubscription *ricSubsInfo)
-{
-   uint8_t actionToBeAdded =0;
-   uint8_t actionIdx =0, tmpActionIdx=0;
-   RicSubsModReq ricSubsModReq;
-
-   if(ricSubsInfo)
-   {
-      memset(&ricSubsModReq, 0, sizeof(RicSubsModReq));
-      for(actionIdx=0; actionIdx<ricSubsInfo->numOfActions; actionIdx++)
-      {
-         /* Change the condition based on the action required to be modiified or removed */
-         if(actionIdx%2 == 0)
-         {
-            tmpActionIdx = ricSubsModReq.numOfActionToBeModify; 
-            ricSubsModReq.actionToBeModify[tmpActionIdx].actionId = ricSubsInfo->actionSequence[actionIdx].actionId;
-            ricSubsModReq.numOfActionToBeModify++;
-         }
-         else
-         {
-            tmpActionIdx = ricSubsModReq.numOfActionToBeRemove; 
-            ricSubsModReq.actionToBeRemove[tmpActionIdx].actionId = ricSubsInfo->actionSequence[actionIdx].actionId;
-            ricSubsModReq.numOfActionToBeRemove++;
-         }
-      }
-      /* Change the value of actionToBeAdded based on the number of action required to be added */
-      actionToBeAdded =1;
-      tmpActionIdx = ricSubsInfo->numOfActions;
-      for(actionIdx=0; actionIdx<actionToBeAdded; actionIdx++)
-      {
-         ricSubsModReq.actionToBeAdded[actionIdx].actionId = tmpActionIdx;
-         ricSubsModReq.numOfActionToBeAdded++;
-         tmpActionIdx++;
-      }
-
-      if(BuildAndSendRicSubscriptionModReq(duDb, &ricSubsInfo, ricSubsModReq) != ROK)
-      {
-         DU_LOG("\nERROR  -->  E2AP : failed to build and send RIC Subscription Modification");
-         return ;
-      }
-   }
-}
-
 /*******************************************************************
 *
 * @brief Handles received E2AP message and sends back response  
index 0d7ec72..47ab8d7 100644 (file)
 #define CELL_INDEX      0
 
 #define RIC_STYLE_TYPE  1
-
-/* if config type is CONFIG_ADD then 
- * for action Id = n, RIC_ACTION_GRANULARITY_PERIOD = 100+ n*100 
- * else config type is CONFIG_MOD then
- * for action Id = n, RIC_ACTION_GRANULARITY_PERIOD =  100 +50(n+1) */ 
-#define RIC_ACTION_GRANULARITY_PERIOD(_configType, _actionId)   \
-   ((_configType == CONFIG_ADD) ?  (100 + 100 * _actionId ) : ( 100 + 50 *( _actionId +1))) 
-
+#define RIC_ACTION_GRANULARITY_PERIOD 100
 /* allocate and zero out a static buffer */
 #define RIC_ALLOC(_datPtr, _size)                                \
 {                                                               \
@@ -73,8 +66,6 @@ uint8_t BuildAndSendE2NodeConfigUpdateAck(DuDb *duDb, uint8_t transId,  E2NodeCo
 uint8_t BuildAndSendConnectionUpdate(uint32_t duId);
 uint8_t BuildAndSendE2ConnectionUpdate(uint32_t duId, E2Connection connectionInfo);
 uint8_t BuildAndSendRicSubscriptionDeleteRequest(uint32_t duId, RicSubscription *ricSubsDb);
-void BuildRicSubsModificationReq(DuDb *duDb, RicSubscription *ricSubsInfo);
-
 /**********************************************************************
          End of file
 **********************************************************************/
index a2663de..0b282de 100644 (file)
@@ -202,22 +202,6 @@ typedef struct e2NodeCfgList
    E2NodeConfigItem removedE2Node[MAX_E2_NODE_COMPONENT];
 }E2NodeConfigList;
 
-typedef struct ricSubsActionInfo
-{
-   ConfigType  configType; 
-   uint16_t    actionId;
-}RicSubsActionInfo;
-
-typedef struct ricSubsModReq
-{ 
-    uint16_t   numOfActionToBeAdded;
-    ActionInfo actionToBeAdded[MAX_RIC_ACTION]; 
-    uint16_t   numOfActionToBeModify;
-    ActionInfo actionToBeModify[MAX_RIC_ACTION]; 
-    uint16_t   numOfActionToBeRemove;
-    ActionInfo actionToBeRemove[MAX_RIC_ACTION]; 
-}RicSubsModReq;
-
 void readRicCfg();
 void cuAppInmsgHdlr(Buffer *mBuf);
 void sctpNtfyInd(CmInetSctpNotification *ntfy);