From ebe9a34471e0676b5d7a222bab946edab099dd41 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Mon, 12 Nov 2018 11:30:42 +0000 Subject: [PATCH] [Minor] Set proper exit code on errors in rspamc Issue: #2627 Closes: #2627 --- src/client/rspamc.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/client/rspamc.c b/src/client/rspamc.c index f7fa2c24a..7f333f9d7 100644 --- a/src/client/rspamc.c +++ b/src/client/rspamc.c @@ -68,6 +68,8 @@ static gchar *user_agent = "rspamc"; static GList *children; static GPatternSpec **exclude_compiled = NULL; +static gint retcode = EXIT_SUCCESS; + #define ADD_CLIENT_HEADER(o, n, v) do { \ struct rspamd_http_client_header *nh; \ nh = g_malloc (sizeof (*nh)); \ @@ -1588,6 +1590,10 @@ rspamc_client_cb (struct rspamd_client_connection *conn, rspamd_client_destroy (conn); g_free (cbdata->filename); g_free (cbdata); + + if (err) { + retcode = EXIT_FAILURE; + } } static void @@ -2017,5 +2023,6 @@ main (gint argc, gchar **argv, gchar **env) g_pattern_spec_free (exclude_compiled[i]); } - return ret; + /* Mix retcode (return from Rspamd side) and ret (return from subprocess) */ + return ret ^ retcode; } -- 2.39.5