dwww Home | Manual pages | Find package

Socket::GetAddrInfo::EUser3Contributed Perl DocuSocket::GetAddrInfo::Emul(3pm)

NAME
       "Socket::GetAddrInfo::Emul" - Pure Perl emulation of "getaddrinfo" and
       "getnameinfo" using IPv4-only legacy resolvers

DESCRIPTION
       "Socket::GetAddrInfo" attempts to provide the "getaddrinfo" and
       "getnameinfo" functions by some XS code that calls the real functions
       in libc. If for some reason this cannot be done; either there is no C
       compiler, or libc does not provide these functions, then they will be
       emulated using the legacy resolvers "gethostbyname", etc... These
       emulations are not a complete replacement of the real functions,
       because they only support IPv4 (the "AF_INET" socket family). In this
       case, the following restrictions will apply.

   getaddrinfo
       •   If the "family" hint is supplied, it must be "AF_INET". Any other
           value will result in an error thrown by "croak".

       •   The only supported "flags" hint values are "AI_PASSIVE",
           "AI_CANONNAME", "AI_NUMERICSERV" and "AI_NUMERICHOST".

           The flags "AI_V4MAPPED" and "AI_ALL" are recognised but ignored, as
           they do not apply to "AF_INET" lookups.  Since this function only
           returns "AF_INET" addresses, it does not need to probe the system
           for configured addresses in other families, so the "AI_ADDRCONFIG"
           flag is also ignored.

           Note that "AI_NUMERICSERV" is an extension not defined by RFC 2553,
           but is provided by most OSes. It is possible (though unlikely) that
           even the native XS implementation does not recognise this constant.

   getnameinfo
       •   If the sockaddr family of $addr is anything other than "AF_INET",
           an error will be thrown with "croak".

       •   The only supported $flags values are "NI_NUMERICHOST",
           "NI_NUMERICSERV", "NI_NOFQDN", "NI_NAMEREQD" and "NI_DGRAM".

IDN SUPPORT
       This pure-perl emulation provides the IDN constants such as "AI_IDN"
       and "NI_IDN", but the "getaddrinfo" and "getnameinfo" functions will
       croak if passed these flags. This should allow a program to probe for
       their support, and fall back to some other behaviour instead.

AUTHOR
       Paul Evans <leonerd@leonerd.org.uk>

perl v5.34.0                      2022-10-13    Socket::GetAddrInfo::Emul(3pm)

Generated by dwww version 1.15 on Sun Jun 30 10:56:24 CEST 2024.