IF_NAMETOINDEX - Linux手册页

时间:2019-08-20 18:00:37  来源:igfitidea点击:

Linux程序员手册 第3部分
更新日期: 2017-09-15

名称

if_nametoindex,if_indextoname-网络接口名称和索引之间的映射

语法

#include <net/if.h>

unsigned int if_nametoindex(const char *ifname);

char *if_indextoname(unsigned int ifindex, char *ifname);

说明

if_nametoindex()函数返回与名称ifname对应的网络接口的索引。

if_indextoname()函数返回与接口索引ifindex对应的网络接口的名称。该名称放置在ifname指向的缓冲区中。缓冲区必须至少允许存储IF_NAMESIZE字节。

返回值

成功时,if_nametoindex()返回网络接口的索引号;否则,返回0。如果出错,则返回0并正确设置errno。

成功时,if_indextoname()返回ifname;如果出现错误,则返回NULL并正确设置errno。

错误说明

如果满足以下条件,则if_nametoindex()可能会失败并设置errno

ENODEV
未找到具有给定名称的接口。

如果出现以下情况,if_indextoname()可能会失败并设置errno

ENXIO
找不到索引的接口。

如果为socket(2)或ioctl(2)指定了任何错误,则if_nametoindex()和if_indextoname()也可能会失败。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
if_nametoindex(),if_indextoname()Thread safetyMT-Safe

遵循规范

POSIX.1-2001,POSIX.1-2008,RFC 3493。

此功能最早出现在BSDi中。

另外参见

getifaddrs(3),if_nameindex(3),ifconfig(8)

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/