From d6ba63371f1558539c9b0fab1640f80dae699bae Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Wed, 15 Oct 2014 13:35:09 +0100 Subject: Send controller reply now accepts variadic args. --- src/libserver/worker_util.c | 13 +++++++++---- src/libserver/worker_util.h | 3 +-- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src/libserver') diff --git a/src/libserver/worker_util.c b/src/libserver/worker_util.c index 20ef1fc15..5abf77cf2 100644 --- a/src/libserver/worker_util.c +++ b/src/libserver/worker_util.c @@ -189,17 +189,22 @@ rspamd_worker_stop_accept (struct rspamd_worker *worker) void rspamd_controller_send_error (struct rspamd_http_connection_entry *entry, - gint code, - const gchar *error_msg) + gint code, const gchar *error_msg, ...) { struct rspamd_http_message *msg; + va_list args; msg = rspamd_http_new_message (HTTP_RESPONSE); + + va_start (args, error_msg); + msg->status = g_string_sized_new (128); + rspamd_vprintf_gstring (msg->status, error_msg, args); + va_end (args); + msg->date = time (NULL); msg->code = code; msg->body = g_string_sized_new (128); - msg->status = g_string_new (error_msg); - rspamd_printf_gstring (msg->body, "{\"error\":\"%s\"}", error_msg); + rspamd_printf_gstring (msg->body, "{\"error\":\"%v\"}", msg->status); rspamd_http_connection_reset (entry->conn); rspamd_http_connection_write_message (entry->conn, msg, diff --git a/src/libserver/worker_util.h b/src/libserver/worker_util.h index d1aa1e862..f8cbccfa5 100644 --- a/src/libserver/worker_util.h +++ b/src/libserver/worker_util.h @@ -80,8 +80,7 @@ struct rspamd_custom_controller_command { * @param error_msg error message */ void rspamd_controller_send_error (struct rspamd_http_connection_entry *entry, - gint code, - const gchar *error_msg); + gint code, const gchar *error_msg, ...); /** * Send a custom string using HTTP -- cgit v1.2.3