inet_ntop6_zone 子例程

用途

将具有可能区域标识的二进制 IPv6 地址转换为适合表示的文本字符串。

语法

const char
  inet_ntop6_zone (const void src, char dst, size_t size)

描述

inet_ntop6_zone 子例程优先于 inet_ntop 子例程,因为它可以推断 sockaddr_in6 结构的 sin6_scope_id 字段中可能存在的区域标识 (在 RFC 4007 的第 11 节中定义)。

在功能上,此子例程使用 inet_ntop 子例程来生成地址的文本表示。 如果 sin6_scope_id 字段非零,那么它会将 %zoneid 后缀附加到字符串。

参数

描述
src 指定包含 sin6_addr 字段中的地址和 sin6_scope_id 字段中的区域标识的 sockaddr_in6 结构。
DST 指定用于存储地址文本表示的缓冲区,如果非零,那么将存储区域标识。
大小 指定 dst 参数指向的缓冲区的大小 (以字节计)。

返回值

如果成功,将返回指向包含转换地址的缓冲区的指针。 如果失败,那么将返回 NULL。 发生故障时,如果 size 参数指示目标缓冲区较小,那么 errno 全局变量将设置为 ENOSPC。