From: Vsevolod Stakhov Date: Tue, 9 Jun 2015 13:49:05 +0000 (+0100) Subject: Fix DNSless run. X-Git-Tag: 1.0.0~560 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=3a3f36fa5ec1d9a08cc0365dcafc5dc5d2cc7d08;p=rspamd.git Fix DNSless run. --- diff --git a/src/libserver/dns.c b/src/libserver/dns.c index 84fb24d3c..6c32ae205 100644 --- a/src/libserver/dns.c +++ b/src/libserver/dns.c @@ -81,6 +81,12 @@ make_dns_request (struct rspamd_dns_resolver *resolver, struct rdns_request *req; struct rspamd_dns_request_ud *reqdata = NULL; + g_assert (resolver != NULL); + + if (resolver->r == NULL) { + return FALSE; + } + if (pool != NULL) { reqdata = rspamd_mempool_alloc (pool, sizeof (struct rspamd_dns_request_ud)); @@ -155,6 +161,7 @@ dns_resolver_init (rspamd_logger_t *logger, msg_err ( "cannot parse resolv.conf and no nameservers defined, so no ways to resolve addresses"); rdns_resolver_release (new->r); + new->r = NULL; return new; } diff --git a/src/worker.c b/src/worker.c index 3d9c7dabe..61a40d25b 100644 --- a/src/worker.c +++ b/src/worker.c @@ -147,6 +147,9 @@ rspamd_worker_finish_handler (struct rspamd_http_connection *conn, rspamd_inet_address_to_string (task->client_addr)); rspamd_session_destroy (task->s); } + else if (task->processed_stages & RSPAMD_TASK_STAGE_DONE) { + rspamd_session_pending (task->s); + } return 0; }