diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-06-13 15:44:16 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-06-13 17:31:29 +0100 |
commit | 0c5266d324b0e80d1606b9cf49af0ca34799ad5c (patch) | |
tree | 506d270092941163713489551ab5a1dd078f7f20 /src/libutil/ssl_util.c | |
parent | bc6a03a1086e8f7d1c1211633f61ee25b12e16a2 (diff) | |
download | rspamd-0c5266d324b0e80d1606b9cf49af0ca34799ad5c.tar.gz rspamd-0c5266d324b0e80d1606b9cf49af0ca34799ad5c.zip |
[Feature] Allow https maps
Diffstat (limited to 'src/libutil/ssl_util.c')
-rw-r--r-- | src/libutil/ssl_util.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libutil/ssl_util.c b/src/libutil/ssl_util.c index 6c426761b..17bd2880d 100644 --- a/src/libutil/ssl_util.c +++ b/src/libutil/ssl_util.c @@ -392,13 +392,14 @@ rspamd_ssl_event_handler (gint fd, short what, gpointer ud) } struct rspamd_ssl_connection * -rspamd_ssl_connection_new (gpointer ssl_ctx) +rspamd_ssl_connection_new (gpointer ssl_ctx, struct event_base *ev_base) { struct rspamd_ssl_connection *c; g_assert (ssl_ctx != NULL); c = g_slice_alloc0 (sizeof (*c)); c->ssl = SSL_new (ssl_ctx); + c->ev_base = ev_base; return c; } @@ -424,7 +425,6 @@ rspamd_ssl_connect_fd (struct rspamd_ssl_connection *conn, gint fd, conn->handler = handler; conn->err_handler = err_handler; conn->handler_data = handler_data; - conn->ev_base = event_get_base (ev); if (SSL_set_fd (conn->ssl, fd) != 1) { return FALSE; @@ -444,7 +444,9 @@ rspamd_ssl_connect_fd (struct rspamd_ssl_connection *conn, gint fd, if (ret == 1) { conn->state = ssl_conn_connected; event_set (ev, fd, EV_WRITE, rspamd_ssl_event_handler, conn); - event_base_set (conn->ev_base, ev); + if (conn->ev_base) { + event_base_set (conn->ev_base, ev); + } event_add (ev, tv); } else { |