这个函数的功能:将IP地址从字符串格式转换成网络地址格式,支持Ipv4和Ipv6.
函数原型: static int inet_pton(int af, const char *src,void *dst)
af: address family(协议族),支持的协议族有下面几种:
AF_INET Inetnet的Ipv4协议
AF_INET Inetnet的Ipv6协议
src:是个指针,指向保存IP地址字符串形式的字符串。
dst:指向存放网络地址的结构体的首地址
int inet_pton(af, src, dst)
{
int af;
const char *src;
void *dst;
switch (af) {
case AF_INET:
return (inet_pton4(src, dst));
case AF_INET6:
return (inet_pton6(src, dst));
default:
__set_errno (EAFNOSUPPORT);
return (-1);
}
/* NOTREACHED */
}
这部分代码就是通过af这个参数来判断你输入的是Ipv4还是Ipv6,然后调用对应的转换函数inet_pton4(src, ds