On Thu, Dec 11, 2008 at 09:28:12AM -0500, R P Herrold wrote: > On Thu, 11 Dec 2008, Jim Meyering wrote: > > >Good point. > >Yet another reason not to use gethostbyname. > >I think it's time to make the prohibition official. > > I sure hope the Cygwin 1.7, which just released yesterday to > formal beta trial, and brings in getaddrinfo() for my win 2000 > porting box, _works_ -- perhaps deprecate it for a while first > (understanding it is stated as 'prohibit all new uses ...')? We use GNULIB which provides compatability for broken/incomplete OS like cygwin > >+# Not only do they fail to deal well with ipv6, but the gethostby* > >+# functions are also not thread-safe. > > I think you mean to say here that the implementation you are > encountering is not thread safe POSIX leaves thread safety undefined, which is just as bad as marking it explicitly unsafe. "The functions gethostbyname() and gethostbyaddr() may return pointers to static data, which may be overwritten by later calls. " No code can use this function and expect to be safe when using threads. Even on an OS where its currently safe, there's no guarentee it'll stay safe in the future Furthermore they're explicitly deprecated "POSIX.1-2001 marks gethostbyaddr() and gethostbyname() obsolescent. See getaddrinfo(3), getnameinfo(3), gai_strerror(3)." Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list