HP-UX Reference (11i v3 07/02) - 3 Library Functions A-M (vol 6)
i
inet(3N) inet(3N)
When a two-part address is supplied, the last part is interpreted as a 24-bit quantity and placed in the
right-most three bytes of the network address. This makes the two-part address format convenient for
specifying Class A network addresses as in net.host
.
When only one part is given, the value is stored directly in the network address without any byte rear-
rangement.
All numbers supplied as parts in dot notation can be decimal, octal, or hexadecimal, as specified in the C
language (i.e., a leading 0x or 0X implies hexadecimal; a leading 0 implies octal; otherwise, the number is
interpreted as decimal).
In a multithreaded application,
inet_ntoa() uses thread-specific storage that is re-used in each call.
The return value, the character string, should be unique for each thread and should be saved, if desired,
before the thread makes the next
inet_ntoa() call.
Obsolescent Interfaces
The following reentrant interface has been moved from
libc to libd4r.
int inet_ntoa_r(struct in_addr
in, char *buffer
, int buflen);
It is included to support existing applications and may be removed in a future release. New multithreaded
applications should use the regular API (those without the _r suffix.)
The reentrant interface functions the same as the regular interface without the _r suffix. However,
inet_ntoa_r() expects to be passed the address of a character buffer and will store the result at the
supplied location. If the buffer is of insufficient length, -1 is returned. If the operation is successful, the
length of the result string (not including the terminating null character) is returned.
RETURN VALUE
The routines return values as described in the DESCRIPTION section. inet_addr() and
inet_network() return -1 (
INADDR_NONE ) for malformed requests.
WARNINGS
The return value from the
inet_addr() function cannot distinguish between a failure (-1) and a local
broadcast address (255.255.255.255). This can be handled by using the
inet_pton() function instead of
the
inet_addr() function.
AUTHOR
The inet routines were developed by the University of California, Berkeley.
SEE ALSO
gethostent(3N), getnetent(3N), inet6(3N), hosts(4), networks(4), thread_safety(5).
HP-UX 11i Version 3: February 2007 − 2 − Hewlett-Packard Company 675