--- Stas Bekman <[EMAIL PROTECTED]> wrote: > ColinB wrote: > > I am compiling mod_perl 2.0 on Solaris 9. > > > > When I run "make test" for mod_perl 2.0 it fails almost immediately > > with > > > > file vhost.c, line 232, assertion "rv == APR_SUCCESS" failed > > > > after it calls apr_sockaddr_info_get() with the hostname > > "255.255.255.255". I think this may have something to do with the > > test's http.conf containing _default_ virtual hostnames. > > > > apr_sockaddr_info_get() eventually calls getaddrinfo() with the > > nodename "255.255.255.255" which returns EAI_NONAME (no address > > associated with nodename). > > > > But if I call getaddrinfo() for 255.255.255.255 from another > machine > > (which is running Solaris 8 although this may be unrelated), it > returns > > 0. > > > > Is there something wrong with the configuration of my Solaris 9 > machine > > - should getaddrinfo() always return 0 for 255.255.255.255 ? > > What happens if you add a simple vhost to your httpd.conf without > even using > mod_perl. I bet that this is an apache issue.
I think I found a partial answer to this. I was searching the Apache bug database and I found a similar report (number 20063) by someone who was using SSL (I'm not) but had exactly the same assertion. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=20063 It seems that a _default_ virtual host in httpd.conf which resolvs to 255.255.255.255 causes getaddrinfo to fail in Solaris unless the "hosts:" line in /etc/nsswitch.conf contained "dns". I found that my hosts line did not contain dns, so I added it and sure enough, it solved the problem. It seems that only the presence of "dns" allows getaddrinfo to work correctly. The bug report was rejected as being an OS problem, so the "solution" is really a just a workaround. Colin __________________________________ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com