From 40c9800d92beecb080aefbed0d609afea260e5ed Mon Sep 17 00:00:00 2001 From: "wansu.yoo" Date: Thu, 21 Oct 2021 11:14:22 +0900 Subject: [PATCH] Fix wrong usage of memory. - Fix memory issue from conditional jump depends on unintialized value. - Fix wrong ordering of function parameters. - Initializing variables. - Fix message structure according to E2SM format. - Fix wrong usage of memory addressing. Signed-off-by: wansu.yoo Change-Id: I3a732bfa6d360ccfa9075e9560f3feec0b796086 --- .../e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.cpp | 90 ++++++++++++---------- .../e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.hpp | 2 +- .../kpm_e2sm/src/kpm/kpm_callbacks.cpp | 30 ++++---- e2sim/src/base/e2sim.cpp | 2 +- e2sim/src/encoding/encode_e2apv1.cpp | 8 +- e2sim/src/messagerouting/e2ap_message_handler.cpp | 2 +- 6 files changed, 71 insertions(+), 63 deletions(-) mode change 100644 => 100755 e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.hpp diff --git a/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.cpp b/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.cpp index 764c69b..7059863 100755 --- a/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.cpp +++ b/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.cpp @@ -33,18 +33,14 @@ void encode_kpm_function_description(E2SM_KPM_RANfunction_Description_t* ranfunc uint8_t *buf = (uint8_t*)"ORAN-E2SM-KPM"; uint8_t *buf2 = (uint8_t*)"KPM monitor"; uint8_t *buf3 = (uint8_t*)"OID123"; - - OCTET_STRING_t *sname = (OCTET_STRING_t*)calloc(1, sizeof(OCTET_STRING_t)); - sname->buf = (uint8_t*)calloc(1,13); - - memcpy(sname->buf, buf, 13); - sname->size = strlen((char*)buf); - ranfunc_desc->ranFunction_Name.ranFunction_ShortName = *sname; - long inst = 1; ASN_STRUCT_RESET(asn_DEF_E2SM_KPM_RANfunction_Description, ranfunc_desc); + ranfunc_desc->ranFunction_Name.ranFunction_ShortName.size = strlen((char*)buf); + ranfunc_desc->ranFunction_Name.ranFunction_ShortName.buf = (uint8_t*)calloc(strlen((char*)buf), sizeof(uint8_t)); + memcpy(ranfunc_desc->ranFunction_Name.ranFunction_ShortName.buf, buf, ranfunc_desc->ranFunction_Name.ranFunction_ShortName.size); + // ranfunc_desc->ranFunction_Name.ranFunction_Description = (OCTET_STRING_t*)calloc(1, sizeof(OCTET_STRING_t)); ranfunc_desc->ranFunction_Name.ranFunction_Description.buf = (uint8_t*)calloc(1,strlen((char*)buf2)); memcpy(ranfunc_desc->ranFunction_Name.ranFunction_Description.buf, buf2, strlen((char*)buf2)); @@ -724,14 +720,18 @@ void encode_kpm_odu_user_level(RAN_Container_t *ranco, printf("enc4\n"); + long *p_prb_usage_dl = (long*)calloc(1, sizeof(long)); + long *p_prb_usage_ul = (long*)calloc(1, sizeof(long)); + *p_prb_usage_dl = (long)prb_usage_dl; + *p_prb_usage_ul = (long)prb_usage_ul; ue_report_item->c_RNTI = *crnti; - ue_report_item->dl_PRBUsage = &prb_usage_dl; + ue_report_item->dl_PRBUsage = p_prb_usage_dl; if (crnti) free(crnti); printf("enc5\n"); - ue_report_item->ul_PRBUsage = &prb_usage_ul; + ue_report_item->ul_PRBUsage = p_prb_usage_ul; printf("enc6\n"); @@ -779,7 +779,7 @@ void encode_kpm_report_rancontainer_du_parameterized(E2SM_KPM_IndicationMessage_ if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -789,10 +789,10 @@ void encode_kpm_report_rancontainer_du_parameterized(E2SM_KPM_IndicationMessage_ asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -841,7 +841,7 @@ void encode_kpm_report_rancontainer_cucp_parameterized(E2SM_KPM_IndicationMessag if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -851,10 +851,10 @@ void encode_kpm_report_rancontainer_cucp_parameterized(E2SM_KPM_IndicationMessag asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -892,7 +892,7 @@ void encode_kpm_report_rancontainer_cucp(E2SM_KPM_IndicationMessage_t* indicatio if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -902,10 +902,10 @@ void encode_kpm_report_rancontainer_cucp(E2SM_KPM_IndicationMessage_t* indicatio asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -951,7 +951,7 @@ void encode_kpm_report_rancontainer_cuup_parameterized(E2SM_KPM_IndicationMessag if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -961,10 +961,10 @@ void encode_kpm_report_rancontainer_cuup_parameterized(E2SM_KPM_IndicationMessag asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; // xer_fprint(stderr, &asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage); @@ -1085,7 +1085,7 @@ void encode_kpm_report_rancontainer_cuup(E2SM_KPM_IndicationMessage_t* indicatio if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -1095,10 +1095,10 @@ void encode_kpm_report_rancontainer_cuup(E2SM_KPM_IndicationMessage_t* indicatio asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -1117,8 +1117,8 @@ void encode_kpm_report_style1_parameterized(E2SM_KPM_IndicationMessage_t* indica long fiveqi, long dl_prb_usage, long ul_prb_usage, - uint8_t* sd_buf, uint8_t* sst_buf, + uint8_t* sd_buf, uint8_t* plmnid_buf, uint8_t* nrcellid_buf, long *dl_prbs, @@ -1129,9 +1129,15 @@ void encode_kpm_report_style1_parameterized(E2SM_KPM_IndicationMessage_t* indica FQIPERSlicesPerPlmnPerCellListItem_t *fqi_item = (FQIPERSlicesPerPlmnPerCellListItem_t*)calloc(1,sizeof(FQIPERSlicesPerPlmnPerCellListItem_t)); + + long *p_dl_prb_usage = (long*)calloc(1, sizeof(long)); + long *p_ul_prb_usage = (long*)calloc(1, sizeof(long)); + *p_dl_prb_usage = (long)dl_prb_usage; + *p_ul_prb_usage = (long)ul_prb_usage; + fqi_item->fiveQI = fiveqi; - fqi_item->dl_PRBUsage = &dl_prb_usage; - fqi_item->ul_PRBUsage = &ul_prb_usage; + fqi_item->dl_PRBUsage = p_dl_prb_usage; + fqi_item->ul_PRBUsage = p_ul_prb_usage; uint8_t *buf1 = (uint8_t*)"4"; @@ -1230,7 +1236,7 @@ void encode_kpm_report_style1_parameterized(E2SM_KPM_IndicationMessage_t* indica if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -1239,10 +1245,10 @@ void encode_kpm_report_style1_parameterized(E2SM_KPM_IndicationMessage_t* indica xer_fprint(stderr, &asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage); - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -1369,7 +1375,7 @@ void encode_kpm_report_style1(E2SM_KPM_IndicationMessage_t* indicationmessage) { if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -1378,10 +1384,10 @@ void encode_kpm_report_style1(E2SM_KPM_IndicationMessage_t* indicationmessage) { xer_fprint(stderr, &asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage); - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -1542,7 +1548,7 @@ void encode_kpm_report_style5_parameterized(E2SM_KPM_IndicationMessage_t* indica asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffera[8192]; + uint8_t e2smbuffera[8192] = {0, }; size_t e2smbuffer_sizea = 8192; @@ -1622,7 +1628,7 @@ void encode_kpm_report_style5_parameterized(E2SM_KPM_IndicationMessage_t* indica if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -1631,10 +1637,10 @@ void encode_kpm_report_style5_parameterized(E2SM_KPM_IndicationMessage_t* indica xer_fprint(stderr, &asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage); - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = @@ -1706,7 +1712,7 @@ void encode_kpm_report_style5(E2SM_KPM_IndicationMessage_t* indicationmessage) { asn_codec_ctx_t *opt_cod; - uint8_t e2smbuffera[8192]; + uint8_t e2smbuffera[8192] = {0, }; size_t e2smbuffer_sizea = 8192; @@ -1785,7 +1791,7 @@ void encode_kpm_report_style5(E2SM_KPM_IndicationMessage_t* indicationmessage) { if (format) free(format); char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage, error_buf, &errlen); printf("error length %d\n", errlen); @@ -1794,10 +1800,10 @@ void encode_kpm_report_style5(E2SM_KPM_IndicationMessage_t* indicationmessage) { xer_fprint(stderr, &asn_DEF_E2SM_KPM_IndicationMessage, indicationmessage); - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; - uint8_t e2smbuffer2[8192]; + uint8_t e2smbuffer2[8192] = {0, }; size_t e2smbuffer_size2 = 8192; asn_enc_rval_t er = diff --git a/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.hpp b/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.hpp old mode 100644 new mode 100755 index db533d5..96314ab --- a/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.hpp +++ b/e2sim/e2sm_examples/kpm_e2sm/src/kpm/encode_kpm.hpp @@ -60,7 +60,7 @@ void encode_kpm_report_rancontainer_cucp_parameterized(E2SM_KPM_IndicationMessag void encode_kpm_report_rancontainer_cuup_parameterized(E2SM_KPM_IndicationMessage_t* indicationmessage, uint8_t *plmnid_buf, uint8_t *nrcellid_buf, uint8_t *crnti_buf,int pdcp_bytesdl, int pdcp_bytesul); -void encode_kpm_report_style1_parameterized(E2SM_KPM_IndicationMessage_t* indicationmessage, long fiveqi, long dl_prb_usage, long ul_prb_usage, uint8_t* sd_buf, uint8_t* sst_buf,uint8_t* plmnid_buf, uint8_t* nrcellid_buf, long *dl_prbs, long *ul_prbs); +void encode_kpm_report_style1_parameterized(E2SM_KPM_IndicationMessage_t* indicationmessage, long fiveqi, long dl_prb_usage, long ul_prb_usage, uint8_t* sst_buf, uint8_t* sd_buf, uint8_t* plmnid_buf, uint8_t* nrcellid_buf, long *dl_prbs, long *ul_prbs); void encode_kpm_report_style5_parameterized(E2SM_KPM_IndicationMessage_t* indicationmessage, uint8_t *gnbcuupname_buf, int bytes_dl,int bytes_ul, uint8_t *sst_buf, uint8_t *sd_buf, uint8_t *plmnid_buf); diff --git a/e2sim/e2sm_examples/kpm_e2sm/src/kpm/kpm_callbacks.cpp b/e2sim/e2sm_examples/kpm_e2sm/src/kpm/kpm_callbacks.cpp index bcfb513..fea3a4b 100755 --- a/e2sim/e2sm_examples/kpm_e2sm/src/kpm/kpm_callbacks.cpp +++ b/e2sim/e2sm_examples/kpm_e2sm/src/kpm/kpm_callbacks.cpp @@ -81,7 +81,7 @@ int main(int argc, char* argv[]) { (E2SM_KPM_RANfunction_Description_t*)calloc(1,sizeof(E2SM_KPM_RANfunction_Description_t)); encode_kpm_function_description(ranfunc_desc); - uint8_t e2smbuffer[8192]; + uint8_t e2smbuffer[8192] = {0, }; size_t e2smbuffer_size = 8192; asn_enc_rval_t er = @@ -359,7 +359,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long encode_kpm_report_rancontainer_cucp_parameterized(ind_msg_cucp_ue, plmnid_buf, nrcellid_buf, crnti_buf, serving_buf, neighbor_buf); - uint8_t e2sm_message_buf_cucp_ue[8192]; + uint8_t e2sm_message_buf_cucp_ue[8192] = {0, }; size_t e2sm_message_buf_size_cucp_ue = 8192; asn_codec_ctx_t *opt_cod; @@ -380,7 +380,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long fprintf(stderr, "Now printing xer outside of function call\n"); xer_fprint(stderr, &asn_DEF_E2SM_KPM_IndicationHeader, ind_header_cucp_ue); - uint8_t e2sm_header_buf_cucp_ue[8192]; + uint8_t e2sm_header_buf_cucp_ue[8192] = {0, }; size_t e2sm_header_buf_size_cucp_ue = 8192; asn_enc_rval_t er_header_cucp_ue = asn_encode_to_buffer(opt_cod, @@ -419,7 +419,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long encode_kpm_report_rancontainer_cuup_parameterized(ind_msg_cuup_ue, plmnid_buf, nrcellid_buf, crnti_buf, bytes, 0); - uint8_t e2sm_message_buf_cuup_ue[8192]; + uint8_t e2sm_message_buf_cuup_ue[8192] = {0, }; size_t e2sm_message_buf_size_cuup_ue = 8192; asn_codec_ctx_t *opt_cod2; @@ -438,7 +438,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long (E2SM_KPM_IndicationHeader_t*)calloc(1,sizeof(E2SM_KPM_IndicationHeader_t)); encode_e2sm_kpm_indication_header(ind_header_cuup_ue, plmnid_buf, sst_buf, sd_buf, fqival, qcival, nrcellid_buf, gnbid_buf, 0, cuupid_buf, duid_buf, cuupname_buf); - uint8_t e2sm_header_buf_cuup_ue[8192]; + uint8_t e2sm_header_buf_cuup_ue[8192] = {0, }; size_t e2sm_header_buf_size_cuup_ue = 8192; asn_enc_rval_t er_header_cuup_ue = asn_encode_to_buffer(opt_cod, @@ -472,7 +472,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long encode_kpm_report_rancontainer_du_parameterized(ind_message_du_ue, plmnid_buf, nrcellid_buf, crnti_buf, prb_usage, 0); - uint8_t e2sm_message_buf_du_ue[8192]; + uint8_t e2sm_message_buf_du_ue[8192] = {0, }; size_t e2sm_message_buf_size_du_ue = 8192; asn_codec_ctx_t *opt_cod3; @@ -493,7 +493,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long (E2SM_KPM_IndicationHeader_t*)calloc(1,sizeof(E2SM_KPM_IndicationHeader_t)); encode_e2sm_kpm_indication_header(ind_header_du_ue, plmnid_buf, sst_buf, sd_buf, fqival, qcival, nrcellid_buf, gnbid_buf, 0, cuupid_buf, duid_buf, cuupname_buf); - uint8_t e2sm_header_buf_du_ue[8192]; + uint8_t e2sm_header_buf_du_ue[8192] = {0, }; size_t e2sm_header_buf_size_du_ue = 8192; asn_enc_rval_t er_header_du_ue = asn_encode_to_buffer(opt_cod, @@ -596,7 +596,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long encode_kpm_report_style5_parameterized(ind_msg_style5 , cuupname_buf, bytes_dl, bytes_ul, sst_buf, sd_buf, plmnid_buf); - uint8_t e2sm_message_buf_style5[8192]; + uint8_t e2sm_message_buf_style5[8192] = {0, }; size_t e2sm_message_buf_size_style5 = 8192; asn_enc_rval_t er_message_style5 = asn_encode_to_buffer(opt_cod, @@ -615,7 +615,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long (E2SM_KPM_IndicationHeader_t*)calloc(1,sizeof(E2SM_KPM_IndicationHeader_t)); encode_e2sm_kpm_indication_header(ind_header_style5, plmnid_buf, sst_buf, sd_buf, fqival, qcival, nrcellid_buf, gnbid_buf, 0, cuupid_buf, duid_buf, cuupname_buf); - uint8_t e2sm_header_buf_style5[8192]; + uint8_t e2sm_header_buf_style5[8192] = {0, }; size_t e2sm_header_buf_size_style5 = 8192; asn_enc_rval_t er_header_style5 = asn_encode_to_buffer(opt_cod, @@ -653,14 +653,16 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long - long l_dl_prbs = prb_dl; - long l_ul_prbs = prb_ul; + long *l_dl_prbs = (long*)calloc(1, sizeof(long)); + long *l_ul_prbs = (long*)calloc(1, sizeof(long)); + *l_dl_prbs = (long)prb_dl; + *l_ul_prbs = (long)prb_ul; encode_kpm_report_style1_parameterized(ind_message_style1, fiveqi, prb_dl, prb_ul, sst_buf, sd_buf, - plmnid_buf, nrcellid_buf, &l_dl_prbs, &l_ul_prbs); + plmnid_buf, nrcellid_buf, l_dl_prbs, l_ul_prbs); - uint8_t e2sm_message_buf_style1[8192]; + uint8_t e2sm_message_buf_style1[8192] = {0, }; size_t e2sm_message_buf_size_style1 = 8192; asn_enc_rval_t er_message_style1 = asn_encode_to_buffer(opt_cod2, @@ -682,7 +684,7 @@ void run_report_loop(long requestorId, long instanceId, long ranFunctionId, long (E2SM_KPM_IndicationHeader_t*)calloc(1,sizeof(E2SM_KPM_IndicationHeader_t)); encode_e2sm_kpm_indication_header(ind_header_style1, plmnid_buf, sst_buf, sd_buf, fqival, qcival, nrcellid_buf, gnbid_buf, 0, cuupid_buf, duid_buf, cuupname_buf); - uint8_t e2sm_header_buf_style1[8192]; + uint8_t e2sm_header_buf_style1[8192] = {0, }; size_t e2sm_header_buf_size_style1 = 8192; asn_enc_rval_t er_header_style1 = asn_encode_to_buffer(opt_cod, diff --git a/e2sim/src/base/e2sim.cpp b/e2sim/src/base/e2sim.cpp index e28cbd4..485d338 100755 --- a/e2sim/src/base/e2sim.cpp +++ b/e2sim/src/base/e2sim.cpp @@ -167,7 +167,7 @@ int E2Sim::run_loop(int argc, char* argv[]){ sctp_buffer_t data; char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2AP_PDU, pdu_setup, error_buf, &errlen); printf("error length %d\n", errlen); diff --git a/e2sim/src/encoding/encode_e2apv1.cpp b/e2sim/src/encoding/encode_e2apv1.cpp index a6bf517..b237d68 100755 --- a/e2sim/src/encoding/encode_e2apv1.cpp +++ b/e2sim/src/encoding/encode_e2apv1.cpp @@ -414,7 +414,7 @@ void encoding::generate_e2apv1_subscription_request(E2AP_PDU *e2ap_pdu) { e2ap_pdu->choice.initiatingMessage = initmsg; char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2AP_PDU, e2ap_pdu, error_buf, &errlen); printf("error length %d\n", errlen); @@ -527,7 +527,7 @@ void encoding::generate_e2apv1_subscription_response_success(E2AP_PDU *e2ap_pdu, e2ap_pdu->choice.successfulOutcome = successoutcome; char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2AP_PDU, e2ap_pdu, error_buf, &errlen); printf("error length %d\n", errlen); @@ -682,7 +682,7 @@ void encoding::generate_e2apv1_subscription_response(E2AP_PDU *e2ap_pdu, E2AP_PD e2ap_pdu->choice.successfulOutcome = successoutcome; char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2AP_PDU, e2ap_pdu, error_buf, &errlen); printf("error length %d\n", errlen); @@ -850,7 +850,7 @@ void encoding::generate_e2apv1_indication_request_parameterized(E2AP_PDU *e2ap_p e2ap_pdu->present = pres5; e2ap_pdu->choice.initiatingMessage = initmsg; char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2AP_PDU, e2ap_pdu, error_buf, &errlen); printf("error length %d\n", errlen); diff --git a/e2sim/src/messagerouting/e2ap_message_handler.cpp b/e2sim/src/messagerouting/e2ap_message_handler.cpp index ae72048..ca2d400 100755 --- a/e2sim/src/messagerouting/e2ap_message_handler.cpp +++ b/e2sim/src/messagerouting/e2ap_message_handler.cpp @@ -248,7 +248,7 @@ void e2ap_handle_E2SeviceRequest(E2AP_PDU_t* pdu, int &socket_fd, E2Sim *e2sim) sctp_buffer_t data; char error_buf[300] = {0, }; - size_t errlen; + size_t errlen = 0; asn_check_constraints(&asn_DEF_E2AP_PDU, res_pdu, error_buf, &errlen); printf("error length %d\n", errlen); -- 2.16.6