httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeroen Massar <jer...@unfix.org>
Subject Re: Apache 2.0.32 beta is available
Date Tue, 19 Feb 2002 16:29:38 GMT


On Mon, 18 Feb 2002, Bill Stoddard wrote:

> > On Sun, 17 Feb 2002, Justin Erenkrantz wrote:
> >
> > <SNIP>
<SNIP>
> > Unless someone submitted patches since the 2.0.32-alpha tarball last
> > week. I don't think Win32/nt works especially as it relies on
> > sockaddr_in for the mpm_winnt. I figured and fixed this, this weekend when
> > I wanted too see if the IPv6 support for Apache on NT worked or not.
> > It did compile but without IPv6 support. After some hours of changing
> > things, enabling getaddrinfo() etc. I suddenly had a IPv6 enabled
> > mpm_winnt version of Apache 2.0.32. I will be cleaning up the diff tonight
> > and fixing the fact that IPv6 addresses get logged quite weirdly, which
> > is a weird offset effect. You'll probably get the diff tomorrow morning CET ;)
> 
> Cool! Thanks, will be looking for the patch.
> 
> Bill
> 

I haven't made a proper diff, nor the cleanups, but if you copy the files
from:
http://calvin.ics.hro.nl/~jeroen/apache2/apache_2.0.32-winnt-ipv6.zip

And extract them on top of the apache 2.0.32 alpha/beta tarball and
compile it should work. This _does_ however require the IPv6 headers
supplied by either the platform preview (http://msdn.microsoft.com/downloads/sdks/platform/tpipv6.asp)
and or the newer SDK's. Simply build with the InstallBin targets etc and
it should all work out fine. The newer IPv6 stacks by MS automatically
detect IPv6 presence and use it if possible. This allows for a IPv6
enabled build which should be able to run on most NT's. I say NT's here as
the IPv6 stack for 9x/ME is unknown & untested for me.

Things I have to do to clean it up:
 - fix the address copying (save_addrinfo goes wrong on me)
 - put in many "#ifdef APR_HAVE_IPV6" lines.
 - get rid of the debug stuff :)

You'll notice that the winnt_mpm now passes the listen_rec to winnt_accept()
This was the cleanest way in my opinion for it to get the address family.

There is also some weird magic, sockaddr_in6 is normally 24 bytes, but
when returned from getaddrinfo() it's always 28 hmm ;)

I'll probably have a stab on this tomorrow and pass in a diff to you guys ;)
If I am really lucky I will have my adsl line back tomorrow, carrying
printed code and using floppydisks isn't fun ;)... I got the sync.. now
they have to turn on provisioning...

Greets,
 Jeroen


Mime
View raw message