Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 11 Aug 2012 17:22:48 -0400
From:      Curtis Villamizar <curtis@occnc.com>
To:        freebsd-www@freebsd.org
Cc:        Clement Laforet <clement@freebsd.org>, apache@freebsd.org, curtis@occnc.com
Subject:   patch to apache for IPv6 only httpd
Message-ID:  <201208112122.q7BLMn3g037694@gateway.ipv6.occnc.com>

next in thread | raw e-mail | index | archive | help

FYI-

This very simple patch prevents an assert when httpd is run on a
server that has no IPv4 address.  An example is a BSD jail running
with only an IPv6 address on the interface (no loopback so no
127.0.0.1 address to bind to).

Copy the patch below into the files directory as
/usr/ports/www/apache22/files/patch-server__config.c

The port maintainer is on the Cc.  No bug has been reported.

BTW- I noticed this a long time ago.  I don't remember if I reported
it or forgot to.  Appologies if this is a duplicate.  It is not in the
httpd-2.2.22.tar.bz2 tarball, in the distinfo dated 23 July 2012.

Curtis


--- ./server/config.c.orig	2010-10-07 09:56:54.000000000 -0700
+++ ./server/config.c	2011-09-26 21:20:35.000000000 -0700
@@ -1979,6 +1979,9 @@
     /* NOT virtual host; don't match any real network interface */
     rv = apr_sockaddr_info_get(&s->addrs->host_addr,
                                NULL, APR_INET, 0, 0, p);
+    if (rv != APR_SUCCESS)
+        rv = apr_sockaddr_info_get(&s->addrs->host_addr,
+                                   NULL, APR_UNSPEC, 0, 0, p);
     ap_assert(rv == APR_SUCCESS); /* otherwise: bug or no storage */
 
     s->addrs->host_port = 0; /* matches any port */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208112122.q7BLMn3g037694>