getaddrinfo() AI_IDN feature test

Martin Lambers marlam@marlam.de
Mon Mar 9 18:16:00 GMT 2015


On Mon, 9 Mar 2015 13:30:55 -0400, Mike Frysinger wrote:
> On 09 Mar 2015 09:58, Martin Lambers wrote:
> > On Sun, 8 Mar 2015 09:29:14 -0400, Mike Frysinger wrote:
> > > On 01 Jan 2015 08:03, Martin Lambers wrote:
> > > > I recently changed two programs to use the AI_IDN flag for
> > > > getaddrinfo() instead of using libidn.
> > > > 
> > > > Users reported runtime failure (EAI_BADFLAGS) on systems where
> > > > glibc was build without libidn support.
> > > > 
> > > > On these systems, AI_IDN was defined nevertheless -- is this
> > > > intended behaviour? If so, then #ifdef AI_IDN is not enough;
> > > > what is the recommended way to check if AI_IDN actually works?
> > > 
> > > what version of glibc exactly ?  my reading of the git history is
> > > that since AI_IDN was added to the header for 2.4, glibc has
> > > unconditionally supported it. -mike
> > 
> > The glibc as shipped with AstLinux <http://www.astlinux.org>. I do
> > not have more information. Yes, AI_IDN is added unconditionally,
> > but it is only actually accepted when glibc is compiled with
> > libidn. See glibc-2.21/sysdeps/posix/getaddrinfo.c lines 2344-2347.
> 
> yes, but if you trace back the code, you'll see that:
> (1) libidn is always bundled with glibc
> (2) the libidn configure scripts always define HAVE_LIBIDN
> -mike

Well, you can build glibc with --enable-add-ons="", thus disabling
libidn, as the AstLinux people do. I have no idea why one would do that,
but such systems exist.

Regards,
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://sourceware.org/pipermail/libc-help/attachments/20150309/2e82fecd/attachment.sig>


More information about the Libc-help mailing list