Поделиться через


функция if_nametoindex

Функция if_nametoindex преобразует имя интерфейса ANSI для сетевого интерфейса в локальный индекс интерфейса.

Синтаксис

NET_IFINDEX NETIOAPI_API_ if_nametoindex(
  _In_ PCSTR InterfaceName
);

Параметры

  • InterfaceName [in]
    Указатель на строку ANSI, завершающуюся null, которая содержит имя интерфейса.

Возвращаемое значение

Если функция выполнена успешно, if_nametoindex возвращает индекс локального интерфейса. Если функция завершается сбоем, if_nametoindex возвращает ноль.

Комментарии

Функция if_nametoindex сопоставляет имя интерфейса с соответствующим индексом. Эта функция разработана как часть базовых расширений сокетов для IPv6, как описано в IETF в RFC 2553.

Функция if_nametoindex реализована для переносимости драйверов в средах Unix, но функции ConvertInterfaceXxx являются предпочтительным методом преобразования идентификаторов сетевых интерфейсов. Функцию if_nametoindex можно заменить вызовом функции ConvertInterfaceNameToLuidA для преобразования имени интерфейса ANSI в NET_LUID объединение, а затем вызовом функции ConvertInterfaceLuidToIndex для преобразования NET_LUID в индекс локального интерфейса.

Если функция if_nametoindex завершается сбоем и возвращает ноль, вы не сможете определить код ошибки.

Требования

Целевая платформа

Универсальное

Версия

Доступно в Windows Vista и более поздних версиях операционных систем Windows.

Заголовок

Netioapi.h (включая Netioapi.h)

Библиотека

Netio.lib

IRQL

PASSIVE_LEVEL

См. также раздел

ConvertInterfaceLuidToIndex

ConvertInterfaceNameToLuidA

NET_LUID