From: Vsevolod Stakhov Date: Tue, 14 Jun 2016 08:20:42 +0000 (+0100) Subject: [Fix] Set host attribute properly when making HTTP request from lua X-Git-Tag: 1.3.0~349 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=6cfd6d651b45a6cdbdb3baa8bbfdb69e685aeb45;p=rspamd.git [Fix] Set host attribute properly when making HTTP request from lua --- diff --git a/src/lua/lua_http.c b/src/lua/lua_http.c index 298da5a47..0c4eb976d 100644 --- a/src/lua/lua_http.c +++ b/src/lua/lua_http.c @@ -65,6 +65,7 @@ struct lua_http_cbdata { struct timeval tv; rspamd_inet_addr_t *addr; gchar *mime_type; + gchar *host; gint fd; gint cbref; }; @@ -110,6 +111,10 @@ lua_http_fin (gpointer arg) g_free (cbd->mime_type); } + if (cbd->host) { + g_free (cbd->host); + } + g_slice_free1 (sizeof (struct lua_http_cbdata), cbd); } @@ -210,7 +215,8 @@ lua_http_make_connection (struct lua_http_cbdata *cbd) NULL); rspamd_http_connection_write_message (cbd->conn, cbd->msg, - NULL, cbd->mime_type, cbd, fd, &cbd->tv, cbd->ev_base); + cbd->host, cbd->mime_type, cbd, fd, + &cbd->tv, cbd->ev_base); /* Message is now owned by a connection object */ cbd->msg = NULL; @@ -451,6 +457,10 @@ lua_http_request (lua_State *L) msec_to_tv (timeout, &cbd->tv); cbd->fd = -1; + if (msg->host) { + cbd->host = rspamd_fstring_cstr (msg->host); + } + if (session) { cbd->session = session; rspamd_session_add_event (session,