From fbcb96e5541229ba0bf4d0b0359c3200f0f452ab Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Sat, 7 May 2016 13:33:21 +0100 Subject: [PATCH] [Feature] Propagate HTTP result string when using proxy --- src/rspamd_proxy.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/rspamd_proxy.c b/src/rspamd_proxy.c index 0ddcf1014..157fab4a6 100644 --- a/src/rspamd_proxy.c +++ b/src/rspamd_proxy.c @@ -926,12 +926,14 @@ proxy_open_mirror_connections (struct rspamd_proxy_session *session) } static void -proxy_client_write_error (struct rspamd_proxy_session *session, gint code) +proxy_client_write_error (struct rspamd_proxy_session *session, gint code, + const gchar *status) { struct rspamd_http_message *reply; reply = rspamd_http_new_message (HTTP_RESPONSE); reply->code = code; + reply->status = rspamd_fstring_new_init (status, strlen (status)); rspamd_http_connection_write_message (session->client_conn, reply, NULL, NULL, session, session->client_sock, &session->ctx->io_tv, session->ctx->ev_base); @@ -948,7 +950,8 @@ proxy_backend_master_error_handler (struct rspamd_http_connection *conn, GError rspamd_inet_address_to_string (rspamd_upstream_addr (session->master_conn->up)), err->message); /* Terminate session immediately */ - proxy_client_write_error (session, err->code); + proxy_client_write_error (session, err->code, err->message); + proxy_backend_close_connection (session->master_conn); } static gint -- 2.39.5