output/lua: better lua output setup error handling

If suricata was started with --init-errors-fatal and an error occured
during setup of lua output (like if lua scripts configured in the conf file
don't exist or are not readable) suricata continued, which did not reflect
"init errors fatal" very well.

This fix makes the suricata initialization abort and send an error message
in such cases.

For details see:
https://redmine.openinfosecfoundation.org/issues/1503
pull/3272/head
Richard Sailer 8 years ago committed by Victor Julien
parent 7910b6689e
commit 748fda1966

@ -863,6 +863,18 @@ static OutputInitResult OutputLuaLogInit(ConfNode *conf)
error:
if (output_ctx->DeInit)
output_ctx->DeInit(output_ctx);
int failure_fatal = 0;
if (ConfGetBool("engine.init-failure-fatal", &failure_fatal) != 1) {
SCLogDebug("ConfGetBool could not load the value.");
}
if (failure_fatal) {
SCLogError(SC_ERR_LUA_ERROR,
"Error during setup of lua output. Details should be "
"described in previous error messages. Shutting down...");
exit(EXIT_FAILURE);
}
return result;
}

Loading…
Cancel
Save