asn1 encoding memory overflow
This commit is contained in:
committed by
Florian Kaltenberger
parent
80cd6940af
commit
7672257b2f
@@ -81,7 +81,7 @@ char *config_check_valptr(paramdef_t *cfgoptions, char **ptr, int length) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (*ptr == NULL) {
|
if (*ptr == NULL) {
|
||||||
*ptr = malloc(length);
|
*ptr = malloc(length>40?length:40); // LTS: dummy fix, waiting Francois full fix in 4G branch
|
||||||
|
|
||||||
if ( *ptr != NULL) {
|
if ( *ptr != NULL) {
|
||||||
memset(*ptr,0,length);
|
memset(*ptr,0,length);
|
||||||
|
|||||||
@@ -87,7 +87,6 @@ void clean_gNB_dlsch(NR_gNB_DLSCH_t *dlsch);
|
|||||||
void clean_gNB_ulsch(NR_gNB_ULSCH_t *ulsch);
|
void clean_gNB_ulsch(NR_gNB_ULSCH_t *ulsch);
|
||||||
|
|
||||||
int16_t find_nr_dlsch(uint16_t rnti, PHY_VARS_gNB *gNB,find_type_t type);
|
int16_t find_nr_dlsch(uint16_t rnti, PHY_VARS_gNB *gNB,find_type_t type);
|
||||||
int16_t find_nr_ulsch(uint16_t rnti, PHY_VARS_gNB *gNB,find_type_t type);
|
|
||||||
|
|
||||||
int nr_dlsch_encoding(unsigned char *a,int frame,
|
int nr_dlsch_encoding(unsigned char *a,int frame,
|
||||||
uint8_t slot,
|
uint8_t slot,
|
||||||
|
|||||||
@@ -79,4 +79,4 @@ void nr_ulsch_procedures(PHY_VARS_gNB *gNB,
|
|||||||
int slot_rx,
|
int slot_rx,
|
||||||
int UE_id,
|
int UE_id,
|
||||||
uint8_t harq_pid);
|
uint8_t harq_pid);
|
||||||
|
int16_t find_nr_ulsch(uint16_t rnti, PHY_VARS_gNB *gNB,find_type_t type);
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ void dlsch_scheduler_pre_ue_select_fairRR(
|
|||||||
frame_t frameP,
|
frame_t frameP,
|
||||||
sub_frame_t subframeP,
|
sub_frame_t subframeP,
|
||||||
int *mbsfn_flag,
|
int *mbsfn_flag,
|
||||||
uint16_t nb_rbs_required[MAX_NUM_CCs][NUMBER_OF_UE_MAX],
|
uint16_t nb_rbs_required[MAX_NUM_CCs][MAX_MOBILES_PER_ENB],
|
||||||
DLSCH_UE_SELECT dlsch_ue_select[MAX_NUM_CCs]) {
|
DLSCH_UE_SELECT dlsch_ue_select[MAX_NUM_CCs]) {
|
||||||
eNB_MAC_INST *eNB = RC.mac[module_idP];
|
eNB_MAC_INST *eNB = RC.mac[module_idP];
|
||||||
COMMON_channels_t *cc = eNB->common_channels;
|
COMMON_channels_t *cc = eNB->common_channels;
|
||||||
@@ -631,7 +631,7 @@ void dlsch_scheduler_pre_processor_fairRR (module_id_t Mod_id,
|
|||||||
assign_rbs_required(Mod_id, 0, frameP, subframeP, nb_rbs_required,
|
assign_rbs_required(Mod_id, 0, frameP, subframeP, nb_rbs_required,
|
||||||
min_rb_unit);
|
min_rb_unit);
|
||||||
#else
|
#else
|
||||||
memcpy(nb_rbs_required, pre_nb_rbs_required[dlsch_ue_select_tbl_in_use], sizeof(uint16_t)*MAX_NUM_CCs*NUMBER_OF_UE_MAX);
|
memcpy(nb_rbs_required, pre_nb_rbs_required[dlsch_ue_select_tbl_in_use], sizeof(uint16_t)*MAX_NUM_CCs*MAX_MOBILES_PER_ENB);
|
||||||
#endif
|
#endif
|
||||||
dlsch_scheduler_pre_ue_select_fairRR(Mod_id,frameP,subframeP, mbsfn_flag,nb_rbs_required,dlsch_ue_select);
|
dlsch_scheduler_pre_ue_select_fairRR(Mod_id,frameP,subframeP, mbsfn_flag,nb_rbs_required,dlsch_ue_select);
|
||||||
|
|
||||||
|
|||||||
@@ -519,8 +519,7 @@ void do_SERVINGCELLCONFIGCOMMON(uint8_t Mod_id,
|
|||||||
bwp_dl_searchspace->monitoringSymbolsWithinSlot->buf = MALLOC(2);
|
bwp_dl_searchspace->monitoringSymbolsWithinSlot->buf = MALLOC(2);
|
||||||
bwp_dl_searchspace->nrofCandidates = CALLOC(1,sizeof(struct NR_SearchSpace__nrofCandidates));
|
bwp_dl_searchspace->nrofCandidates = CALLOC(1,sizeof(struct NR_SearchSpace__nrofCandidates));
|
||||||
bwp_dl_searchspace->searchSpaceType = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType));
|
bwp_dl_searchspace->searchSpaceType = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType));
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.common = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType__common));
|
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.ue_Specific = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType__ue_Specific));
|
|
||||||
bwp_dl_timedomainresourceallocation->k0 = CALLOC(1,sizeof(long));
|
bwp_dl_timedomainresourceallocation->k0 = CALLOC(1,sizeof(long));
|
||||||
pusch_configcommontimedomainresourceallocation = CALLOC(1,sizeof(NR_PUSCH_TimeDomainResourceAllocation_t));
|
pusch_configcommontimedomainresourceallocation = CALLOC(1,sizeof(NR_PUSCH_TimeDomainResourceAllocation_t));
|
||||||
pusch_configcommontimedomainresourceallocation->k2 = CALLOC(1,sizeof(long));
|
pusch_configcommontimedomainresourceallocation->k2 = CALLOC(1,sizeof(long));
|
||||||
@@ -646,7 +645,8 @@ void do_SERVINGCELLCONFIGCOMMON(uint8_t Mod_id,
|
|||||||
bwp_dl_searchspace->nrofCandidates->aggregationLevel16 = configuration->SearchSpace_nrofCandidates_aggregationLevel16[CC_id];
|
bwp_dl_searchspace->nrofCandidates->aggregationLevel16 = configuration->SearchSpace_nrofCandidates_aggregationLevel16[CC_id];
|
||||||
bwp_dl_searchspace->searchSpaceType->present = configuration->SearchSpace_searchSpaceType[CC_id];
|
bwp_dl_searchspace->searchSpaceType->present = configuration->SearchSpace_searchSpaceType[CC_id];
|
||||||
|
|
||||||
if(bwp_dl_searchspace->searchSpaceType->present == NR_SearchSpace__searchSpaceType_PR_common) {
|
if(bwp_dl_searchspace->searchSpaceType->present == NR_SearchSpace__searchSpaceType_PR_common){
|
||||||
|
bwp_dl_searchspace->searchSpaceType->choice.common = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType__common));
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0 = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType__common__dci_Format2_0));
|
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0 = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType__common__dci_Format2_0));
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0->nrofCandidates_SFI.aggregationLevel1 = CALLOC(1,sizeof(long));
|
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0->nrofCandidates_SFI.aggregationLevel1 = CALLOC(1,sizeof(long));
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0->nrofCandidates_SFI.aggregationLevel2 = CALLOC(1,sizeof(long));
|
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0->nrofCandidates_SFI.aggregationLevel2 = CALLOC(1,sizeof(long));
|
||||||
@@ -662,7 +662,8 @@ void do_SERVINGCELLCONFIGCOMMON(uint8_t Mod_id,
|
|||||||
*(bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0->nrofCandidates_SFI.aggregationLevel16) = configuration->Common_dci_Format2_0_nrofCandidates_SFI_aggregationLevel16[CC_id];
|
*(bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_0->nrofCandidates_SFI.aggregationLevel16) = configuration->Common_dci_Format2_0_nrofCandidates_SFI_aggregationLevel16[CC_id];
|
||||||
*(bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_3->dummy1) = configuration->Common_dci_Format2_3_monitoringPeriodicity[CC_id];
|
*(bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_3->dummy1) = configuration->Common_dci_Format2_3_monitoringPeriodicity[CC_id];
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_3->dummy2 = configuration->Common_dci_Format2_3_nrofPDCCH_Candidates[CC_id];
|
bwp_dl_searchspace->searchSpaceType->choice.common->dci_Format2_3->dummy2 = configuration->Common_dci_Format2_3_nrofPDCCH_Candidates[CC_id];
|
||||||
} else if (bwp_dl_searchspace->searchSpaceType->present == NR_SearchSpace__searchSpaceType_PR_ue_Specific) {
|
}else if (bwp_dl_searchspace->searchSpaceType->present == NR_SearchSpace__searchSpaceType_PR_ue_Specific){
|
||||||
|
bwp_dl_searchspace->searchSpaceType->choice.ue_Specific = CALLOC(1,sizeof(struct NR_SearchSpace__searchSpaceType__ue_Specific));
|
||||||
bwp_dl_searchspace->searchSpaceType->choice.ue_Specific->dci_Formats = configuration->ue_Specific__dci_Formats[CC_id];
|
bwp_dl_searchspace->searchSpaceType->choice.ue_Specific->dci_Formats = configuration->ue_Specific__dci_Formats[CC_id];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -276,7 +276,7 @@ sin_addr:
|
|||||||
};
|
};
|
||||||
bind(t->listen_sock, (struct sockaddr *)&addr, sizeof(addr));
|
bind(t->listen_sock, (struct sockaddr *)&addr, sizeof(addr));
|
||||||
AssertFatal(listen(t->listen_sock, 5) == 0, "");
|
AssertFatal(listen(t->listen_sock, 5) == 0, "");
|
||||||
struct epoll_event ev;
|
struct epoll_event ev={0};
|
||||||
ev.events = EPOLLIN;
|
ev.events = EPOLLIN;
|
||||||
ev.data.fd = t->listen_sock;
|
ev.data.fd = t->listen_sock;
|
||||||
AssertFatal(epoll_ctl(t->epollfd, EPOLL_CTL_ADD, t->listen_sock, &ev) != -1, "");
|
AssertFatal(epoll_ctl(t->epollfd, EPOLL_CTL_ADD, t->listen_sock, &ev) != -1, "");
|
||||||
|
|||||||
@@ -284,9 +284,9 @@ NETWORK_CONTROLLER :
|
|||||||
global_log_verbosity ="medium";
|
global_log_verbosity ="medium";
|
||||||
hw_log_level ="info";
|
hw_log_level ="info";
|
||||||
hw_log_verbosity ="medium";
|
hw_log_verbosity ="medium";
|
||||||
phy_log_level ="debug";
|
phy_log_level ="info";
|
||||||
phy_log_verbosity ="medium";
|
phy_log_verbosity ="medium";
|
||||||
mac_log_level ="debug";
|
mac_log_level ="info";
|
||||||
mac_log_verbosity ="high";
|
mac_log_verbosity ="high";
|
||||||
rlc_log_level ="info";
|
rlc_log_level ="info";
|
||||||
rlc_log_verbosity ="medium";
|
rlc_log_verbosity ="medium";
|
||||||
|
|||||||
Reference in New Issue
Block a user