Manpages

名 前

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 を 返 し 、 errno を 適 切 に 設 定 に す る 。 成 功 し た 場 合 に は if_indextoname() は ifname を 返 す 。 エ ラ ー 時 に は NULL が 返 さ れ 、 errno が 適 切 に 設 定 さ れ る 。

エ ラ ー

if_indextoname() は 以 下 の errno で 失 敗 す る 場 合 が あ る 。

ENXIO イ ン デ ッ ク ス に 対 応 す る イ ン タ ー フ ェ ー ス が な い 。

if_nametoindex() と if_indextoname() は 、 socket(2)ioctl(2) に 対 し て 規 定 さ れ て い る エ ラ ー の い ず れ か で 失 敗 す る 場 合 が あ る 。

属 性

マ ル チ ス レ ッ デ ィ ン グ (pthreads(7) 参 照 ) 関 数 if_nametoindex() と if_indextoname() は ス レ ッ ド セ ー フ で あ る 。

準 拠

RFC 3493, POSIX.1−2001. こ の 関 数 は BSDi 初 め て 登 場 し た 。

関 連 項 目

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

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。