Fixed seg fault when mods for some reason fail fail to load.

This commit is contained in:
7u83 2022-08-27 10:40:13 +02:00
parent 4995cac9b8
commit 79b688c38e
4 changed files with 8 additions and 3 deletions

View File

@ -190,7 +190,10 @@ struct cw_Mod *cw_mod_load(const char *mod_name, cw_Cfg_t * global_cfg, int role
} }
cw_dbg(DBG_MOD, "MOD: %s sucessfull loaded, calling init now.", filename); cw_dbg(DBG_MOD, "MOD: %s sucessfull loaded, calling init now.", filename);
mod->init(mod, global_cfg, role); if (!mod->init(mod, global_cfg, role)){
dlclose(handle);
mod=NULL;
}
errX: errX:
free(filename); free(filename);

View File

@ -30,7 +30,7 @@ static int init(struct cw_Mod * mod, cw_Cfg_t * global_cfg, int role)
} }
return 0; return 1;
} }

View File

@ -14,7 +14,7 @@
static int init() static int init()
{ {
cw_dbg(DBG_INFO, "Initialiazing mod_capwap80211 ..."); cw_dbg(DBG_INFO, "Initialiazing mod_capwap80211 ...");
return 0; return 1;
} }

View File

@ -117,11 +117,13 @@ static int init(struct cw_Mod *mod, cw_Cfg_t * global_cfg, int role)
capwap_mod = cw_mod_load("capwap",global_cfg,role); capwap_mod = cw_mod_load("capwap",global_cfg,role);
if (capwap_mod == NULL){ if (capwap_mod == NULL){
cw_log(LOG_ERR, "CISCO: failed to load base module 'capwap"); cw_log(LOG_ERR, "CISCO: failed to load base module 'capwap");
return 0;
} }
capwap80211_mod = cw_mod_load("capwap80211", global_cfg,role); capwap80211_mod = cw_mod_load("capwap80211", global_cfg,role);
if (capwap_mod == NULL){ if (capwap_mod == NULL){
cw_log(LOG_ERR, "CISCO: failed to load base module 'capwap80211"); cw_log(LOG_ERR, "CISCO: failed to load base module 'capwap80211");
return 0;
} }
/*cisco_config = mbag_create();*/ /*cisco_config = mbag_create();*/