From e0ff84f67ca033459f6d8d115418f383f3a81811 Mon Sep 17 00:00:00 2001 From: mir Date: Tue, 31 Oct 2023 11:53:42 +0100 Subject: [PATCH 1/2] Scan build: Argument with 'nonnull' attribute passed null --- common/config/config_cmdline.c | 1 + common/utils/load_module_shlib.c | 2 +- openair1/SIMULATION/TOOLS/rangen_double.c | 5 +++-- openair2/E1AP/e1ap_setup.c | 2 ++ 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/common/config/config_cmdline.c b/common/config/config_cmdline.c index 2e9b44cce8..8fa3b75f0d 100644 --- a/common/config/config_cmdline.c +++ b/common/config/config_cmdline.c @@ -79,6 +79,7 @@ int processoption(paramdef_t *cfgoptions, char *value) { if ( value == NULL) { if( (cfgoptions->paramflags &PARAMFLAG_BOOL) == 0 ) { /* not a boolean, argument required */ CONFIG_PRINTF_ERROR("[CONFIG] command line, option %s requires an argument\n",cfgoptions->optname); + AssertFatal(false, "[CONFIG] command line, requires an argument\n"); } else { /* boolean value option without argument, set value to true*/ tmpval = defbool; } diff --git a/common/utils/load_module_shlib.c b/common/utils/load_module_shlib.c index a43594cb9a..aabcab4dea 100644 --- a/common/utils/load_module_shlib.c +++ b/common/utils/load_module_shlib.c @@ -214,7 +214,7 @@ int load_module_version_shlib(char *modname, char *version, loader_shlibfunc_t * int j = 0; for (; j < shlib->numfunc; ++j) { if (shlib->funcarray[j].fptr == farray[i].fptr) { - int rc = strcmp(shlib->funcarray[i].fname, farray[i].fname); + int rc = strcmp(shlib->funcarray[j].fname, farray[i].fname); AssertFatal(rc == 0, "reloading the same fptr with different fnames (%s, %s)\n", shlib->funcarray[i].fname, farray[i].fname); diff --git a/openair1/SIMULATION/TOOLS/rangen_double.c b/openair1/SIMULATION/TOOLS/rangen_double.c index aeb6bdbc64..a1207f0d4d 100644 --- a/openair1/SIMULATION/TOOLS/rangen_double.c +++ b/openair1/SIMULATION/TOOLS/rangen_double.c @@ -55,8 +55,9 @@ void randominit(unsigned long seed_init) unsigned long seed = seed_init; if (seed_init == 0) fill_random(&seed, sizeof(seed)); - if (getenv("OAI_RNGSEED")) - seed = atoi(getenv("OAI_RNGSEED")); + const char* str_oai_rngseed = getenv("OAI_RNGSEED"); + if (str_oai_rngseed != NULL) + seed = atoi(str_oai_rngseed); printf("Initializing random number generator, seed %lu\n", seed); // initialize uniformrandom RNG diff --git a/openair2/E1AP/e1ap_setup.c b/openair2/E1AP/e1ap_setup.c index f2b9d05503..5a00470d2f 100644 --- a/openair2/E1AP/e1ap_setup.c +++ b/openair2/E1AP/e1ap_setup.c @@ -53,10 +53,12 @@ static void get_NGU_S1U_addr(char **addr, uint16_t *port) char *address; if (NETParams[1].strptr != NULL) { LOG_I(GTPU, "SA mode \n"); + AssertFatal(gnb_ipv4_address_for_NGU != NULL, "Undefined Behaviour"); address = strdup(gnb_ipv4_address_for_NGU); *port = gnb_port_for_NGU; } else { LOG_I(GTPU, "NSA mode \n"); + AssertFatal(gnb_ipv4_address_for_S1U != NULL, "Undefined Behaviour"); address = strdup(gnb_ipv4_address_for_S1U); *port = gnb_port_for_S1U; } From 6a1a17bcff874810b05f8770701dc73f8d07198a Mon Sep 17 00:00:00 2001 From: mir Date: Tue, 31 Oct 2023 12:41:10 +0100 Subject: [PATCH 2/2] Enhance message --- openair2/E1AP/e1ap_setup.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openair2/E1AP/e1ap_setup.c b/openair2/E1AP/e1ap_setup.c index 5a00470d2f..410caa7810 100644 --- a/openair2/E1AP/e1ap_setup.c +++ b/openair2/E1AP/e1ap_setup.c @@ -53,12 +53,12 @@ static void get_NGU_S1U_addr(char **addr, uint16_t *port) char *address; if (NETParams[1].strptr != NULL) { LOG_I(GTPU, "SA mode \n"); - AssertFatal(gnb_ipv4_address_for_NGU != NULL, "Undefined Behaviour"); + AssertFatal(gnb_ipv4_address_for_NGU != NULL, "NG-U IPv4 address is NULL: could not read IPv4 address\n"); address = strdup(gnb_ipv4_address_for_NGU); *port = gnb_port_for_NGU; } else { LOG_I(GTPU, "NSA mode \n"); - AssertFatal(gnb_ipv4_address_for_S1U != NULL, "Undefined Behaviour"); + AssertFatal(gnb_ipv4_address_for_S1U != NULL, "S1U IPv4 address is NULL: could not read IPv4 address\n"); address = strdup(gnb_ipv4_address_for_S1U); *port = gnb_port_for_S1U; }