Preserve bytecode settings accross DB reloads.

This commit is contained in:
Török Edvin 2010-12-10 11:05:04 +02:00
parent b898103236
commit df6ce9ab41
2 changed files with 9 additions and 4 deletions

View file

@ -568,13 +568,15 @@ struct cl_settings *cl_engine_settings_copy(const struct cl_engine *engine)
settings->maxfiles = engine->maxfiles; settings->maxfiles = engine->maxfiles;
settings->min_cc_count = engine->min_cc_count; settings->min_cc_count = engine->min_cc_count;
settings->min_ssn_count = engine->min_ssn_count; settings->min_ssn_count = engine->min_ssn_count;
settings->bytecode_security = engine->bytecode_security;
settings->bytecode_timeout = engine->bytecode_timeout;
settings->bytecode_mode = engine->bytecode_mode;
settings->pua_cats = engine->pua_cats ? strdup(engine->pua_cats) : NULL; settings->pua_cats = engine->pua_cats ? strdup(engine->pua_cats) : NULL;
settings->cb_pre_scan = engine->cb_pre_scan; settings->cb_pre_scan = engine->cb_pre_scan;
settings->cb_post_scan = engine->cb_post_scan; settings->cb_post_scan = engine->cb_post_scan;
settings->cb_sigload = engine->cb_sigload; settings->cb_sigload = engine->cb_sigload;
settings->cb_sigload_ctx = engine->cb_sigload_ctx; settings->cb_sigload_ctx = engine->cb_sigload_ctx;
settings->cb_msg = engine->cb_msg;
settings->cb_hash = engine->cb_hash; settings->cb_hash = engine->cb_hash;
return settings; return settings;
@ -592,6 +594,9 @@ int cl_engine_settings_apply(struct cl_engine *engine, const struct cl_settings
engine->maxfiles = settings->maxfiles; engine->maxfiles = settings->maxfiles;
engine->min_cc_count = settings->min_cc_count; engine->min_cc_count = settings->min_cc_count;
engine->min_ssn_count = settings->min_ssn_count; engine->min_ssn_count = settings->min_ssn_count;
engine->bytecode_security = settings->bytecode_security;
engine->bytecode_timeout = settings->bytecode_timeout;
engine->bytecode_mode = settings->bytecode_mode;
if(engine->tmpdir) if(engine->tmpdir)
mpool_free(engine->mempool, engine->tmpdir); mpool_free(engine->mempool, engine->tmpdir);
@ -617,7 +622,6 @@ int cl_engine_settings_apply(struct cl_engine *engine, const struct cl_settings
engine->cb_post_scan = settings->cb_post_scan; engine->cb_post_scan = settings->cb_post_scan;
engine->cb_sigload = settings->cb_sigload; engine->cb_sigload = settings->cb_sigload;
engine->cb_sigload_ctx = settings->cb_sigload_ctx; engine->cb_sigload_ctx = settings->cb_sigload_ctx;
engine->cb_msg = settings->cb_msg;
engine->cb_hash = settings->cb_hash; engine->cb_hash = settings->cb_hash;
return CL_SUCCESS; return CL_SUCCESS;

View file

@ -253,9 +253,7 @@ struct cl_engine {
clcb_post_scan cb_post_scan; clcb_post_scan cb_post_scan;
clcb_sigload cb_sigload; clcb_sigload cb_sigload;
void *cb_sigload_ctx; void *cb_sigload_ctx;
clcb_msg cb_msg;
clcb_hash cb_hash; clcb_hash cb_hash;
enum cl_msg cb_msg_minseverity;
/* Used for bytecode */ /* Used for bytecode */
struct cli_all_bc bcs; struct cli_all_bc bcs;
@ -283,6 +281,9 @@ struct cl_settings {
uint32_t maxfiles; uint32_t maxfiles;
uint32_t min_cc_count; uint32_t min_cc_count;
uint32_t min_ssn_count; uint32_t min_ssn_count;
enum bytecode_security bytecode_security;
uint32_t bytecode_timeout;
enum bytecode_mode bytecode_mode;
char *pua_cats; char *pua_cats;
/* callbacks */ /* callbacks */