diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-11-28 10:16:06 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-11-28 10:16:06 +0000 |
commit | 3b9b23600f97365585c32827c0b6df4b620c8653 (patch) | |
tree | a38293e6ab20d131f4f0cf6e3737b0c373854305 /src/libserver/dns.c | |
parent | 2a1dc20915e6a0375dbc38761954e1aee383ac98 (diff) | |
download | rspamd-3b9b23600f97365585c32827c0b6df4b620c8653.tar.gz rspamd-3b9b23600f97365585c32827c0b6df4b620c8653.zip |
[Fix] Do not resolve numeric IP addresses due to ipv6 insanity
Diffstat (limited to 'src/libserver/dns.c')
-rw-r--r-- | src/libserver/dns.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libserver/dns.c b/src/libserver/dns.c index 34b685260..b6a38dab0 100644 --- a/src/libserver/dns.c +++ b/src/libserver/dns.c @@ -216,6 +216,8 @@ rspamd_dns_server_init (struct upstream *up, gpointer ud) rspamd_inet_address_get_port (addr), 0, 8); } + g_assert (serv != NULL); + elt = g_slice_alloc0 (sizeof (*elt)); elt->server = serv; elt->lib_data = up; @@ -265,6 +267,8 @@ dns_resolver_init (rspamd_logger_t *logger, } else { dns_resolver->ups = rspamd_upstreams_create (cfg->ups_ctx); + rspamd_upstreams_set_flags (dns_resolver->ups, + RSPAMD_UPSTREAM_FLAG_NORESOLVE); if (!rspamd_upstreams_from_ucl (dns_resolver->ups, cfg->nameservers, 53, dns_resolver)) { @@ -277,7 +281,6 @@ dns_resolver_init (rspamd_logger_t *logger, rspamd_upstreams_foreach (dns_resolver->ups, rspamd_dns_server_init, dns_resolver); - rspamd_upstreams_set_flags (dns_resolver->ups, RSPAMD_UPSTREAM_FLAG_NORESOLVE); rdns_resolver_set_upstream_lib (dns_resolver->r, &rspamd_ups_ctx, dns_resolver->ups); } |