inet_ntop — convert IPv4 and IPv6 addresses from binary to text form
|const void *src,|
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 by
dst, which must be a non-null
pointer. The caller specifies the number of bytes available
in this buffer in the argument
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:
to a struct
in_addr (in network byte order) which is
converted to an IPv4 network address in the
dotted-decimal format, "
be at least
INET_ADDRSTRLEN bytes long.
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
returns a non-null pointer to
dst. NULL is returned if there
was an error, with
errno set to
indicate the error.
af was not a
valid address family.
The converted address string would exceed the size
For an explanation of the terms used in this section, see attributes(7).
||Thread safety||MT-Safe locale|
POSIX.1-2001, POSIX.1-2008. 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.
This page is part of release 4.07 of the Linux
man-pages project. A
description of the project, information about reporting bugs,
and the latest version of this page, can be found at
Copyright 2000 Sam Varshavchik <mrsamcourier-mta.com>
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Since the Linux kernel and libraries are constantly changing, this
manual page may be incorrect or out-of-date. The author(s) assume no
responsibility for errors or omissions, or for damages resulting from
the use of the information contained herein. The author(s) may not
have taken the same level of care in the production of this manual,
which is licensed free of charge, as they might when working
Formatted or processed versions of this manual, if unaccompanied by
the source, must acknowledge the copyright and authors of this work.
References: RFC 2553