OID_NIC_SWITCH_CURRENT_CAPABILITIES
오버리싱 드라이버는 네트워크 어댑터에서 현재 사용하도록 설정된 NIC 스위치의 하드웨어 기능을 얻기 위해 OID_NIC_SWITCH_CURRENT_CAPABILITIES OID(개체 식별자) 쿼리 요청을 실행합니다.
OID 쿼리 요청에서 성공적으로 반환된 후 NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 NDIS_NIC_SWITCH_CAPABILITIES 구조체에 대한 포인터가 포함됩니다.
설명
NDIS 6.20부터 미니포트 드라이버는 MiniportInitializeEx 함수가 호출될 때 네트워크 어댑터에서 현재 사용하도록 설정된 NIC 스위치 하드웨어 기능을 제공합니다. 드라이버는 NIC 스위치 하드웨어 기능을 사용하여 NDIS_NIC_SWITCH_CAPABILITIES 구조를 초기화하고 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 구조체의 CurrentNicSwitchCapabilities 멤버를 NDIS_NIC_SWITCH_CAPABILITIES 구조체에 대한 포인터로 설정합니다. 그런 다음 미니포트 드라이버는 NdisMSetMiniportAttributes 함수를 호출하고 MiniportAttributes 매개 변수를 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 구조체에 대한 포인터로 설정합니다.
참고 NDIS 6.30부터 SR-IOV(단일 루트 I/O 가상화) 인터페이스를 지원하는 미니포트 드라이버는 NIC 스위치의 사용 가능한 하드웨어 기능을 등록해야 합니다. 드라이버는 NdisMSetMiniportAttributes를 호출하여 이러한 기능을 등록합니다.
프로토콜 및 필터 드라이버를 과도하게 사용하는 경우 OID_NIC_SWITCH_CURRENT_CAPABILITIES OID 쿼리 요청을 실행할 필요가 없습니다. NDIS는 다음과 같은 방식으로 네트워크 어댑터의 현재 사용 가능한 NIC 스위치 하드웨어 기능을 이러한 드라이버에 제공합니다.
NDIS는 바인딩 작업 중 NDIS_BIND_PARAMETERS 구조체의 NicSwitchCapabilities 멤버에 있는 프로토콜 드라이버에 기본 네트워크 어댑터의 현재 활성화된 NIC 스위치 하드웨어 기능을 보고합니다.
NDIS는 기본 네트워크 어댑터의 현재 활성화된 NIC 스위치 하드웨어 기능을 연결 작업 중 NDIS_FILTER_ATTACH_PARAMETERS 구조체의 NicSwitchCapabilities 멤버에 있는 필터 드라이버에 오버리딩하는 것으로 보고합니다.
반환 상태 코드
NDIS는 미니포트 드라이버에 대한 OID_NIC_SWITCH_CURRENT_CAPABILITIES 요청의 OID 쿼리 요청을 처리합니다. 드라이버에 이 OID 요청이 발급되지 않습니다.
NDIS가 OID_NIC_SWITCH_CURRENT_CAPABILITIES 요청을 처리하면 다음 상태 코드 중 하나를 반환합니다.
상태 코드 | Description |
---|---|
NDIS_STATUS_SUCCESS |
요청이 성공적으로 완료되었습니다. InformationBuffer는 NDIS_NIC_SWITCH_CAPABILITIES 구조를 가리킵니다. |
NDIS_STATUS_NOT_SUPPORTED |
미니포트 드라이버는 단일 루트 I/O 가상화(SR-IOV) 인터페이스를 지원하지 않거나 인터페이스를 사용할 수 없습니다. |
NDIS_STATUS_INVALID_LENGTH |
정보 버퍼의 길이가 sizeof(NDIS_NIC_SWITCH_CAPABILITIES)보다 작습니다. 미니포트 드라이버는 DATA를 설정해야 합니다 . QUERY_INFORMATION. 필요한 최소 버퍼 크기에 대한 NDIS_OID_REQUEST 구조체의 BytesNeeded 멤버입니다. |
NDIS_STATUS_FAILURE |
다른 이유로 인해 요청이 실패했습니다. |
요구 사항
Version |
NDIS 6.20 이상에서 지원됩니다. |
헤더 |
Ntddndis.h(Ndis.h 포함) |