if_nametoindex, if_indextoname -
соответствие
имён и
индексов
сетевых
интерфейсов
Standard C library (
libc,
-lc)
#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
байт.
On success,
if_nametoindex() returns the index number of the network
interface; on error, 0 is returned and
errno is set to indicate the
error.
On success,
if_indextoname() returns
ifname; on error, NULL is
returned and
errno is set to indicate the error.
Функция
if_nametoindex()
может
завершиться
с ошибкой и
изменить
errno
если:
- ENODEV
- Не
найден
интерфейс
с заданным
именем.
Функция
if_indextoname()
может
завершиться
с ошибкой и
изменить
errno
если:
- ENXIO
- Интерфейс
по индексу
не найден.
Также
функции
if_nametoindex() и
if_indextoname()
могут
завершиться
с ошибками,
перечисленными
в
socket(2) или
ioctl(2).
Описание
терминов
данного
раздела
смотрите в
attributes(7).
Интерфейс |
Атрибут |
Значение |
if_nametoindex(), if_indextoname() |
Безвредность
в нитях |
MT-Safe |
POSIX.1-2001, POSIX.1-2008, RFC 3493.
Эта
функция
впервые
появилась
в BSDi.
getifaddrs(3),
if_nameindex(3),
ifconfig(8)
Русский
перевод
этой
страницы
руководства
был сделан
Azamat Hackimov <
[email protected]>, Dmitriy S. Seregin
<
[email protected]>, Yuri Kozlov <
[email protected]> и
Иван
Павлов <
[email protected]>
Этот
перевод
является
бесплатной
документацией;
прочитайте
Стандартную
общественную
лицензию GNU
версии 3
или более
позднюю,
чтобы
узнать об
условиях
авторского
права. Мы не
несем
НИКАКОЙ
ОТВЕТСТВЕННОСТИ.
Если вы
обнаружите
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
отправьте
электронное
письмо на
[email protected]