Changes for version 0.20

  • Added bin/getaddrinfo and bin/getnameinfo script (replaces previous examples/gai.pl)
  • Split Socket6api into its own module
  • Emulate AI_NUMERICSERV in PP emulation since most OSes in practice support it, even though RFC 2553 doesn't define it
  • Provide Exporter tags for named constants
  • Don't even attempt to build XS code if no C compiler is available
  • Try to use core's Socket::getaddrinfo if it exists; as it does on Socket 1.93 (perl 5.13.9).
  • Avoid Test::Exception and Test::Warn as they're non-core and pull in Sub::UpLevel
  • Use ExtUtils::CChecker 0.06's ability to write a config.h rather than using C commandline -DFOO that might not be portable
  • Moved legacy resolver emulation code into its own PP.pm for code neatness
  • BUGFIXES:
    • Bugfix for non-C99 compilers - avoid C99-style struct initialiser
    • Bugfix for threaded perls - aTHX/pTHX in err_to_SV()
    • More MSWin32 fixes [rurban]
    • Use ppport.h

Documentation

command-line tool to getaddrinfo(3) resolver
command-line tool to getnameinfo(3) resolver

Modules

RFC 2553's getaddrinfo and getnameinfo functions.
Pure Perl emulation of getaddrinfo and getnameinfo using IPv4-only legacy resolvers
Provide Socket::GetAddrInfo functions using Socket6 API

Provides

in lib/Socket/GetAddrInfo/Core.pm
in lib/Socket/GetAddrInfo/XS.pm