libprelude/master: Fix error in case of multiple initialization.
[email protected] Wed, 8 Jul 2009 16:51:57 +0200 (CEST)
| Newsgroups | gmane.comp.security.ids.prelude.cvs |
|---|---|
| Message-ID | <[email protected]> |
commit dc525fd6e6e22f52a785fb6c69c5cec6e8cb42d4 Author: Yoann Vandoorselaere <[email protected]> Date: Wed Jun 24 17:35:34 2009 +0200 Fix error in case of multiple initialization. Avoid running the initialization code twice since it would result in a fill_client_infos() error (due to idmef_analyzer_t object reuse, and string concatenation). ======================================== src/prelude-client.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) ======================================== diff --git a/src/prelude-client.c b/src/prelude-client.c index d20d618..247bf8c 100644 --- a/src/prelude-client.c +++ b/src/prelude-client.c @@ -1243,6 +1243,13 @@ int prelude_client_init(prelude_client_t *client) prelude_string_t *err; prelude_option_warning_t old_warnings; + /* + * Calling two time init() would result in error in + * fill_client_infos(), due to idmef_analyzer_t object reuse. + */ + if ( client->status != CLIENT_STATUS_NEED_INIT ) + return 0; + prelude_return_val_if_fail(client, prelude_error(PRELUDE_ERROR_ASSERTION)); prelude_option_set_warnings(0, &old_warnings); _______________________________________________ Prelude-cvslog site list [email protected] http://lists.prelude-ids.org/mailman/listinfo/prelude-cvslog