if_nametoindex(3)
| IF_NAMETOINDEX(3) | Руководство программиста Linux | IF_NAMETOINDEX(3) |
ИМЯ
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_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.
СМОТРИТЕ ТАКЖЕ
| 2017-09-15 | GNU |
