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, MiniportPhysicalDeviceObjectNicSwitchCapabilities 멤버가 추가되었습니다.

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가 지원되고 어댑터에서 사용하도록 설정된 경우에만 만들 수 있습니다.

참고 Windows Server 2012 시작하여 Windows는 PF(물리적 함수) 미니포트 어댑터에서 만든 기본 NIC 스위치만 지원합니다. 따라서 이 배열에는 하나의 요소만 포함될 수 있습니다.
 

설명

필터 모듈 연결 매개 변수를 정의하기 위해 NDIS는 filterAttach 함수에 NDIS_FILTER_ATTACH_PARAMETERS 구조체에 대한 포인터를 전달합니다.

필터 드라이버는 불필요한 OID 쿼리를 실행하지 않아야 합니다. 대신 사용 가능한 경우 NDIS_FILTER_ATTACH_PARAMETERS 정보를 사용하여 기본 드라이버에 대한 정보를 가져옵니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 NDIS 6.0 이상에서 지원됩니다.
머리글 ndis.h(Ndis.h 포함)

추가 정보

DEVICE_OBJECT

FilterAttach

NDIS_HD_SPLIT_CURRENT_CONFIG

NDIS_MEDIUM

NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES

NDIS_NIC_SWITCH_CAPABILITIES

NDIS_NIC_SWITCH_INFO_ARRAY

NDIS_OBJECT_HEADER

NDIS_OFFLOAD

NDIS_RECEIVE_FILTER_CAPABILITIES

NDIS_SRIOV_CAPABILITIES

NET_IF_MEDIA_CONNECT_STATE

NET_LUID

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

UNICODE_STRING