]> source.dussan.org Git - rspamd.git/commitdiff
Fix wildcard addresses in config.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 3 Jun 2013 15:52:47 +0000 (16:52 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 3 Jun 2013 15:52:47 +0000 (16:52 +0100)
src/cfg_utils.c

index 78530218d6cce5fba6755b57861f5c9e3229f1a2..bb673c7d96d280e6d7713843c24cd9e0a4f81f8e 100644 (file)
@@ -71,8 +71,12 @@ parse_host_port_priority (memory_pool_t *pool, const gchar *str, gchar **addr, g
        hints.ai_next = NULL;
 
        if (strcmp (tokens[0], "*") == 0) {
-               cur_tok = NULL;
-               hints.ai_flags |= AI_PASSIVE;
+               /* XXX: actually we still cannot listen on multiply protocols */
+               if (pool != NULL) {
+                       *addr = memory_pool_alloc (pool, INET_ADDRSTRLEN + 1);
+               }
+               rspamd_strlcpy (*addr, "0.0.0.0", INET_ADDRSTRLEN + 1);
+               goto port_parse;
        }
        else {
                cur_tok = tokens[0];
@@ -99,6 +103,8 @@ parse_host_port_priority (memory_pool_t *pool, const gchar *str, gchar **addr, g
                msg_err ("address resolution for %s failed: %s", tokens[0], gai_strerror (r));
                goto err;
        }
+
+port_parse:
        if (tokens[1] != NULL) {
                /* Port part */
                if (port != NULL) {