Replaced old SSI function with new macros jira id - ODUHIGH-212
[o-du/l2.git] / src / du_app / du_f1ap_msg_hdl.c
index 0f54288..d63c8ad 100644 (file)
 #include "legtp.h"
 #include "lkw.x"
 #include "lrg.x"
+#include "du_app_mac_inf.h"
 #include "du_cfg.h"
+#include "du_app_rlc_inf.h"
 #include "E2AP-PDU.h"
-#include "du_mgr.h"
 #include "du_mgr_main.h"
-#include "du_cell_mgr.h"
-#include "du_f1ap_msg_hdl.h"
+#include "du_utils.h"
 #include "GNB-DU-System-Information.h"
 #include "CellGroupConfigRrc.h"
 #include "MAC-CellGroupConfig.h"
 #include<ProtocolIE-Field.h>
 #include "ProtocolExtensionField.h"
 #include "F1AP-PDU.h"
+#include "odu_common_codec.h"
+#include "du_mgr.h"
+#include "du_f1ap_msg_hdl.h"
 
-S16 procGNBDUCfgUpdAck(F1AP_PDU_t *f1apMsg);
+uint8_t procGNBDUCfgUpdAck(F1AP_PDU_t *f1apMsg);
 uint8_t procDlRrcMsgTrans(F1AP_PDU_t *f1apMsg);
 void FreeDUConfigUpdate(F1AP_PDU_t *f1apDuCfg);
 extern char encBuf[ENC_BUF_MAX_LEN];
 extern DuCfgParams duCfgParam;
 uint8_t BuildULTnlInforet=RFAILED;
 uint8_t ServedCellListreturn=RFAILED;
-S16 sctpSend(Buffer *mBuf, U8 itfType);
+uint8_t sctpSend(Buffer *mBuf, U8 itfType);
 uint8_t Nrcgiret=RFAILED;
 uint8_t SplCellListret=RFAILED;
 uint8_t SRBSetupret=RFAILED;
@@ -683,26 +686,26 @@ uint8_t SendF1APMsg(Region region, Pool pool)
 {
    Buffer *mBuf;
 
-   if(SGetMsg(region, pool, &mBuf) == ROK)
+   if(ODU_GET_MSG(region, pool, &mBuf) == ROK)
    {
-      if(SAddPstMsgMult((Data *)encBuf, encBufSize, mBuf) == ROK)
+      if(ODU_ADD_POST_MSG_MULT((Data *)encBuf, encBufSize, mBuf) == ROK)
       {
-         SPrntMsg(mBuf, 0,0);
+         ODU_PRINT_MSG(mBuf, 0,0);
  
          if(sctpSend(mBuf, F1_INTERFACE) != ROK)
          {
             DU_LOG("\nF1AP : SCTP Send failed");
-            SPutMsg(mBuf);
+            ODU_PUT_MSG(mBuf);
             return RFAILED;
          }
       }
       else
       {
-         DU_LOG("\nF1AP : SAddPstMsgMult failed");
-         SPutMsg(mBuf);
+         DU_LOG("\nF1AP : ODU_ADD_POST_MSG_MULT failed");
+         ODU_PUT_MSG(mBuf);
          return RFAILED;
       }
-      SPutMsg(mBuf);
+      ODU_PUT_MSG(mBuf);
    }
    else
    {
@@ -1145,7 +1148,7 @@ uint8_t BuildAndSendF1SetupReq()
       xer_fprint(stdout, &asn_DEF_F1AP_PDU, f1apMsg);
 
       /* Encode the F1SetupRequest type as APER */
-      cmMemset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
+      memset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
       encBufSize = 0;
       encRetVal = aper_encode(&asn_DEF_F1AP_PDU, 0, f1apMsg, PrepFinalEncBuf,\
          encBuf);
@@ -1175,7 +1178,7 @@ uint8_t BuildAndSendF1SetupReq()
 
                ret=ROK;
       break;
-   }while(1);
+   }while(true);
 
        FreeF1SetupReq(f1apMsg);
        
