OID_RECEIVE_FILTER_ENUM_FILTERS
Избыточный драйвер отправляет запрос метода OID OID_RECEIVE_FILTER_ENUM_FILTERS, чтобы получить список всех фильтров, настроенных для сетевого адаптера.
Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит указатель на структуру NDIS_RECEIVE_FILTER_INFO_ARRAY .
После успешного возврата из запроса метода OID элемент InformationBufferструктуры NDIS_OID_REQUEST содержит указатель на буфер. Этот буфер имеет следующий формат:
Структура NDIS_RECEIVE_FILTER_INFO_ARRAY , указывающая список фильтров получения, которые в настоящее время настроены для драйвера мини-порта.
Массив структур NDIS_RECEIVE_FILTER_INFO . В каждой структуре указываются параметры фильтра получения, который в настоящее время настроен для драйвера мини-порта.
Комментарии
Фильтры получения NDIS используются в следующих интерфейсах NDIS:
Объединение пакетов NDIS. Дополнительные сведения об использовании фильтров получения в этом интерфейсе см. в разделе Управление фильтрами получения объединения пакетов.
Виртуализация одно корневых операций ввода-вывода (SR-IOV). Дополнительные сведения об использовании фильтров получения в этом интерфейсе см. в разделе Настройка фильтра получения для виртуального порта.
Очередь виртуальных машин (VMQ). Дополнительные сведения об использовании фильтров получения в этом интерфейсе см. в разделе Настройка и очистка фильтров VMQ.
Избыточные драйверы или приложения выдают запросы метода OID OID_RECEIVE_FILTER_ENUM_FILTERS для перечисления фильтров получения, заданных для сетевого адаптера. Сюда входят фильтры получения, которые были заданы для виртуального порта SR-IOV (VPort) или очереди получения VMQ.
Дополнительные рекомендации по интерфейсу объединения пакетов NDIS
Начиная с Windows Server 2012 объединение пакетов NDIS поддерживает только очередь получения сетевого адаптера по умолчанию.
Чтобы перечислить фильтры получения, объединяющие пакеты, драйвер надстроек должен задать для элемента QueueId структуры NDIS_RECEIVE_FILTER_INFO_ARRAY значение NDIS_DEFAULT_RECEIVE_QUEUE_ID.
Дополнительные рекомендации по интерфейсу SR-IOV
Начиная с Windows Server 2012 интерфейс SR-IOV поддерживает только очередь получения виртуального порта (VPort) по умолчанию.
Чтобы перечислить фильтры получения VPort, драйвер с избыточной поддержкой должен задать для элемента QueueId структуры NDIS_RECEIVE_FILTER_INFO_ARRAY значение NDIS_DEFAULT_RECEIVE_QUEUE_ID.
Дополнительные рекомендации по интерфейсу VMQ
Избыточный драйвер может выдавать запросы метода OID OID_RECEIVE_FILTER_ENUM_FILTERS для перечисления фильтров получения, заданных в очереди получения VMQ. Когда драйвер overlying инициализирует структуру NDIS_RECEIVE_FILTER_INFO_ARRAY , он присваивает члену QueueId одно из следующих значений:
Значение идентификатора очереди для очереди получения без определенных значений. Драйвер, находящийся выше, получил входное значение идентификатора очереди из предыдущего запроса метода OID OID_RECEIVE_FILTER_ALLOCATE_QUEUE или запроса OID OID_RECEIVE_FILTER_ENUM_QUEUES.
Значение идентификатора очереди NDIS_DEFAULT_RECEIVE_QUEUE_ID, указывающее очередь получения по умолчанию.
Коды состояния возврата
NDIS обрабатывает запрос метода OID OID_RECEIVE_FILTER_ENUM_FILTERS для драйверов мини-порта и возвращает один из следующих кодов состояния:
NDIS_STATUS_SUCCESS
Запрос успешно завершен. InformationBuffer указывает на структуру NDIS_RECEIVE_FILTER_INFO_ARRAY.
NDIS_STATUS_PENDING
Запрос ожидает завершения. NDIS передает окончательный код состояния и результаты обработчику завершения запроса OID вызывающего объекта после завершения запроса.
NDIS_STATUS_INVALID_LENGTH
Буфер сведений был слишком коротким. NDIS задает значение DATA. QUERY_INFORMATION. Элемент BytesNeeded в NDIS_OID_REQUEST структуру до минимального требуемого размера буфера.
NDIS_STATUS_FAILURE
Сбой запроса по другим причинам.
Требования
Версия |
Поддерживается в NDIS 6.20 и более поздних версиях. |
Заголовок |
Ntddndis.h (включая Ndis.h) |
См. также раздел
NDIS_RECEIVE_FILTER_INFO_ARRAY
OID_RECEIVE_FILTER_ALLOCATE_QUEUE