We are currently using phobos from
http://downloads.dlang.org/releases/2016/dmd.2.071.0.linux.zip
Phobos' InternetAddress contained therein uses gethostbyname and
not gethostbyname_r; std.socket imports core.sys.posix.netdb,
which only makes gethostbyname available.
gethostbyname_r would be made available by importing
std.c.linux.socket, but this is marked as deprecated in favour of
core.sys.posix.BLAH
The use of gethostbyname is a problem for us because, even though
std.socket synchronises access to the function, we are using a
third party (non-D) library in our application which also uses
gethostbyname, and of course that library doesn't care about the
synchronisation in std.socket.
Is there a reason why gethostbyname_r isn't usually used?
Even for those environments which don't have it, version(linux)
(or whatever) in core.sys.posix.netdb should be able to deal with
that easily, shouldn't it?