diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-05-29 15:24:26 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-05-29 15:24:26 +0100 |
commit | 099cb8fb099054d2711c61ebfac1be05f9519748 (patch) | |
tree | dd209a26f73da064c430e99b8c8a7555a54e15c3 /src/rspamadm | |
parent | b72a6879c8dea90986387d58e7decb19e03ab17f (diff) | |
download | rspamd-099cb8fb099054d2711c61ebfac1be05f9519748.tar.gz rspamd-099cb8fb099054d2711c61ebfac1be05f9519748.zip |
[Project] Convert corpus_test to new format, document all options
Diffstat (limited to 'src/rspamadm')
-rw-r--r-- | src/rspamadm/CMakeLists.txt | 1 | ||||
-rw-r--r-- | src/rspamadm/commands.c | 2 | ||||
-rw-r--r-- | src/rspamadm/corpus_test.c | 126 |
3 files changed, 0 insertions, 129 deletions
diff --git a/src/rspamadm/CMakeLists.txt b/src/rspamadm/CMakeLists.txt index 1370fde89..616c40322 100644 --- a/src/rspamadm/CMakeLists.txt +++ b/src/rspamadm/CMakeLists.txt @@ -9,7 +9,6 @@ SET(RSPAMADMSRC rspamadm.c control.c confighelp.c configwizard.c - corpus_test.c stat_convert.c signtool.c lua_repl.c diff --git a/src/rspamadm/commands.c b/src/rspamadm/commands.c index d787713f6..87b953050 100644 --- a/src/rspamadm/commands.c +++ b/src/rspamadm/commands.c @@ -31,7 +31,6 @@ extern struct rspamadm_command signtool_command; extern struct rspamadm_command lua_command; extern struct rspamadm_command dkim_keygen_command; extern struct rspamadm_command configwizard_command; -extern struct rspamadm_command corpus_test_command; extern struct rspamadm_command rescore_command; const struct rspamadm_command *commands[] = { @@ -49,7 +48,6 @@ const struct rspamadm_command *commands[] = { &lua_command, &dkim_keygen_command, &configwizard_command, - &corpus_test_command, &rescore_command, NULL }; diff --git a/src/rspamadm/corpus_test.c b/src/rspamadm/corpus_test.c deleted file mode 100644 index abf7135b7..000000000 --- a/src/rspamadm/corpus_test.c +++ /dev/null @@ -1,126 +0,0 @@ -/*- - * Copyright 2017 Pragadeesh C - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "rspamadm.h" -#include "config.h" -#include "lua/lua_common.h" - -static gchar *ham_directory = NULL; -static gchar *spam_directory = NULL; -static gchar *output_location = "results.log"; -static gint connections = 10; -static gdouble timeout = 60.0; - -static void rspamadm_corpus_test (gint argc, gchar **argv, - const struct rspamadm_command *cmd); -static const char *rspamadm_corpus_test_help (gboolean full_help, - const struct rspamadm_command *cmd); - -struct rspamadm_command corpus_test_command = { - .name = "corpus_test", - .flags = 0, - .help = rspamadm_corpus_test_help, - .run = rspamadm_corpus_test -}; - -static GOptionEntry entries[] = { - {"ham", 'h', 0, G_OPTION_ARG_FILENAME, &ham_directory, - "Ham directory", NULL}, - {"spam", 's', 0, G_OPTION_ARG_FILENAME, &spam_directory, - "Spam directory", NULL}, - {"output", 'o', 0, G_OPTION_ARG_FILENAME, &output_location, - "Log output location", NULL}, - {"connections", 'n', 0, G_OPTION_ARG_INT, &connections, - "Number of parellel connections [Default: 10]", NULL}, - {"timeout", 't', 0, G_OPTION_ARG_DOUBLE, &timeout, - "Timeout for connections [Default: 60]", NULL}, - {NULL, 0, 0, G_OPTION_ARG_NONE, NULL, NULL, NULL} -}; - -static const char * -rspamadm_corpus_test_help (gboolean full_help, const struct rspamadm_command *cmd) -{ - const char *help_str; - - if (full_help) { - help_str = "Create logs files from email corpus\n\n" - "Usage: rspamadm corpus_test [-h <ham_directory>]" - " [-s <spam_directory>]\n" - "Where option are:\n\n" - "-h: path to ham directory\n" - "-s: path to spam directory\n" - "-n: maximum parallel connections\n" - "-o: log output file\n" - "-t: timeout for rspamc operations (default: 60)\n"; - - } - - else { - help_str = "Create logs files from email corpus"; - } - - return help_str; -} - -static void -rspamadm_corpus_test (gint argc, gchar **argv, const struct rspamadm_command *cmd) -{ - GOptionContext *context; - GError *error = NULL; - lua_State *L; - ucl_object_t *obj; - - context = g_option_context_new ( - "corpus_test - create logs files from email corpus"); - - g_option_context_set_summary (context, - "Summary:\n Rspamd administration utility version " - RVERSION - "\n Release id: " - RID); - - g_option_context_add_main_entries (context, entries, NULL); - g_option_context_set_ignore_unknown_options (context, TRUE); - - if (!g_option_context_parse (context, &argc, &argv, &error)) { - rspamd_fprintf (stderr, "option parsing failed: %s\n", error->message); - g_error_free (error); - exit(1); - } - - L = rspamd_lua_init (); - rspamd_lua_set_path(L, NULL, ucl_vars); - - obj = ucl_object_typed_new (UCL_OBJECT); - ucl_object_insert_key (obj, ucl_object_fromstring (ham_directory), - "ham_directory", 0, false); - ucl_object_insert_key (obj, ucl_object_fromstring (spam_directory), - "spam_directory", 0, false); - ucl_object_insert_key (obj, ucl_object_fromstring (output_location), - "output_location", 0, false); - ucl_object_insert_key (obj, ucl_object_fromint (connections), - "connections", 0, false); - ucl_object_insert_key (obj, ucl_object_fromdouble (timeout), - "timeout", 0, false); - - rspamadm_execute_lua_ucl_subr (L, - argc, - argv, - obj, - "corpus_test"); - - ucl_object_unref (obj); -} |