NdisSetOptionalHandlers 함수(ndis.h)
NDIS 드라이버는 NdisSetOptionalHandlers 함수를 호출하여 드라이버 함수의 진입점을 설정하거나 변경할 수 있습니다.
통사론
NDIS_STATUS NdisSetOptionalHandlers(
NDIS_HANDLE NdisHandle,
PNDIS_DRIVER_OPTIONAL_HANDLERS OptionalHandlers
);
매개 변수
NdisHandle
드라이버 또는 드라이버 인스턴스를 식별하는 NDIS 핸들입니다.
프로토콜 드라이버의 경우 ProtocolSetOptions 함수에 전달된 NdisDriverHandle 값이거나 NdisOpenAdapterEx 함수를 호출하여 얻은 NdisBindingHandle 값입니다.
미니포트 드라이버의 경우 MiniportSetOptions 함수에 전달된 NdisDriverHandle 값입니다.
필터 드라이버의 경우 FilterSetOptions 함수에 전달된 NdisDriverHandle 값 또는 FilterAttach 함수에 전달된 NdisFilterHandle 값입니다.
OptionalHandlers
다음 NDIS 구조 중 하나에 대한 포인터입니다.
NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_FILTER_PARTIAL_CHARACTERISTICS NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICSNDIS_MINIPORT_SS_CHARACTERISTICS
NDIS_NDK_PROVIDER_CHARACTERISTICS
NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS반환 값
NdisSetOptionalHandlers 다음 상태 값 중 하나를 반환합니다.
반환 코드 | 묘사 |
---|---|
|
NdisSetOptionalHandlers 드라이버 진입점을 설정하면 NDIS_STATUS_SUCCESS 반환합니다. |
|
NdisSetOptionalHandlers 리소스 부족으로 인해 실패했습니다. |
|
미니포트 드라이버가 NDIS 6.0 이상을 지원한다고 지정하지 않았기 때문에 NdisSetOptionalHandlers 실패했습니다. 미니포트 드라이버는 다음을 호출할 때 해당 NDIS 버전을 지정합니다. NdisMRegisterMiniportDriver 함수입니다. |
|
NdisSetOptionalHandlers 이전 값이 적용되지 않으면 NDIS_STATUS_FAILURE 반환합니다. |
발언
NDIS 드라이버는 NdisSetOptionalHandlers 호출하여 기본 진입점을 덮어쓸 수 있습니다. OptionalHandlers에서 전달되는 구조체 형식은 드라이버 유형에 따라 달라질 있습니다.
프로토콜 드라이버는 ProtocolSetOptions 함수의 컨텍스트에서 NdisSetOptionalHandlers 호출할 수 있습니다. 옵션으로 프로토콜 드라이버는 ProtocolBindAdapterEx 함수 또는 NdisSetOptionalHandlers 호출할 수 있습니다. 프로토콜 드라이버가 NdisOpenAdapterEx 함수에서 유효한 핸들을 가져온 후 ProtocolOpenAdapterCompleteEx 함수를.
이 경우 유효한 구조는 다음과 같습니다.
NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS2 굴뚝 오프로드 구조에 대한 자세한 내용은 NDIS 6.0 TCP 굴뚝 오프로드 설명서참조하세요.
미니포트 드라이버는 MiniportSetOptions 함수의 컨텍스트에서 NdisSetOptionalHandlers 호출합니다.
이 경우 유효한 구조는 다음과 같습니다.
NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICSNDIS_MINIPORT_SS_CHARACTERISTICS
NDIS_NDK_PROVIDER_CHARACTERISTICS
NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS2 굴뚝 오프로드 구조에 대한 자세한 내용은 NDIS 6.0 TCP 굴뚝 오프로드 설명서참조하세요.
필터 드라이버는 FilterSetOptions 함수의 컨텍스트에서 NdisSetOptionalHandlers 호출합니다.
현재 Windows 버전에는 선택적 필터 드라이버 서비스가 없습니다.
필터 드라이버는 필터 모듈에 NdisSetOptionalHandlers 호출할 수 있습니다. 필터 드라이버는 컨텍스트에서 NdisSetOptionalHandlers 호출합니다. FilterSetModuleOptions 함수를.
이 경우 유효한 구조는 다음과 같습니다.
NDIS_FILTER_PARTIAL_CHARACTERISTICSNDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS
NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS
NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS
NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS
4 굴뚝 오프로드 구조에 대한 자세한 내용은 NDIS 6.0 TCP 굴뚝 오프로드 설명서참조하세요.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
대상 플랫폼 | 보편적 |
헤더 | ndis.h(Ndis.h 포함) |
라이브러리 | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI 규정 준수 규칙 | Irql_Miscellaneous_Function(ndis) |