NAME
inet_pton - Create a network address structure
SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
I int inet_pton(int af , const char * src , void * dst );
DESCRIPTION
This function converts the character string
src
into a network address structure in the
af
address family, then
copies
the network address structure to
R dst .
inet_pton(3)
extends the
inet_addr(3)
function to support multiple address families,
inet_addr(3)
is now considered to be deprecated in favor of
inet_pton(3).
The following address families are currently supported:
AF_INET
src
points to a character string containing an IPv4 network address in
the dotted-quad format, "ddd.ddd.ddd.ddd".
The address is converted
to a
struct in_addr
and copied to
R dst ,
which must be
sizeof(struct in_addr)
bytes long.
AF_INET6
src
points to a character string containing an IPv6 network address in
any allowed IPv6 address format.
The address is converted
to a
struct in6_addr
and copied to
R dst ,
which must be
sizeof(struct in6_addr)
bytes long.
Certain legacy hex and octal formats of
AF_INET
addresses are not supported by
R inet_pton (),
which rejects them.
RETURN VALUE
R inet_pton ()
returns a negative value and sets
errno
to
EAFNOSUPPORT
if
af
does not contain a valid address family.
0 is returned if
src
does not contain a character string representing a valid network
address in the specified address family.
A positive value is returned if the network address was successfully
converted.
CONFORMING TO
POSIX.1-2001.
BUGS
AF_INET6
does not recognize IPv4 addresses.
An explicit IPv6-mapped IPv4 address must be supplied in
src
instead.
SEE ALSO