@@ -1219,7 +1222,7 @@ uint8_t BuildAndSendDUConfigUpdate()
    uint8_t ret= RFAILED;
    uint8_t i;
 
-       while(1)
+       while(true)
        {
            DU_LOG("\nF1AP : Building DU config update\n");
                 /* Allocate the memory for F1DuCfg */
@@ -1621,7 +1624,7 @@ uint8_t BuildAndSendDUConfigUpdate()
        xer_fprint(stdout, &asn_DEF_F1AP_PDU, f1apDuCfg);
    
        /* Encode the DU Config Update type as APER */
-       cmMemset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
+       memset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
        encBufSize = 0;
        encRetVal = aper_encode(&asn_DEF_F1AP_PDU, 0, f1apDuCfg, PrepFinalEncBuf, encBuf);
 
@@ -1932,6 +1935,12 @@ void FreeULRRCMessageTransfer( F1AP_PDU_t *f1apMsg)
                  {
                      if(ulRRCMsg->protocolIEs.list.array[idx1] != NULLP)
                      {
+                        if(ulRRCMsg->protocolIEs.list.array[idx1]->value.present ==
+                           ULRRCMessageTransferIEs__value_PR_RRCContainer)
+                        {
+                           DU_FREE(ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf,
+                              ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size);
+                        }
                          DU_FREE(ulRRCMsg->protocolIEs.list.array[idx1],sizeof(ULRRCMessageTransferIEs_t));
                      }
                  }
@@ -1959,124 +1968,135 @@ void FreeULRRCMessageTransfer( F1AP_PDU_t *f1apMsg)
  *         RFAILED - failure
  *
  * ****************************************************************/
-uint8_t BuildAndSendULRRCMessageTransfer()
+uint8_t BuildAndSendULRRCMessageTransfer(DuUeCb  ueCb, uint8_t lcId, \
+    uint16_t msgLen, uint8_t *rrcMsg)
 {
-       uint8_t   elementCnt;
-       uint8_t   idx1;
-       uint8_t   idx;
-       F1AP_PDU_t                              *f1apMsg = NULL;
+   uint8_t   elementCnt;
+   uint8_t   idx1;
+   uint8_t   idx;
+   F1AP_PDU_t                  *f1apMsg = NULL;
    ULRRCMessageTransfer_t      *ulRRCMsg;
-       asn_enc_rval_t                          encRetVal;        /* Encoder return value */
+   asn_enc_rval_t              encRetVal;        /* Encoder return value */
    uint8_t ret =RFAILED;
-       while(1)
-       {
-          DU_LOG("\n F1AP : Building UL RRC Message Transfer Message\n");
+   while(true)
+   {
+      DU_LOG("\n F1AP : Building UL RRC Message Transfer Message\n");
 
-          DU_ALLOC(f1apMsg, sizeof(F1AP_PDU_t));
-          if(f1apMsg == NULLP)
-          {
-                  DU_LOG(" F1AP : Memory allocation for F1AP-PDU failed");
-                       break;
-          }
+      DU_ALLOC(f1apMsg, sizeof(F1AP_PDU_t));
+      if(f1apMsg == NULLP)
+      {
+        DU_LOG(" F1AP : Memory allocation for F1AP-PDU failed");
+        break;
+      }
 
-          f1apMsg->present = F1AP_PDU_PR_initiatingMessage;
-       DU_ALLOC(f1apMsg->choice.initiatingMessage,sizeof(InitiatingMessage_t));
-          if(f1apMsg->choice.initiatingMessage == NULLP)
-          {
-                  DU_LOG(" F1AP : Memory allocation for        F1AP-PDU failed");
-                       break;
-          }
-       f1apMsg->choice.initiatingMessage->procedureCode = \
-                                                                                               ProcedureCode_id_ULRRCMessageTransfer;
-          f1apMsg->choice.initiatingMessage->criticality = Criticality_ignore;
-          f1apMsg->choice.initiatingMessage->value.present = \
-                                                               InitiatingMessage__value_PR_ULRRCMessageTransfer;
-          ulRRCMsg =
-                   &f1apMsg->choice.initiatingMessage->value.choice.ULRRCMessageTransfer;
-          elementCnt = 3;
-       ulRRCMsg->protocolIEs.list.count = elementCnt;
-          ulRRCMsg->protocolIEs.list.size = \
-                                                                       elementCnt * sizeof(ULRRCMessageTransferIEs_t *);
-
-           /* Initialize the F1Setup members */
-          DU_ALLOC(ulRRCMsg->protocolIEs.list.array, ulRRCMsg->protocolIEs.list.size);
-          if(ulRRCMsg->protocolIEs.list.array == NULLP)
-          {
-                   DU_LOG(" F1AP : Memory allocation for UL RRC MessageTransferIEs failed");
-                        break;
-       }
-          for(idx=0; idx<elementCnt; idx++)
-          {
-                  DU_ALLOC(ulRRCMsg->protocolIEs.list.array[idx],sizeof(ULRRCMessageTransferIEs_t));
-               if(ulRRCMsg->protocolIEs.list.array[idx] == NULLP)
-                  {
-                          break;
-                  }
-          }
+      f1apMsg->present = F1AP_PDU_PR_initiatingMessage;
+      DU_ALLOC(f1apMsg->choice.initiatingMessage,sizeof(InitiatingMessage_t));
+      if(f1apMsg->choice.initiatingMessage == NULLP)
+      {
+        DU_LOG(" F1AP : Memory allocation for  F1AP-PDU failed");
+        break;
+      }
+      f1apMsg->choice.initiatingMessage->procedureCode = ProcedureCode_id_ULRRCMessageTransfer;
+      f1apMsg->choice.initiatingMessage->criticality = Criticality_ignore;
+      f1apMsg->choice.initiatingMessage->value.present = \
+       InitiatingMessage__value_PR_ULRRCMessageTransfer;
+      ulRRCMsg =
+        &f1apMsg->choice.initiatingMessage->value.choice.ULRRCMessageTransfer;
+      elementCnt = 4;
+      ulRRCMsg->protocolIEs.list.count = elementCnt;
+      ulRRCMsg->protocolIEs.list.size = \
+       elementCnt * sizeof(ULRRCMessageTransferIEs_t *);
 
-          idx1 = 0;
+      /* Initialize the F1Setup members */
+      DU_ALLOC(ulRRCMsg->protocolIEs.list.array, ulRRCMsg->protocolIEs.list.size);
+      if(ulRRCMsg->protocolIEs.list.array == NULLP)
+      {
+        DU_LOG(" F1AP : Memory allocation for UL RRC MessageTransferIEs failed");
+        break;
+      }
+      for(idx=0; idx<elementCnt; idx++)
+      {
+        DU_ALLOC(ulRRCMsg->protocolIEs.list.array[idx],sizeof(ULRRCMessageTransferIEs_t));
+        if(ulRRCMsg->protocolIEs.list.array[idx] == NULLP)
+        {
+           break;
+        }
+      }
 
-           /*GNB CU UE F1AP ID*/
-          ulRRCMsg->protocolIEs.list.array[idx1]->id   = \
-                                                                                ProtocolIE_ID_id_gNB_CU_UE_F1AP_ID;
-          ulRRCMsg->protocolIEs.list.array[idx1]->criticality  =       Criticality_reject;
-          ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
-                               ULRRCMessageTransferIEs__value_PR_GNB_CU_UE_F1AP_ID;
-       ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.GNB_CU_UE_F1AP_ID = CU_ID;
-
-          /*GNB DU UE F1AP ID*/
-          idx1++;
-       ulRRCMsg->protocolIEs.list.array[idx1]->id      = \
-                                                                                ProtocolIE_ID_id_gNB_DU_UE_F1AP_ID;
-          ulRRCMsg->protocolIEs.list.array[idx1]->criticality  =       Criticality_reject;
-          ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
-                               ULRRCMessageTransferIEs__value_PR_GNB_DU_UE_F1AP_ID;
-          ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.GNB_DU_UE_F1AP_ID = DU_ID;
-
-          /*SRBID*/
-          idx1++;
-          ulRRCMsg->protocolIEs.list.array[idx1]->id   = \
-                                                                                                                ProtocolIE_ID_id_SRBID;
-          ulRRCMsg->protocolIEs.list.array[idx1]->criticality  =       Criticality_reject;
-          ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
-                                                               ULRRCMessageTransferIEs__value_PR_SRBID;
-          ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.SRBID = UL_SRBID;
-
-          /*RRCContainer*/
-          //YET TO FILL
-
-          xer_fprint(stdout, &asn_DEF_F1AP_PDU, f1apMsg);
-
-          /* Encode the F1SetupRequest type as APER */
-          cmMemset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
-          encBufSize = 0;
-          encRetVal = aper_encode(&asn_DEF_F1AP_PDU, 0, f1apMsg, PrepFinalEncBuf,\
-                       encBuf);
-          /* Encode results */
-          if(encRetVal.encoded == ENCODE_FAIL)
-          {
-                    DU_LOG( "\n F1AP : Could not encode ULRRCMessageTransfer structure (at %s)\n",\
-                               encRetVal.failed_type ? encRetVal.failed_type->name : "unknown");
-                         break;
-          }
-          else
-          {
-                   DU_LOG("\n F1AP : Created APER encoded buffer for ULRRCMessageTransfer\n");
-                   for(int i=0; i< encBufSize; i++)
-                   {
-                            printf("%x",encBuf[i]);
-                   }
-          }
+      idx1 = 0;
+
+      /*GNB CU UE F1AP ID*/
+      ulRRCMsg->protocolIEs.list.array[idx1]->id = ProtocolIE_ID_id_gNB_CU_UE_F1AP_ID;
+      ulRRCMsg->protocolIEs.list.array[idx1]->criticality = Criticality_reject;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
+       ULRRCMessageTransferIEs__value_PR_GNB_CU_UE_F1AP_ID;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.GNB_CU_UE_F1AP_ID = ueCb.gnbCuUeF1apId;
+
+      /*GNB DU UE F1AP ID*/
+      idx1++;
+      ulRRCMsg->protocolIEs.list.array[idx1]->id = ProtocolIE_ID_id_gNB_DU_UE_F1AP_ID;
+      ulRRCMsg->protocolIEs.list.array[idx1]->criticality = Criticality_reject;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
+         ULRRCMessageTransferIEs__value_PR_GNB_DU_UE_F1AP_ID;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.GNB_DU_UE_F1AP_ID = ueCb.gnbDuUeF1apId;
+
+      /*SRBID*/
+      idx1++;
+      ulRRCMsg->protocolIEs.list.array[idx1]->id = ProtocolIE_ID_id_SRBID;
+      ulRRCMsg->protocolIEs.list.array[idx1]->criticality = Criticality_reject;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
+       ULRRCMessageTransferIEs__value_PR_SRBID;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.SRBID = lcId;
+
+      /*RRCContainer*/
+      idx1++;
+      ulRRCMsg->protocolIEs.list.array[idx1]->id  = ProtocolIE_ID_id_RRCContainer;
+      ulRRCMsg->protocolIEs.list.array[idx1]->criticality = Criticality_reject;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.present = \
+         ULRRCMessageTransferIEs__value_PR_RRCContainer;
+      ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size = msgLen;
+      DU_ALLOC(ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf,
+         ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size)
+      if(!ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf)
+      {
+         DU_LOG(" F1AP : Memory allocation for BuildAndSendULRRCMessageTransfer failed");
+         break;
+      }
+      memcpy(ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf, \
+         rrcMsg, ulRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size);
 
-          /* Sending  msg  */
-          if(SendF1APMsg(DU_APP_MEM_REGION,DU_POOL)    !=      ROK)
-          {
-                   DU_LOG("\n F1AP : Sending   UL RRC Message Transfer Failed");
-                        break;
-               }
+      xer_fprint(stdout, &asn_DEF_F1AP_PDU, f1apMsg);
+
+      /* Encode the F1SetupRequest type as APER */
+      memset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
+      encBufSize = 0;
+      encRetVal = aper_encode(&asn_DEF_F1AP_PDU, 0, f1apMsg, PrepFinalEncBuf,\
+           encBuf);
+      /* Encode results */
+      if(encRetVal.encoded == ENCODE_FAIL)
+      {
+        DU_LOG( "\n F1AP : Could not encode ULRRCMessageTransfer structure (at %s)\n",\
+              encRetVal.failed_type ? encRetVal.failed_type->name : "unknown");
+        break;
+      }
+      else
+      {
+        DU_LOG("\n F1AP : Created APER encoded buffer for ULRRCMessageTransfer\n");
+        for(int i=0; i< encBufSize; i++)
+        {
+           printf("%x",encBuf[i]);
+        }
+      }
+
+      /* Sending  msg  */
+      if(SendF1APMsg(DU_APP_MEM_REGION,DU_POOL)        !=      ROK)
+      {
+        DU_LOG("\n F1AP : Sending      UL RRC Message Transfer Failed");
+        break;
+      }
       ret = ROK;
-               break;
-       }
+      break;
+   }
    FreeULRRCMessageTransfer(f1apMsg);
 
        return ret;
@@ -2508,10 +2528,11 @@ struct PDCCH_Config__controlResourceSetToAddModList *controlRSetList
 {
    uint8_t idx;
    uint8_t elementCnt;
-       uint8_t numBytes;
-       uint8_t byteIdx;
-       uint8_t bitsUnused;
+   uint8_t numBytes, bitsUnused;
    struct ControlResourceSet *controlRSet;
+   uint8_t freqDomainResource[FREQ_DOM_RSRC_SIZE] = {0};
+   uint8_t coreset0EndPrb, coreset1StartPrb, coreset1NumPrb;
+
 
    elementCnt = 1;
    controlRSetList->list.count = elementCnt;
@@ -2528,7 +2549,7 @@ struct PDCCH_Config__controlResourceSetToAddModList *controlRSetList
 
    for(idx = 0; idx < elementCnt; idx++)
    {
-          controlRSetList->list.array[idx] = NULLP;
+      controlRSetList->list.array[idx] = NULLP;
       DU_ALLOC(controlRSetList->list.array[idx], sizeof(struct ControlResourceSet));
       if(!controlRSetList->list.array[idx])
       {
@@ -2547,7 +2568,7 @@ struct PDCCH_Config__controlResourceSetToAddModList *controlRSetList
         * 3 LSBs unsued
         * Bit string stored ff0000000000
         */
-       numBytes = 6;
+   numBytes = 6;
    bitsUnused = 3;
    controlRSet->frequencyDomainResources.size = numBytes * sizeof(uint8_t);
 
@@ -2559,13 +2580,15 @@ struct PDCCH_Config__controlResourceSetToAddModList *controlRSetList
           DU_LOG("\nF1AP : Memory allocation failed in BuildControlRSetToAddModList");
                return RFAILED;
    }
-   byteIdx = 0;
-       controlRSet->frequencyDomainResources.buf[byteIdx] = PDCCH_FREQ_DOM_RSRC; /* setting 8 MSBs i.e. ff */
-   for(byteIdx = 1; byteIdx < numBytes; byteIdx++)
-       {
-          controlRSet->frequencyDomainResources.buf[byteIdx] = 0;
-       }
-       controlRSet->frequencyDomainResources.bits_unused = bitsUnused;
+
+   memset(controlRSet->frequencyDomainResources.buf, 0, FREQ_DOM_RSRC_SIZE);
+   coreset0EndPrb = CORESET0_END_PRB;
+   coreset1StartPrb = coreset0EndPrb + 6;
+   coreset1NumPrb = CORESET1_NUM_PRB;
+   /* calculate the PRBs */
+   schAllocFreqDomRscType0(((coreset1StartPrb)/6), (coreset1NumPrb/6), freqDomainResource);
+   memcpy(controlRSet->frequencyDomainResources.buf, freqDomainResource, FREQ_DOM_RSRC_SIZE);
+   controlRSet->frequencyDomainResources.bits_unused = bitsUnused;
 
    controlRSet->duration = PDCCH_CTRL_RSRC_SET_ONE_DURATION;
    controlRSet->cce_REG_MappingType.present = \
@@ -4879,7 +4902,7 @@ uint8_t BuildDuToCuRrcContainer(DUtoCURRCContainer_t *duToCuRrcContainer)
        asn_enc_rval_t        encRetVal;
        uint8_t               ret = RFAILED;
 
-       while(1)
+       while(true)
        {
                cellGrpCfg.cellGroupId = CELL_GRP_ID;
 
@@ -4943,7 +4966,7 @@ uint8_t BuildDuToCuRrcContainer(DUtoCURRCContainer_t *duToCuRrcContainer)
 
                /* encode cellGrpCfg into duToCuRrcContainer */
                xer_fprint(stdout, &asn_DEF_CellGroupConfigRrc, &cellGrpCfg);
-               cmMemset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
+               memset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
                encBufSize = 0;
                encRetVal = aper_encode(&asn_DEF_CellGroupConfigRrc, 0, &cellGrpCfg, PrepFinalEncBuf, encBuf);
                /* Encode results */
@@ -4995,7 +5018,7 @@ uint8_t BuildDuToCuRrcContainer(DUtoCURRCContainer_t *duToCuRrcContainer)
  *
  * ****************************************************************/
 uint8_t BuildAndSendInitialRrcMsgTransfer(uint32_t gnbDuUeF1apId, uint16_t crnti,
-               uint8_t *rrcContainer)
+       uint16_t rrcContSize, uint8_t *rrcContainer)
 {
    uint8_t   ret;
        uint8_t   elementCnt;
@@ -5006,7 +5029,7 @@ uint8_t BuildAndSendInitialRrcMsgTransfer(uint32_t gnbDuUeF1apId, uint16_t crnti
        InitialULRRCMessageTransfer_t *initULRRCMsg=NULLP;
    asn_enc_rval_t                encRetVal;
        bool  checkvar=false;
-       while(1)
+       while(true)
        {
             DU_LOG("\n F1AP : Building RRC Setup Request\n");
                  DU_ALLOC(f1apMsg, sizeof(F1AP_PDU_t));
@@ -5092,18 +5115,17 @@ uint8_t BuildAndSendInitialRrcMsgTransfer(uint32_t gnbDuUeF1apId, uint16_t crnti
                        initULRRCMsg->protocolIEs.list.array[idx1]->value.present =\
                                 InitialULRRCMessageTransferIEs__value_PR_RRCContainer;
                                                                
-                       initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size =\
-                                                     strlen((const char*)rrcContainer);
-         DU_ALLOC(initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf,
-                                       initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size)
+                       initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size = rrcContSize;
+                       DU_ALLOC(initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf,
+                             initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size)
                        if(!initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf)
                        {
-                     DU_LOG(" F1AP : Memory allocation for RRCSetupRequestMessageTransferIEs failed");
+                          DU_LOG(" F1AP : Memory allocation for RRCSetupRequestMessageTransferIEs failed");
                                break;
 
                        }
-         memcpy(initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf, rrcContainer,
-                                       initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size);
+                       memcpy(initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.buf, rrcContainer,
+                             initULRRCMsg->protocolIEs.list.array[idx1]->value.choice.RRCContainer.size);
 
 
                        /*DUtoCURRCContainer*/
@@ -5123,7 +5145,7 @@ uint8_t BuildAndSendInitialRrcMsgTransfer(uint32_t gnbDuUeF1apId, uint16_t crnti
                        xer_fprint(stdout, &asn_DEF_F1AP_PDU, f1apMsg);
 
                        /* Encode the F1SetupRequest type as APER */
-                       cmMemset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
+                       memset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
                        encBufSize = 0;
                        encRetVal = aper_encode(&asn_DEF_F1AP_PDU, 0, f1apMsg, PrepFinalEncBuf, encBuf);
                        /* Encode results */
@@ -6049,7 +6071,7 @@ uint8_t BuildAndSendUESetReq()
        asn_enc_rval_t                                          encRetVal;        /* Encoder return value */
    uint8_t ret= RFAILED;
        uint8_t ret1;
-       while(1)
+       while(true)
        {
            DU_LOG("\n F1AP : Building UE Context Setup Request\n");
 
@@ -6199,7 +6221,7 @@ uint8_t BuildAndSendUESetReq()
             xer_fprint(stdout, &asn_DEF_F1AP_PDU, f1apMsg);
 
             /* Encode the F1SetupRequest type as APER */
-            cmMemset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
+            memset((uint8_t *)encBuf, 0, ENC_BUF_MAX_LEN);
             encBufSize = 0;
             encRetVal = aper_encode(&asn_DEF_F1AP_PDU, 0, f1apMsg, PrepFinalEncBuf,\
                        encBuf);
@@ -6261,16 +6283,18 @@ void F1APMsgHdlr(Buffer *mBuf)
    F1AP_PDU_t f1apasnmsg ;
  
    DU_LOG("\nF1AP : Received F1AP message buffer");
-   SPrntMsg(mBuf, 0,0);
+   ODU_PRINT_MSG(mBuf, 0,0);
  
    /* Copy mBuf into char array to decode it */
-   SFndLenMsg(mBuf, &recvBufLen);
-   if(SGetSBuf(DFLT_REGION, DFLT_POOL, (Data **)&recvBuf, (Size)recvBufLen) != ROK)
+   ODU_FIND_MSG_LEN(mBuf, &recvBufLen);
+   DU_ALLOC(recvBuf, (Size)recvBufLen);
+
+   if(recvBuf == NULLP)
    {
       DU_LOG("\nF1AP : Memory allocation failed");
       return;
    }
-   if(SCpyMsgFix(mBuf, 0, recvBufLen, (Data *)recvBuf, &copyCnt) != ROK)
+   if(ODU_COPY_MSG_TO_FIX_BUF(mBuf, 0, recvBufLen, (Data *)recvBuf, &copyCnt) != ROK)
    {
       DU_LOG("\nF1AP : Failed while copying %d", copyCnt);
       return;
@@ -6287,7 +6311,8 @@ void F1APMsgHdlr(Buffer *mBuf)
    memset(f1apMsg, 0, sizeof(F1AP_PDU_t));
  
    rval = aper_decode(0, &asn_DEF_F1AP_PDU, (void **)&f1apMsg, recvBuf, recvBufLen, 0, 0);
-   SPutSBuf(DFLT_REGION, DFLT_POOL, (Data *)recvBuf, (Size)recvBufLen);
+   DU_FREE(recvBuf, (Size)recvBufLen);
+
    if(rval.code == RC_FAIL || rval.code == RC_WMORE)
    {
       DU_LOG("\nF1AP : ASN decode failed");