backend and are more robust against SIOCGIFCONF alignment issue.
now getifaddrs always takes care of the issue. (sync with kame tree)
use weak symbol just in case.
ancillary data alignment will be ALIGNBYTES, not sizeof(long) - 1, from now.
CMSG_xx will NOT resolve into constant. if you use CMSG_xx to allocate
arrays, you'll lose.
bump shlib minor for libc.
NOTE: if you are on top of arch with ALIGNBYTES != sizeof(long) - 1,
you need to recompile IPv6-related binaries. there is no way to guarantee
backward compat in this aspect. sorry for this. this should be the last
backward compat breakage for IPv6-related ancillary data manipulation.
(we still have PR 9516 for unix-domain sockets...)
get{addr,name} info are implemented to have as little impact to existing
resolver code as possible, so they are NOT the optimal implementation.
They are at this moment not very thread safe (as they call
gethostby{name,addr}).
(shlib minor version)++, as new interfaces are added.
TODO: getipnodeby{name,addr} - which needs total reimplementation of
gethostby{name,addr}.
upgrade rcmd.c for multiple af support (needed for IPv6-ready rsh/rlogin)
- incompletely specified ip addresses
- ip addresses specified in hex
like inet_aton() and inet_addr(). This broke parsing of /etc/hosts
(127.1 localhost stopped working before the resolver is started).
The fix is to use the inet_aton() code to implement inet_pton4(), and
then use the new inet_pton4() code to implement inet_aton() and inet_addr().
At that point inet_addr.c is empty and has been removed.
These may be "good enough" for big-endian systems that do not have assembly
language versions of their own. A compiler should be able to do a fairly
good job optimising them, it probably won't be smart enough to omit the
stack frame, but then again, these functions won't be called unless the
macro versions are undef'd.
On the other hand, they are only intended for bootstrap purposes on little-
endian systems. They should be replaced with assembly language versions as
soon as possible.