HP-UX only returns IPv6 addresses using SIOCGLIFCONF,
SIOCGIFCONF has to be used for IPv4 addresses.
Solaris uses the same code as described in the comments, which
should correctly detect all addresses when running in a zone.
This adds the code that went missing from commit e20183da.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
HP-UX only returns IPv6 addresses using SIOCGLIFCONF,
SIOCGIFCONF has to be used for IPv4 addresses.
Solaris uses the same code as described in the comments, which
should correctly detect all addresses when running in a zone.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
It broke detection of IPv4 addresses on HP-UX machines with an IPv6
loopback address. Successful resolution of at least one IPv6 address
would then skip doing a separate IPv4 lookup as required by HP-UX.
This reverts commit 76afc31e9b.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
glob.h did not define ROKEN_LIB_CALL and that caused havoc when it was
included before other roken headers, because those only check for the
existence of ROKEN_LIB_FUNCTION
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
AIX qsort() is unstable and might change the order of the elements
if they are equal, libwind require them to be in the same order as they were
on the input, pull in FreeBSD qsort and use that instead of AIX version.
The libroken-getifaddrs fails to retrive the ipv6-address in
solaris-zones but it might connect over ipv6 anyway, and then the kdc
refuses to give a ticket with the cryptic message:
kinit: krb5_get_init_creds: No ENC-TS found
A saner message ends up in the kdc's logfile.
because of a ENXIO when looking for a ipv6-address on the
ipv4-interface, the whole getlifaddrs2 fails and getifaddrs2 is run
instead and it just discovers the ipv4-address.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>