структура NDIS_FILTER_ATTACH_PARAMETERS (ndis.h)
Структура NDIS_FILTER_ATTACH_PARAMETERS определяет параметры инициализации для модуля фильтра.
Синтаксис
typedef struct _NDIS_FILTER_ATTACH_PARAMETERS {
NDIS_OBJECT_HEADER Header;
NET_IFINDEX IfIndex;
NET_LUID NetLuid;
PNDIS_STRING FilterModuleGuidName;
NET_IFINDEX BaseMiniportIfIndex;
PNDIS_STRING BaseMiniportInstanceName;
PNDIS_STRING BaseMiniportName;
NDIS_MEDIA_CONNECT_STATE MediaConnectState;
NET_IF_MEDIA_DUPLEX_STATE MediaDuplexState;
ULONG64 XmitLinkSpeed;
ULONG64 RcvLinkSpeed;
NDIS_MEDIUM MiniportMediaType;
NDIS_PHYSICAL_MEDIUM MiniportPhysicalMediaType;
NDIS_HANDLE MiniportMediaSpecificAttributes;
PNDIS_OFFLOAD DefaultOffloadConfiguration;
USHORT MacAddressLength;
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
NET_LUID BaseMiniportNetLuid;
NET_IFINDEX LowerIfIndex;
NET_LUID LowerIfNetLuid;
ULONG Flags;
PNDIS_HD_SPLIT_CURRENT_CONFIG HDSplitCurrentConfig;
PNDIS_RECEIVE_FILTER_CAPABILITIES ReceiveFilterCapabilities;
PDEVICE_OBJECT MiniportPhysicalDeviceObject;
PNDIS_NIC_SWITCH_CAPABILITIES NicSwitchCapabilities;
BOOLEAN BaseMiniportIfConnectorPresent;
PNDIS_SRIOV_CAPABILITIES SriovCapabilities;
PNDIS_NIC_SWITCH_INFO_ARRAY NicSwitchArray;
} NDIS_FILTER_ATTACH_PARAMETERS, *PNDIS_FILTER_ATTACH_PARAMETERS;
Члены
Header
Структура NDIS_OBJECT_HEADER для структуры NDIS_FILTER_ATTACH_PARAMETERS . NDIS задает элемент Type структуры, указанной в заголовке , NDIS_OBJECT_TYPE_FILTER_ATTACH_PARAMETERS.
Чтобы указать версию структуры NDIS_FILTER_ATTACH_PARAMETERS , NDIS устанавливает для элемента Revision одно из следующих значений:
NDIS_FILTER_ATTACH__PARAMETERS_REVISION_4
Добавлены различные члены для NDIS 6.30.
NDIS задает для элемента Size значение NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_4.
NDIS_FILTER_ATTACH_PARAMETERS_REVISION_3
Добавлены члены ReceiveFilterCapabilities, MiniportPhysicalDeviceObject и NicSwitchCapabilities для NDIS 6.20.
NDIS задает для элемента Size значение NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_3.
NDIS_FILTER_ATTACH_PARAMETERS_REVISION_2
Добавлен элемент HDSplitCurrentConfig для NDIS 6.1.
NDIS задает для элемента Size значение NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_2.
NDIS_FILTER_ATTACH_PARAMETERS_REVISION_1
Исходная версия для NDIS 6.0.
NDIS задает для элемента Size значение NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_1.
IfIndex
Индекс интерфейса NDIS модуля фильтра, который NDIS подключает к стеку драйверов.
NetLuid
Сетевой интерфейс NDIS NET_LUID значение для модуля фильтра, который NDIS подключает к стеку драйверов. NET_LUID эквивалентен имени интерфейса (ifName в RFC 2863).
FilterModuleGuidName
Имя GUID модуля фильтра, к которому подключается NDIS.
BaseMiniportIfIndex
Индекс сетевого интерфейса NDIS базового адаптера минипорта. Это значит, что при наличии виртуальных минипортов или модулей фильтров, установленных через физический адаптер минипорта, значением этого элемента является индекс интерфейса физического адаптера минипорта или виртуальный минипорт промежуточного драйвера MUX самого высокого уровня.
BaseMiniportInstanceName
Указатель на значение типа NDIS_STRING, содержащее подсчитываемую строку Юникода. Эта строка указывает понятное имя интерфейса для адаптера базового минипорта. Для Windows 2000 и более поздних версий NDIS определяет тип NDIS_STRING как тип UNICODE_STRING .
BaseMiniportName
Имя базового адаптера минипорта.
MediaConnectState
The NET_IF_MEDIA_CONNECT_STATE тип состояния подключения.
MediaDuplexState
Дуплексное состояние носителя для базового адаптера минипорта. Дополнительные сведения см. в разделе OID_GEN_MEDIA_DUPLEX_STATE.
XmitLinkSpeed
Текущая скорость канала передачи базового адаптера минипорта в битах в секунду. Дополнительные сведения см. в разделе OID_GEN_LINK_SPEED_EX.
RcvLinkSpeed
Текущая скорость канала приема базового адаптера минипорта в битах в секунду. Дополнительные сведения см. в разделе OID_GEN_LINK_SPEED_EX.
MiniportMediaType
Тип NdisMediumXxx , поддерживаемый базовым адаптером минипорта. Дополнительные сведения см. в разделе NDIS_MEDIUM.
MiniportPhysicalMediaType
Тип физического носителя для базового адаптера мини-порта. Дополнительные сведения см. в разделе OID_GEN_PHYSICAL_MEDIUM.
MiniportMediaSpecificAttributes
Указатель на структуру NDIS_OBJECT_HEADER , которая идентифицирует структуру, содержащую атрибуты мультимедиа miniport, или ЗНАЧЕНИЕ NULL , если таких атрибутов нет. Элемент Type структуры NDIS_OBJECT_HEADER определяет тип структуры атрибутов. Например, если тип мультимедиа базового адаптера минипорта — NdisMediumNative802_11, то элемент Type должен быть NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES, а элемент MiniportMediaSpecificAttributes указывает на NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES структура.
DefaultOffloadConfiguration
Указатель на структуру NDIS_OFFLOAD , которая определяет атрибуты разгрузки задачи. Драйвер фильтра должен просмотреть эти атрибуты, чтобы получить возможности разгрузки задач базовых драйверов. Драйвер фильтра должен при необходимости изменить эти атрибуты, чтобы отразить любые изменения в поддержке разгрузки задач, которые ему необходимы.
MacAddressLength
Длина MAC-адреса в байтах. Длина MAC-адреса зависит от типа носителя.
CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Текущий MAC-адрес. Например, OID_802_3_CURRENT_ADDRESS OID указывает текущий MAC-адрес для драйверов IEEE 802.3.
BaseMiniportNetLuid
Сетевой интерфейс NDIS NET_LUID базового адаптера минипорта. Это значит, что при наличии виртуальных минипортов или модулей фильтров, установленных через физический адаптер минипорта, значением этого элемента является NET_LUID физического адаптера минипорта или виртуальный минипорт промежуточного драйвера MUX самого высокого уровня.
LowerIfIndex
Индекс сетевого интерфейса NDIS интерфейса сразу под текущим модулем фильтра. То есть, если есть модули фильтров или NDIS 5. X фильтровать промежуточные драйверы, установленные через физический адаптер мини-порта или промежуточный драйвер MUX самого высокого уровня. Этот элемент содержит индекс интерфейса интерфейса модуля фильтра или промежуточный интерфейс драйвера фильтра, который находится чуть ниже текущего модуля фильтра. Если в физическом адаптере минипорта или драйвере самого высокого уровня не установлены интерфейсы фильтров или промежуточных драйверов фильтров, этот элемент содержит индекс интерфейса базового физического адаптера или виртуального мини-порта с промежуточным драйвером MUX самого высокого уровня.
LowerIfNetLuid
Сетевой интерфейс NDIS NET_LUID значение интерфейса сразу под текущим модулем фильтра. То есть, если есть модули фильтров или NDIS 5. X фильтровать промежуточные драйверы, установленные через физический адаптер miniport или промежуточный драйвер MUX самого высокого уровня. Этот элемент содержит сетевой интерфейс NET_LUID интерфейса модуля фильтра или промежуточного интерфейса драйвера фильтра, который находится чуть ниже текущего модуля фильтра. Если в физическом адаптере минипорта или промежуточном драйвере самого высокого уровня не установлены модули фильтрации или промежуточные интерфейсы драйвера фильтра или промежуточного драйвера фильтра, этот элемент содержит сетевой интерфейс NET_LUID базового физического адаптера или виртуального мини-порта драйвера mux самого высокого уровня.
Flags
Зарезервировано для последующего использования.
HDSplitCurrentConfig
Указатель на NDIS_HD_SPLIT_CURRENT_CONFIG структура. Эта структура определяет текущую конфигурацию разделения заголовков и данных базового адаптера минипорта. Это значение может иметь значение NULL , если адаптер минипорта не поддерживает разделение заголовков и данных.
ReceiveFilterCapabilities
Указатель на NDIS_RECEIVE_FILTER_CAPABILITIES структура. Эта структура определяет возможности универсальной фильтрации, которые в настоящее время включены в базовом адаптере мини-порта. Это значение может иметь значение NULL , если адаптер минипорта не поддерживает фильтрацию приема.
MiniportPhysicalDeviceObject
Указатель на структуру DEVICE_OBJECT . Эта структура представляет физическое устройство для базового адаптера минипорта.
NicSwitchCapabilities
Указатель на NDIS_NIC_SWITCH_CAPABILITIES структура. Эта структура определяет возможности переключения сетевого адаптера базового мини-порта. Это значение может иметь значение NULL , если адаптер мини-порта не поддерживает функции коммутатора сетевой карты.
BaseMiniportIfConnectorPresent
Логическое значение, если задано значение TRUE, указывает, присутствует ли соединитель сетевого интерфейса (если) в базовом сетевом адаптере. Это значение должно иметь значение TRUE для физического адаптера.
SriovCapabilities
Указатель на структуру NDIS_SRIOV_CAPABILITIES . Эта структура определяет возможности виртуализации ввода-вывода с одним корнем (SR-IOV), которые в настоящее время включены в базовом адаптере минипорта. Это значение может иметь значение NULL , если адаптер минипорта не поддерживает функции SR-IOV.
Дополнительные сведения см. в статье Виртуализация одно корневых операций ввода-вывода (SR-IOV).
NicSwitchArray
Указатель на структуру NDIS_NIC_SWITCH_INFO_ARRAY . Этот массив перечисляет коммутаторы сетевой карты, созданные на адаптере мини-порта. Сетевые адаптеры можно создавать только в том случае, если sr-IOV поддерживается и включен на адаптере.
Комментарии
Чтобы определить параметры присоединения модуля фильтра, NDIS передает указатель на структуру NDIS_FILTER_ATTACH_PARAMETERS в функцию FilterAttach .
Драйверы фильтров должны избегать выдачи ненужных запросов OID. Вместо этого используйте сведения из NDIS_FILTER_ATTACH_PARAMETERS, если они доступны, для получения сведений о базовых драйверах.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в NDIS 6.0 и более поздних версиях. |
Верхняя часть | ndis.h (включая Ndis.h) |
См. также раздел
NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES NDIS_RECEIVE_FILTER_CAPABILITIESОбратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по