Name
inet_ntop - convert IPv4 and IPv6 addresses from binary to text formLibrary
Standard C library ( libc ", " -lc )Synopsis
#include <arpa/inet.h> const char *inet_ntop(int " af ", const void *restrict src ,
char " dst "[restrict ." size "], socklen_t size );
Description
This function converts the network address structure src in the af address family into a character string. The resulting string is copied to the buffer pointed to bydst
, which must be a non-null pointer. The caller specifies the number of bytes available in this buffer in the argument size
. inet_ntop() extends the inet_ntoa(3) function to support multiple address families, inet_ntoa(3) is now considered to be deprecated in favor of inet_ntop() The following address families are currently supported:
AF_INET src points to a struct in_addr (in network byte order) which is converted to an IPv4 network address in the dotted-decimal format, "ddd.ddd.ddd.ddd". The buffer dst must be at least INET_ADDRSTRLEN bytes long.
AF_INET6 src points to a struct in6_addr (in network byte order) which is converted to a representation of this address in the most appropriate IPv6 network address format for this address. The buffer dst must be at least INET6_ADDRSTRLEN bytes long.
Return Value
On success, inet_ntop() returns a non-null pointer todst
. NULL is returned if there was an error, with errno set to indicate the error. Errors
EAFNOSUPPORT af was not a valid address family.
ENOSPC The converted address string would exceed the size given by size
.
Attributes
For an explanation of the terms used in this section, see attributes(7).Interface | Attribute | Value |
T} | Thread safety | MT-Safe locale |
Standards
POSIX.1-2008.History
POSIX.1-2001.Note that RFC\ 2553 defines a prototype where the last argument size is of type size_t
. Many systems follow RFC\ 2553. glibc 2.0 and 2.1 have size_t
, but 2.2 and later have socklen_t
.
Bugs
AF_INET6 converts IPv4-mapped IPv6 addresses into an IPv6 format.Examples
See inet_pton(3).See Also
- getnameinfo(3),
- inet(3),
- inet_pton(3)