X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fdu_app%2Fdu_f1ap_msg_hdl.c;h=ad75fd191155bde3d44b2a2a4a809a02bab594e9;hb=refs%2Fchanges%2F67%2F4867%2F1;hp=cf4be454c591021bf761fbb0b067a1f0cbc031e8;hpb=cfe7ea3ab6cb69d18ed91d79c1bf66b3bc8bdc98;p=o-du%2Fl2.git diff --git a/src/du_app/du_f1ap_msg_hdl.c b/src/du_app/du_f1ap_msg_hdl.c index cf4be454c..ad75fd191 100644 --- a/src/du_app/du_f1ap_msg_hdl.c +++ b/src/du_app/du_f1ap_msg_hdl.c @@ -74,7 +74,6 @@ #include "du_f1ap_msg_hdl.h" extern DuCfgParams duCfgParam; -uint8_t ServedCellListreturn=RFAILED; uint8_t procGNBDUCfgUpdAck(F1AP_PDU_t *f1apMsg); uint8_t procDlRrcMsgTrans(F1AP_PDU_t *f1apMsg); @@ -196,7 +195,7 @@ uint8_t BuildNrcgi(NRCGI_t *nrcgi) return RFAILED; } ret = buildPlmnId(duCfgParam.srvdCellLst[0].duCellInfo.cellInfo.nrCgi.plmn,\ - &nrcgi->pLMN_Identity); // Building PLMN function + nrcgi->pLMN_Identity.buf); // Building PLMN function if(ret != ROK) { return RFAILED; @@ -452,7 +451,7 @@ uint8_t BuildServedPlmn(ServedPLMNs_List_t *srvplmn) srvplmn->list.array[0]->pLMN_Identity.size = PLMN_SIZE * sizeof(uint8_t); DU_ALLOC(srvplmn->list.array[0]->pLMN_Identity.buf, srvplmn->list.array[0]->pLMN_Identity.size); buildPlmnIdret = buildPlmnId(duCfgParam.srvdCellLst[0].duCellInfo.cellInfo.nrCgi.plmn,\ - &srvplmn->list.array[0]->pLMN_Identity); + srvplmn->list.array[0]->pLMN_Identity.buf); if(buildPlmnIdret!= ROK) { return RFAILED; @@ -959,23 +958,21 @@ void FreeF1SetupReq(F1AP_PDU_t *f1apMsg) { if(f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_ID.buf != NULLP) { + DU_FREE(f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_ID.buf,\ + f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_ID.size); idx1++; if(f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_Name.buf != NULLP) { - idx1=4; - if(ServedCellListreturn == ROK) - { - FreeRrcVer(&f1SetupReq->protocolIEs.list.array[idx1]->value.choice.RRC_Version); - } - idx1--; - FreeServedCellList(&f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_Served_Cells_List); - idx1--; DU_FREE(f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_Name.buf, - strlen((char *)duCfgParam.duName)); + strlen((char *)duCfgParam.duName)); + + idx1++; + FreeServedCellList(&f1SetupReq->protocolIEs.list.array[idx1]->value.\ + choice.GNB_DU_Served_Cells_List); + + idx1++; + FreeRrcVer(&f1SetupReq->protocolIEs.list.array[idx1]->value.choice.RRC_Version); } - idx1--; - DU_FREE(f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_ID.buf,\ - f1SetupReq->protocolIEs.list.array[idx1]->value.choice.GNB_DU_ID.size); } } for(idx=0; idxprotocolIEs.list.count; idx++) @@ -1123,9 +1120,8 @@ uint8_t BuildAndSendF1SetupReq() f1SetupReq->protocolIEs.list.array[idx2]->value.present = \ F1SetupRequestIEs__value_PR_GNB_DU_Served_Cells_List; duServedCell = &f1SetupReq->protocolIEs.list.\ - array[idx2]->value.choice.GNB_DU_Served_Cells_List; - ServedCellListreturn = BuildServedCellList(duServedCell); - if(ServedCellListreturn != ROK) + array[idx2]->value.choice.GNB_DU_Served_Cells_List; + if((BuildServedCellList(duServedCell)) != ROK) { break; } @@ -1318,7 +1314,7 @@ uint8_t BuildAndSendDUConfigUpdate() break; } buildPlmnId(duCfgParam.srvdCellLst[0].duCellInfo.cellInfo.nrCgi.plmn,\ - &modifyItem->oldNRCGI.pLMN_Identity); + modifyItem->oldNRCGI.pLMN_Identity.buf); /*nRCellIdentity*/ modifyItem->oldNRCGI.nRCellIdentity.size = 5*sizeof(uint8_t); @@ -1344,7 +1340,7 @@ uint8_t BuildAndSendDUConfigUpdate() break; } buildPlmnId(duCfgParam.srvdCellLst[0].duCellInfo.cellInfo.nrCgi.plmn,\ - &modifyItem->served_Cell_Information.nRCGI.pLMN_Identity); + modifyItem->served_Cell_Information.nRCGI.pLMN_Identity.buf); modifyItem->served_Cell_Information.nRCGI.nRCellIdentity.size =5*sizeof(uint8_t); DU_ALLOC(modifyItem->served_Cell_Information.nRCGI.nRCellIdentity.buf,\ modifyItem->served_Cell_Information.nRCGI.nRCellIdentity.size); @@ -1393,7 +1389,7 @@ uint8_t BuildAndSendDUConfigUpdate() break; } buildPlmnId(duCfgParam.srvdCellLst[0].duCellInfo.cellInfo.plmn[0],\ - &modifyItem->served_Cell_Information.servedPLMNs.list.array[0]->pLMN_Identity); + modifyItem->served_Cell_Information.servedPLMNs.list.array[0]->pLMN_Identity.buf); DU_ALLOC(modifyItem->served_Cell_Information.servedPLMNs.list.\ array[0]->iE_Extensions,sizeof(ProtocolExtensionContainer_4624P3_t)); if(modifyItem->served_Cell_Information.servedPLMNs.list.\ @@ -2457,17 +2453,20 @@ uint8_t BuildRlcBearerToAddModList(struct CellGroupConfigRrc__rlc_BearerToAddMod } idx = 0; - rlcBearerList->list.array[idx]->logicalChannelIdentity = RLC_LCID; + rlcBearerList->list.array[idx]->logicalChannelIdentity = SRB1_LCID; - DU_ALLOC(rlcBearerList->list.array[idx]->servedRadioBearer, sizeof(struct RLC_BearerConfig__servedRadioBearer)); + DU_ALLOC(rlcBearerList->list.array[idx]->servedRadioBearer, \ + sizeof(struct RLC_BearerConfig__servedRadioBearer)); if(!rlcBearerList->list.array[idx]->servedRadioBearer) { DU_LOG("\nF1AP : Memory allocation failure in BuildRlcBearerToAddModList"); return RFAILED; } - rlcBearerList->list.array[idx]->servedRadioBearer->present = RLC_BearerConfig__servedRadioBearer_PR_srb_Identity; - rlcBearerList->list.array[idx]->servedRadioBearer->choice.srb_Identity = SRB_ID_1; + rlcBearerList->list.array[idx]->servedRadioBearer->present = \ + RLC_BearerConfig__servedRadioBearer_PR_srb_Identity; + rlcBearerList->list.array[idx]->servedRadioBearer->choice.srb_Identity = \ + SRB1_LCID; rlcBearerList->list.array[idx]->reestablishRLC = NULLP; rlcBearerList->list.array[idx]->rlc_Config = NULLP; @@ -2485,7 +2484,8 @@ uint8_t BuildRlcBearerToAddModList(struct CellGroupConfigRrc__rlc_BearerToAddMod } rlcBearerList->list.array[idx]->mac_LogicalChannelConfig = NULLP; - DU_ALLOC(rlcBearerList->list.array[idx]->mac_LogicalChannelConfig, sizeof(struct LogicalChannelConfig)); + DU_ALLOC(rlcBearerList->list.array[idx]->mac_LogicalChannelConfig, \ + sizeof(struct LogicalChannelConfig)); if(!rlcBearerList->list.array[idx]->mac_LogicalChannelConfig) { DU_LOG("\nF1AP : Memory allocation failure in BuildRlcBearerToAddModList"); @@ -6027,7 +6027,7 @@ void F1APMsgHdlr(Buffer *mBuf) ODU_PRINT_MSG(mBuf, 0,0); /* Copy mBuf into char array to decode it */ - ODU_FIND_MSG_LEN(mBuf, &recvBufLen); + ODU_GET_MSG_LEN(mBuf, &recvBufLen); DU_ALLOC(recvBuf, (Size)recvBufLen); if(recvBuf == NULLP)