diff options
Diffstat (limited to 'man3/inet_pton.3')
-rw-r--r-- | man3/inet_pton.3 | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/man3/inet_pton.3 b/man3/inet_pton.3 new file mode 100644 index 000000000..edc07d9db --- /dev/null +++ b/man3/inet_pton.3 @@ -0,0 +1,106 @@ +.\" Copyright 2000 Sam Varshavchik <mrsam@courier-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 +.\" professionally. +.\" +.\" Formatted or processed versions of this manual, if unaccompanied by +.\" the source, must acknowledge the copyright and authors of this work. +.\" +.\" References: RFC 2553 +.TH inet_pton 3 2000-12-18 "Linux Man Page" "Linux Programmer's Manual" +.SH NAME +inet_pton \- Create a network address structure +.SH SYNOPSIS +.nf +.B #include <sys/types.h> +.B #include <sys/socket.h> +.B #include <arpa/inet.h> +.sp +.BI "int inet_pton(int " "af" ", const char *" "src" ", void *" "dst" ); +.SH DESCRIPTION +This function converts the character string +.I src +into a network address structure in the +.I af +address family, then +copies +the network address structure to +.IR dst . +.PP +.BR inet_pton (3) +extends the +.BR inet_addr (3) +function to support multiple address families, +.BR inet_addr (3) +is now considered to be deprecated in favor of +.BR inet_pton (3). +The following address families are currently supported: +.TP +.B AF_INET +.I src +points to a character string containing an IPv4 network address in +the dotted-quad format, "\fIddd.ddd.ddd.ddd\fP". +The address is converted +to a +.I struct in_addr +and copied to +.IR dst, +which must be +.I sizeof(struct in_addr) +bytes long. +.TP +.B AF_INET6 +.I src +points to a character string containing an IPv6 network address in +any allowed IPv6 address format. +The address is converted +to a +.I struct in6_addr +and copied to +.IR dst, +which must be +.I sizeof(struct in6_addr) +bytes long. +.PP +Certain legacy hex and octal formats of +.B AF_INET +addresses are not supported by +.IR inet_pton , +which rejects them. +.SH "RETURN VALUE" +.B inet_pton +returns a negative value and sets +.I errno +to +.B EAFNOSUPPORT +if +.I af +does not contain a valid address family. +0 is returned if +.I 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. +.SH "SEE ALSO" +.BR inet_ntop (3) +.SH BUGS +.B AF_INET6 +does not recognize IPv4 addresses. +An explicit IPv6-mapped IPv4 address must be supplied in +.I src +instead. |