INET_NTOP - Linux手册页
时间:2019-08-20 18:00:38 来源:igfitidea点击:
Linux程序员手册 第3部分
更新日期: 2020-06-09
名称
inet_ntop-将IPv4和IPv6地址从二进制转换为文本形式
语法
#include <arpa/inet.h> const char *inet_ntop(int af, const void *src, char *dst, socklen_t size);
说明
此功能将af地址族中的网络地址结构src转换为字符串。结果字符串将复制到dst指向的缓冲区,该缓冲区必须是非null指针。调用方以参数大小指定此缓冲区中可用的字节数。
inet_ntop()扩展了inet_ntoa(3)函数以支持多个地址族,现在认为inet_ntoa(3)已过时,而支持inet_ntop()。当前支持以下地址族:
- AF_INET
- src指向结构in_addr(以网络字节顺序),该结构以点分十进制格式" ddd.ddd.ddd.ddd"转换为IPv4网络地址。缓冲区dst的长度必须至少为INET_ADDRSTRLEN字节。
- AF_INET6
- src指向结构in6_addr(以网络字节顺序),该结构以最适合该地址的IPv6网络地址格式转换为该地址的表示形式。缓冲区dst必须至少为INET6_ADDRSTRLEN字节长。
返回值
成功时,inet_ntop()返回指向dst的非空指针。如果存在错误,则返回NULL,并设置errno表示错误。
错误说明
- EAFNOSUPPORT
- AF不是有效的地址族。
- ENOSPC
- 转换后的地址字符串将超过size给定的大小。
属性
有关本节中使用的术语的说明,请参见attribute(7)。
Interface | Attribute | Value |
inet_ntop() | Thread safety | MT-Safe locale |
遵循规范
POSIX.1-2001,POSIX.1-2008。请注意,RFC 2553定义了一个原型,其中最后一个参数的大小为size_t类型。许多系统遵循RFC 2553.Glibc 2.0和2.1具有size_t,但2.2及更高版本具有socklen_t。
BUGS
AF_INET6将映射了IPv4的IPv6地址转换为IPv6格式。
示例
参见inet_pton(3)。
另外参见
getnameinfo(3),inet(3),inet_pton(3)
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。