|
REALHOSTNAME_SA(3)
Contents
|
realhostname_sa -- convert a struct sockaddr to the real host name
System Utilities Library (libutil, -lutil)
#include <sys/types.h>
#include <netinet/in.h>
#include <libutil.h>
int
realhostname_sa(char *host, size_t hsize, struct sockaddr *addr,
int addrlen);
The function realhostname_sa() converts addr to the corresponding host
name. This is done by resolving addr to a host name and then ensuring
that the host name resolves back to addr.
host must point to a buffer of at least hsize bytes, and will always be
written to by this function.
If the name resolution doesn't work both ways or if the host name is
longer than hsize bytes, getnameinfo(3) with NI_NUMERICHOST specified, is
used to convert addr to an ASCII form.
If the string written to host is hsize bytes long, host will not be NUL
terminated.
The realhostname_sa() function will return one of the following constants
which are defined in <libutil.h>:
HOSTNAME_FOUND
A valid host name was found.
HOSTNAME_INCORRECTNAME
A host name was found, but it did not resolve back to the passed
ip. host now contains the numeric value of ip.
HOSTNAME_INVALIDADDR
ip could not be resolved. host now contains the numeric value of
ip.
HOSTNAME_INVALIDNAME
A host name was found, but it could not be resolved back to any
ip number. host now contains the numeric value of ip.
getaddrinfo(3), getnameinfo(3), realhostname(3)
FreeBSD 5.2.1 January 11, 2000 FreeBSD 5.2.1 [ Back ] |