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_FILTER_ATTACH_PARAMETERS 구조체의 NDIS_OBJECT_HEADER 구조체입니다. NDIS는 Header가 지정하는 구조체의 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
NDIS 6.20용 ReceiveFilterCapabilities, MiniportPhysicalDeviceObject 및 NicSwitchCapabilities 멤버가 추가되었습니다.
NDIS는 Size 멤버를 NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_3 설정합니다.
NDIS_FILTER_ATTACH_PARAMETERS_REVISION_2
NDIS 6.1용 HDSplitCurrentConfig 멤버가 추가되었습니다.
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 네트워크 인터페이스는 NDIS가 드라이버 스택에 연결하는 필터 모듈의 값을 NET_LUID . NET_LUID 인터페이스 이름(RFC 2863의 ifName)과 동일합니다.
FilterModuleGuidName
NDIS가 연결 중인 필터 모듈의 GUID 이름입니다.
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 구조체에 대한 포인터이거나, 이러한 특성이 없는 경우 NULL 입니다. NDIS_OBJECT_HEADER 구조체의 Type 멤버는 특성 구조체의 형식을 식별합니다. 예를 들어 기본 미니포트 어댑터의 미디어 형식이 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는 IEEE 802.3 드라이버의 현재 MAC 주소를 지정합니다.
BaseMiniportNetLuid
기본 미니포트 어댑터의 NDIS 네트워크 인터페이스 NET_LUID . 즉, 실제 미니포트 어댑터를 통해 설치된 가상 미니포트 또는 필터 모듈이 있는 경우 이 멤버의 값은 물리적 미니포트 어댑터의 NET_LUID 또는 최상위 MUX 중간 드라이버의 가상 미니포트입니다.
LowerIfIndex
현재 필터 모듈 바로 아래에 있는 인터페이스의 NDIS 네트워크 인터페이스 인덱스입니다. 즉, 필터 모듈 또는 NDIS 5가 있는 경우입니다. 물리적 미니포트 어댑터 또는 최상위 MUX 중간 드라이버 위에 설치된 x 필터 중간 드라이버, 이 멤버는 현재 필터 모듈 바로 아래에 있는 필터 모듈 인터페이스 또는 필터 중간 드라이버 인터페이스의 인터페이스 인덱스를 포함합니다. 실제 미니포트 어댑터 또는 최상위 MUX 중간 드라이버 위에 설치된 필터 모듈 또는 필터 중간 드라이버 인터페이스가 없는 경우 이 멤버는 기본 물리적 미니포트 어댑터의 인터페이스 인덱스 또는 최상위 MUX 중간 드라이버 가상 미니포트를 포함합니다.
LowerIfNetLuid
NDIS 네트워크 인터페이스는 현재 필터 모듈 바로 아래에 있는 인터페이스의 값을 NET_LUID. 즉, 필터 모듈 또는 NDIS 5가 있는 경우입니다. 물리적 미니포트 어댑터 또는 최상위 MUX 중간 드라이버를 통해 설치된 x 필터 중간 드라이버, 이 멤버는 현재 필터 모듈 바로 아래에 있는 필터 모듈 인터페이스 또는 필터 중간 드라이버 인터페이스의 NET_LUID 네트워크 인터페이스를 포함합니다. 실제 미니포트 어댑터 또는 최상위 MUX 중간 드라이버 위에 설치된 필터 모듈 또는 필터 중간 드라이버 인터페이스가 없는 경우 이 멤버는 기본 물리적 미니포트 어댑터 또는 최상위 MUX 중간 드라이버 가상 미니포트의 네트워크 인터페이스 NET_LUID 포함합니다.
Flags
다음에 사용하도록 예약됩니다.
HDSplitCurrentConfig
에 대한 포인터 NDIS_HD_SPLIT_CURRENT_CONFIG 구조체입니다. 이 구조체는 기본 미니포트 어댑터의 현재 헤더-데이터 분할 구성을 지정합니다. 미니포트 어댑터가 헤더-데이터 분할을 지원하지 않는 경우 이 값은 NULL 일 수 있습니다.
ReceiveFilterCapabilities
에 대한 포인터 NDIS_RECEIVE_FILTER_CAPABILITIES 구조체입니다. 이 구조체는 기본 미니포트 어댑터에서 현재 사용하도록 설정된 제네릭 필터링 기능을 지정합니다. 미니포트 어댑터가 수신 필터링을 지원하지 않는 경우 이 값은 NULL 일 수 있습니다.
MiniportPhysicalDeviceObject
DEVICE_OBJECT 구조체에 대한 포인터입니다. 이 구조체는 기본 미니포트 어댑터의 물리적 디바이스를 나타냅니다.
NicSwitchCapabilities
에 대한 포인터 NDIS_NIC_SWITCH_CAPABILITIES 구조체입니다. 이 구조체는 기본 미니포트 어댑터의 NIC 스위치 기능을 지정합니다. 미니포트 어댑터가 NIC 스위치 기능을 지원하지 않는 경우 이 값은 NULL 일 수 있습니다.
BaseMiniportIfConnectorPresent
TRUE로 설정된 경우 네트워크 인터페이스(if) 커넥터가 기본 네트워크 어댑터에 있는지 여부를 나타내는 부울 값입니다. 실제 어댑터의 경우 이 값을 TRUE로 설정해야 합니다.
SriovCapabilities
NDIS_SRIOV_CAPABILITIES 구조체에 대한 포인터입니다. 이 구조체는 기본 미니포트 어댑터에서 현재 사용하도록 설정된 SR-IOV(단일 루트 I/O 가상화) 기능을 지정합니다. 미니포트 어댑터가 SR-IOV 기능을 지원하지 않는 경우 이 값은 NULL 일 수 있습니다.
자세한 내용은 SR-IOV(단일 루트 I/O 가상화)를 참조하세요.
NicSwitchArray
NDIS_NIC_SWITCH_INFO_ARRAY 구조체에 대한 포인터입니다. 이 배열은 미니포트 어댑터에서 만든 NIC 스위치를 열거합니다. NIC 스위치는 SR-IOV가 지원되고 어댑터에서 사용하도록 설정된 경우에만 만들 수 있습니다.
설명
필터 모듈 연결 매개 변수를 정의하기 위해 NDIS는 filterAttach 함수에 NDIS_FILTER_ATTACH_PARAMETERS 구조체에 대한 포인터를 전달합니다.
필터 드라이버는 불필요한 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 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기