Re: IPv6 support and Windows

From: Guido Serassio <guido.serassio@dont-contact.us>
Date: Wed, 15 Aug 2007 09:44:25 +0200

Hi Amos,

At 00.13 15/08/2007, Amos Jeffries wrote:
> > Hi Amos,
> >
> > Not good news here ... :-(
> >
> > We have a problem:
> > You have used getaddrinfo() and freeaddrinfo() functions, but on
> > Windows they are available only starting from Windows XP. This means
> > that your code, even if compiled without IPv6 support, cannot run on
> > Windows 2000.
> >
> > I'm also not sure if getaddrinfo() and freeaddrinfo() functions are
> > available on all systems, someone know something about ?
>
>We have already tested Linux 2.6+ and FreeBSD 4.5+ (4.3 _says_ it has them)
>Not sure about Solaris, OS2, or Darwin yet.

We also must check OpenBSD, NetBSD, Tru64, Irix and AIX. I have the first four.

> > I have found two interesting substitute here:
> >
><AYJ: pulled these out of order due to my response sequence>
>
> > http://doxygen.postgresql.org/getaddrinfo_8c-source.html
> >
> > I'm not sure if the licensing of the implementation coming from the
> > PostgreSQL allow its usage in Squid.
> >
>
>PostGres looks good until I audit the code.
>These are both killer bugs for us:
>" Bugs: - only one addrinfo is set even though hintp is NULL or
> ai_socktype is 0
> - AI_CANONNAME is not supported.
>"
>
>
> >
> http://www.koders.com/c/fid11C8C256BE9D1C263E0725F657383F62F24759F5.aspx?s=md5
>
>The very first line says it's a (partial) implementation which makes me
>think there are edge cases missing, etc. Though a quick check of the code
>I couldn't see any obvious problems or notes about killer bugs.
>
>I'm sure there are more re-writes around, and sure enough Google
>codesearch find me a clean fetchmail implementation of JUST getaddrinfo(),
>freeaddrinfo() and gai_strerror().
>
>ftp://ftp.sunfreeware.com/pub/freeware/SOURCES/fetchmail-6.3.6.tar.gz&cs_f=fetchmail-6.3.6/libesmtp/getaddrinfo.c#a0
>
>That is probably better for us being more complete in the IPv4-area. The
>crunch now will be whether getnameinfo() is also that unsupported in NT/2k
>?

We must mix this code with the PostgreSQL one: on Windows the usage
of native functions when available is mandatory.
And sure, also getnameinfo() is not available on Windows 2000.

Regards

Guido

-
========================================================
Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135 Fax. : +39.011.9781115
Email: guido.serassio@acmeconsulting.it
WWW: http://www.acmeconsulting.it/
Received on Wed Aug 15 2007 - 01:44:35 MDT

This archive was generated by hypermail pre-2.1.9 : Fri Aug 31 2007 - 12:00:05 MDT