- if(cellAccessInfo->plmn_IdentityList.list.array[idx]!=NULLP)
- {
- plmnIdInfo =
- &cellAccessInfo->plmn_IdentityList.list.array[idx]->plmn_IdentityList;
-
- if(plmnIdInfo->list.array !=NULLP)
- {
- if(!plmnIdInfo->list.array[idx])
- {
- if(!plmnIdInfo->list.array[idx]->mcc)
- {
- if(!(plmnIdInfo->list.array[idx]->mcc->list.array))
- {
- if(!plmnIdInfo->list.array[idx]->mnc.list.array)
- {
- /*Free Tracking Area Code */
- if(!cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode)
- {
- /*Free RANAC */
- if(!cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode->buf)
- {
- /* Free CellIdentity */
- if(!cellAccessInfo->plmn_IdentityList.list.array[idx]->ranac)
- {
- cellIdentity
- =&cellAccessInfo->plmn_IdentityList.\
- list.array[idx]->cellIdentity;
- if(!cellIdentity->buf)
- {
- /*Free Connection Establish Failure Control */
- if(!sib1Msg->connEstFailureControl)
- {
- /*Free Serving Cell Config Common */
- if(!sib1Msg->si_SchedulingInfo)
- {
- /* Free Serving Cell Config Common* */
- if(!sib1Msg->servingCellConfigCommon)
- {
- /*Free BuildServCellCfgCommonSib*/
- FreeServCellCfgCommonSib(\
- sib1Msg->servingCellConfigCommon);
-
- DU_FREE(sib1Msg->servingCellConfigCommon,
- sizeof(ServingCellConfigCommonSIB_t));
- }
-
- DU_FREE(sib1Msg->si_SchedulingInfo,
- sizeof(SI_SchedulingInfo_t));
- }
-
- DU_FREE(sib1Msg->connEstFailureControl,
- sizeof(ConnEstFailureControl_t));
- }
- DU_FREE(cellIdentity->buf,cellIdentity->size);
-
- }
- DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx]->ranac, sizeof(RAN_AreaCode_t));
-
- }
- DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode->buf,\
- cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode->size);
-
- }
- DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode\
- , sizeof(TrackingAreaCode_t));
- }
-
- for(idx2=0; idx2<plmnIdInfo->list.array[idx1]->mnc.list.count; idx2++)
- {
- if(!plmnIdInfo->list.array[idx2]->mnc.list.array[idx2])
- {
- DU_FREE(plmnIdInfo->list.array[idx2]->mnc.list.array[idx2],
- sizeof(MCC_MNC_Digit_t));
- }
- }
- DU_FREE(plmnIdInfo->list.array[idx]->mnc.list.array,
- plmnIdInfo->list.array[idx1]->mnc.list.size);
- }
-
- for(idx1=0; idx1<plmnIdInfo->list.array[idx]->mcc->list.count; idx1++)
- {
- if(plmnIdInfo->list.array[idx]->mcc->list.array[idx1]!=NULLP)
- {
- DU_FREE(plmnIdInfo->list.array[idx]->mcc->list.array[idx1],\
- sizeof(MCC_MNC_Digit_t));
- }
-
- }
- DU_FREE(plmnIdInfo->list.array[idx]->mcc->list.array,\
- plmnIdInfo->list.array[idx]->mcc->list.size)
- }
- DU_FREE(plmnIdInfo->list.array[idx]->mcc,sizeof(MCC_t));
- }
- }
- for(idx1=0; idx1<plmnIdInfo->list.count; idx1++)
- {
- if(!(plmnIdInfo->list.array[idx1]))
- {
- DU_FREE(plmnIdInfo->list.array[idx1],
- sizeof(PLMN_IdentitY_t));
- }
- }
- DU_FREE(plmnIdInfo->list.array, plmnIdInfo->list.size);
- }
- }
- for(idx=0; idx<cellAccessInfo->plmn_IdentityList.list.count; idx++)
- {
- if(cellAccessInfo->plmn_IdentityList.list.array[idx]!=NULLP)
- {
- DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx],
- sizeof(PLMN_IdentityInfo_t));
- }
- }
- DU_FREE(cellAccessInfo->plmn_IdentityList.list.array,
- cellAccessInfo->plmn_IdentityList.list.size);
+ if(cellAccessInfo->plmn_IdentityList.list.array[idx]!=NULLP)
+ {
+ plmnIdInfo =
+ &cellAccessInfo->plmn_IdentityList.list.array[idx]->plmn_IdentityList;
+
+ if(plmnIdInfo->list.array !=NULLP)
+ {
+ if(plmnIdInfo->list.array[idx])
+ {
+ if(plmnIdInfo->list.array[idx]->mcc)
+ {
+ if((plmnIdInfo->list.array[idx]->mcc->list.array))
+ {
+ if(plmnIdInfo->list.array[idx]->mnc.list.array)
+ {
+ /*Free Tracking Area Code */
+ if(cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode)
+ {
+ /*Free RANAC */
+ if(cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode->buf)
+ {
+ /* Free CellIdentity */
+ if(cellAccessInfo->plmn_IdentityList.list.array[idx]->ranac)
+ {
+ cellIdentity
+ =&cellAccessInfo->plmn_IdentityList.\
+ list.array[idx]->cellIdentity;
+ if(cellIdentity->buf)
+ {
+ /*Free Connection Establish Failure Control */
+ if(sib1Msg->connEstFailureControl)
+ {
+ /*Free Serving Cell Config Common */
+ if(sib1Msg->si_SchedulingInfo)
+ {
+ /* Free Serving Cell Config Common* */
+ if(sib1Msg->servingCellConfigCommon)
+ {
+ /*Free BuildServCellCfgCommonSib*/
+ FreeServCellCfgCommonSib(\
+ sib1Msg->servingCellConfigCommon);
+
+ DU_FREE(sib1Msg->servingCellConfigCommon,
+ sizeof(ServingCellConfigCommonSIB_t));
+ }
+ //TODO PBORLA
+ if(sib1Msg->si_SchedulingInfo->schedulingInfoList.list.array)
+ {
+ for(arrIdx = 0; arrIdx < sib1Msg->si_SchedulingInfo->schedulingInfoList.list.count; arrIdx++)
+ {
+ schedInfo = sib1Msg->si_SchedulingInfo->schedulingInfoList.list.array[arrIdx];
+ if(schedInfo->sib_MappingInfo.list.array)
+ {
+ for(sibMapInfoIdx = 0; sibMapInfoIdx< schedInfo->sib_MappingInfo.list.count; sibMapInfoIdx++)
+ {
+ DU_FREE(schedInfo->sib_MappingInfo.list.array[sibMapInfoIdx]->valueTag, sizeof(long));
+ DU_FREE(schedInfo->sib_MappingInfo.list.array[sibMapInfoIdx], sizeof(SIB_TypeInfo_t));
+ }
+ DU_FREE(schedInfo->sib_MappingInfo.list.array, schedInfo->sib_MappingInfo.list.size)
+ }
+ DU_FREE(sib1Msg->si_SchedulingInfo->schedulingInfoList.list.array[arrIdx], sizeof(struct SchedulingInfo));
+ }
+ DU_FREE(sib1Msg->si_SchedulingInfo->schedulingInfoList.list.array,\
+ sib1Msg->si_SchedulingInfo->schedulingInfoList.list.size);
+ }
+
+ DU_FREE(sib1Msg->si_SchedulingInfo,
+ sizeof(SI_SchedulingInfo_t));
+ }
+
+ DU_FREE(sib1Msg->connEstFailureControl,
+ sizeof(ConnEstFailureControl_t));
+ }
+ DU_FREE(cellIdentity->buf,cellIdentity->size);
+
+ }
+ DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx]->ranac, sizeof(RAN_AreaCode_t));
+
+ }
+ DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode->buf,\
+ cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode->size);
+
+ }
+ DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx]->trackingAreaCode\
+ , sizeof(TrackingAreaCode_t));
+ }
+
+ for(idx2=0; idx2<plmnIdInfo->list.array[idx1]->mnc.list.count; idx2++)
+ {
+ if(plmnIdInfo->list.array[idx1]->mnc.list.array[idx2])
+ {
+ DU_FREE(plmnIdInfo->list.array[idx1]->mnc.list.array[idx2],
+ sizeof(MCC_MNC_Digit_t));
+ }
+ }
+ DU_FREE(plmnIdInfo->list.array[idx]->mnc.list.array,
+ plmnIdInfo->list.array[idx1]->mnc.list.size);
+ }
+
+ for(idx1=0; idx1<plmnIdInfo->list.array[idx]->mcc->list.count; idx1++)
+ {
+ if(plmnIdInfo->list.array[idx]->mcc->list.array[idx1]!=NULLP)
+ {
+ DU_FREE(plmnIdInfo->list.array[idx]->mcc->list.array[idx1],\
+ sizeof(MCC_MNC_Digit_t));
+ }
+
+ }
+ DU_FREE(plmnIdInfo->list.array[idx]->mcc->list.array,\
+ plmnIdInfo->list.array[idx]->mcc->list.size)
+ }
+ DU_FREE(plmnIdInfo->list.array[idx]->mcc,sizeof(MCC_t));
+ }
+ }
+ for(idx1=0; idx1<plmnIdInfo->list.count; idx1++)
+ {
+ if((plmnIdInfo->list.array[idx1]))
+ {
+ DU_FREE(plmnIdInfo->list.array[idx1],
+ sizeof(PLMN_IdentitY_t));
+ }
+ }
+ DU_FREE(plmnIdInfo->list.array, plmnIdInfo->list.size);
+ }
+ }
+ for(idx=0; idx<cellAccessInfo->plmn_IdentityList.list.count; idx++)
+ {
+ if(cellAccessInfo->plmn_IdentityList.list.array[idx]!=NULLP)
+ {
+ DU_FREE(cellAccessInfo->plmn_IdentityList.list.array[idx],
+ sizeof(PLMN_IdentityInfo_t));
+ }
+ }
+ DU_FREE(cellAccessInfo->plmn_IdentityList.list.array,
+ cellAccessInfo->plmn_IdentityList.list.size);