NDIS_FILTER_ATTACH_PARAMETERS (Compact 7)
3/12/2014
This structure defines the initialization parameters for the filter module.
Syntax
typedef struct _NDIS_FILTER_ATTACH_PARAMETERS {
IN NDIS_OBJECT_HEADER Header;
IN NET_IFINDEX IfIndex;
IN NET_LUID NetLuid;
IN PNDIS_STRING FilterModuleGuidName;
IN NET_IFINDEX BaseMiniportIfIndex;
IN PNDIS_STRING BaseMiniportInstanceName;
IN PNDIS_STRING BaseMiniportName;
IN NDIS_MEDIA_CONNECT_STATE MediaConnectState;
IN NET_IF_MEDIA_DUPLEX_STATE MediaDuplexState;
IN ULONG64 XmitLinkSpeed;
IN ULONG64 RcvLinkSpeed;
IN OUT NDIS_MEDIUM MiniportMediaType;
IN OUT NDIS_PHYSICAL_MEDIUM MiniportPhysicalMediaType;
IN NDIS_HANDLE MiniportMediaSpecificAttributes;
IN PNDIS_OFFLOAD DefaultOffloadConfiguration;
IN USHORT MacAddressLength;
IN UCHAR urrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
IN NET_LUID BaseMiniportNetLuid;
IN NET_IFINDEX LowerIfIndex;
IN NET_LUID LowerIfNetLuid;
IN OUT ULONG Flags;
PNDIS_HD_SPLIT_CURRENT_CONFIG HDSplitCurrentConfig;
} NDIS_FILTER_ATTACH_PARAMETERS, *PNDIS_FILTER_ATTACH_PARAMETERS;
Members
Header
The NDIS_OBJECT_HEADER structure for the NDIS_FILTER_ATTACH_PARAMETERS structure. NDIS sets the Type member of the structure that Header specifies to NDIS_OBJECT_TYPE_FILTER_ATTACH_PARAMETERS.To indicate the version of the NDIS_FILTER_ATTACH_PARAMETERS structure, NDIS sets the Revision member to one of the following values:
NDIS_FILTER_ATTACH_PARAMETERS_REVISION_2
Added the HDSplitCurrentConfig member.Set the Size member to NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_2.
NDIS_FILTER_ATTACH_PARAMETERS_REVISION_1
Original version.NDIS sets the Size member to NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_1.
- IfIndex
The NDIS interface index of the filter module that NDIS is attaching to the driver stack.
- NetLuid
The NDIS network interface NET_LUID value for the filter module that NDIS is attaching to the driver stack. The NET_LUID is equivalent to the interface name (ifName in RFC 2863).
- FilterModuleGuidName
The GUID name of the filter module that NDIS is attaching.
- BaseMiniportIfIndex
The NDIS network interface index of the base miniport adapter. If virtual miniports or filter modules are installed over a physical miniport adapter, the value of this member is the interface index of the physical miniport adapter, or a virtual miniport of the highest level MUX intermediate driver.
- BaseMiniportInstanceName
A pointer to a NDIS_STRING type value that contains a counted Unicode string. This string specifies the friendly name of the interface for the base miniport adapter.
- BaseMiniportName
The name of the base miniport adapter.
- MediaConnectState
The NET_IF_MEDIA_CONNECT_STATE connection state type.
- MediaDuplexState
The media duplex state for the underlying miniport adapter. For more information, see OID_GEN_MEDIA_DUPLEX_STATE.
- XmitLinkSpeed
The current transmit link speed of the underlying miniport adapter in bits per second. For more information, see OID_GEN_LINK_SPEED_EX.
- RcvLinkSpeed
The current receive link speed of the underlying miniport adapter in bits per second. For more information, see OID_GEN_LINK_SPEED_EX.
- MiniportMediaType
The NdisMediumXxx type that the base underlying miniport adapter supports. For more information, see NDIS NDIS NdisMediumXxx Types.
- MiniportPhysicalMediaType
The physical medium type for the base underlying miniport adapter. For more information, see OID_GEN_PHYSICAL_MEDIUM.
- MiniportMediaSpecificAttributes
A pointer to an NDIS_OBJECT_HEADER structure that identifies a structure that contains miniport media-specific attributes, or NULL if there are no such attributes. The Type member of the NDIS_OBJECT_HEADER structure identifies the type of the attributes structure. For example, if the underlying miniport adapter's media type is NdisMediumNative802_11, then the Type member should be NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES, and the MiniportMediaSpecificAttributes member points to an NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES structure.
- DefaultOffloadConfiguration
A pointer to an NDIS_OFFLOAD structure, which defines task offload attributes. The filter driver should review these attributes to obtain the task offload capabilities of the underlying drivers. The filter driver should modify these attributes if it is necessary to reflect any changes in the task offload support that it requires.
- MacAddressLength
The MAC address length, in bytes. The MAC address length is specific to the type of media.
- CurrentMacAddress
The current MAC address. For example, the OID_802_3_CURRENT_ADDRESS OID specifies the current MAC address for IEEE 802.3 drivers.
- BaseMiniportNetLuid
The NDIS network interface NET_LUID of the base miniport adapter. That is, if there are virtual miniports or filter modules that are installed over a physical miniport adapter, the value of this member is the NET_LUID of the physical miniport adapter or a virtual miniport of the highest-level MUX intermediate driver.
- LowerIfIndex
The NDIS network interface index of the interface under the current filter module. That is, if there are filter modules or NDIS 5.x filter intermediate drivers that are installed over a physical miniport adapter or the highest-level MUX intermediate driver, this member contains the interface index of the filter module interface or filter intermediate driver interface that is just below the current filter module. If there are no filter module or filter intermediate driver interfaces installed over the physical miniport adapter or the highest-level MUX intermediate driver, this member contains the interface index of the underlying physical miniport adapter or the highest-level MUX intermediate driver virtual miniport.
- LowerIfNetLuid
The NDIS network interface NET_LUID value of the interface just below the current filter module. That is, if there are filter modules or NDIS 5.x filter intermediate drivers that are installed over a physical miniport adapter or the highest-level MUX intermediate driver, this member contains the network interface NET_LUID of the filter module interface or filter intermediate driver interface that is just below the current filter module. If there are no filter module or filter intermediate driver interfaces installed over the physical miniport adapter or the highest-level MUX intermediate driver, this member contains the network interface NET_LUID of the underlying physical miniport adapter or the highest-level MUX intermediate driver virtual miniport.
- Flags
Reserved.
- HDSplitCurrentConfig
A pointer to a NDIS_HD_SPLIT_CURRENT_CONFIG structure. This structure specifies the current header-data split configuration of the underlying miniport adapter. This value can be NULL if the miniport adapter does not support header-data split.
Remarks
To define filter module attach parameters, NDIS passes a pointer to an NDIS_FILTER_ATTACH_PARAMETERS structure to the FilterAttach function.
Filter drivers should avoid issuing unnecessary OID queries. Instead, use the information in NDIS_FILTER_ATTACH_PARAMETERS, when available, to obtain information about underlying drivers.
Requirements
Header |
ndis.h |
See Also
Reference
NDIS Filter Driver Structures
FilterAttach
NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES
NDIS_OBJECT_HEADER
NDIS_OFFLOAD
NET_IF_MEDIA_CONNECT_STATE
OID_802_3_CURRENT_ADDRESS
OID_GEN_LINK_SPEED_EX
OID_GEN_MEDIA_CONNECT_STATUS_EX
OID_GEN_MEDIA_DUPLEX_STATE
OID_GEN_PHYSICAL_MEDIUM