Accept * as an alias for the default ipv4 listen address.
authorreyk <reyk@openbsd.org>
Thu, 18 Dec 2014 10:10:11 +0000 (10:10 +0000)
committerreyk <reyk@openbsd.org>
Thu, 18 Dec 2014 10:10:11 +0000 (10:10 +0000)
OK jsg@

usr.sbin/httpd/parse.y

index 849d350..84b70c8 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: parse.y,v 1.44 2014/12/12 14:45:59 reyk Exp $ */
+/*     $OpenBSD: parse.y,v 1.45 2014/12/18 10:10:11 reyk Exp $ */
 
 /*
  * Copyright (c) 2007 - 2014 Reyk Floeter <reyk@openbsd.org>
@@ -1123,7 +1123,7 @@ nodigits:
        x != '!' && x != '=' && x != '#' && \
        x != ',' && x != ';' && x != '/'))
 
-       if (isalnum(c) || c == ':' || c == '_') {
+       if (isalnum(c) || c == ':' || c == '_' || c == '*') {
                do {
                        *p++ = c;
                        if ((unsigned)(p-buf) >= sizeof(buf)) {
@@ -1605,6 +1605,9 @@ host(const char *s, struct addresslist *al, int max,
 {
        struct address *h;
 
+       if (strcmp("*", s) == 0)
+               s = "0.0.0.0";
+
        h = host_v4(s);
 
        /* IPv6 address? */