다음을 통해 공유


OID_PM_ADD_WOL_PATTERN

집합으로 NDIS 프로토콜 드라이버는 OID_PM_ADD_WOL_PATTERN OID를 사용하여 네트워크 어댑터에 전원 관리 wake-on-LAN 패턴을 추가합니다. NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버는 NDIS_PM_WOL_PATTERN 구조체에 대한 포인터를 포함합니다.

설명

NDIS 6.20 이상 프로토콜 드라이버는 OID_PM_ADD_WOL_PATTERN 사용하여 네트워크 어댑터에 WOL(Wake on LAN) 패턴을 추가합니다. OID 요청에는 네트워크 어댑터가 저전력 상태일 때 들어오는 패킷과 비교해야 하는 기준이 포함되어 있습니다. 네트워크 어댑터는 패턴 조건과 일치하는 패킷을 받을 때 절전 모드 해제 이벤트를 생성해야 합니다.

프로토콜 드라이버는 기본 네트워크 어댑터에 성공적으로 바인딩된 후 WOL 패턴을 설정하는 데 필요한 데이터(예: 인터페이스의 IP 주소)가 있는 즉시 WOL 패턴을 추가할 수 있습니다. 프로토콜 드라이버는 이전에 추가된 WOL 패턴 또는 오프로드된 프로토콜의 거부와 같은 다른 전원 관리 이벤트 알림에 대한 응답으로 WOL 패턴을 추가할 수도 있습니다.

동일한 미니포트 어댑터에 바인딩된 NDIS 및 기타 프로토콜 드라이버의 경합 상태를 방지하기 위해 NDIS가 네트워크 어댑터를 저전력 상태로 설정하기 시작하면 해당 네트워크 어댑터에 새 절전 모드 해제 패턴을 추가하지 못합니다. 예를 들어 NDIS 프로토콜 드라이버가 해당 네트워크 어댑터에 대한 NetEventSetPower 이벤트 알림을 처리하는 컨텍스트에서 새 WOL 패턴을 추가하려고 하면 NDIS가 요청에 실패합니다.

NDIS가 이 OID 요청을 기본 NDIS 드라이버로 보내거나 오버리싱 드라이버에 요청을 완료하기 전에 NDIS_PM_WOL_PATTERN 구조체의 ULONG PatternId 멤버를 고유한 값으로 설정합니다. 프로토콜 드라이버 및 NDIS는 OID_PM_REMOVE_WOL_PATTERN OID 요청과 함께 이 패턴 식별자를 사용하여 기본 네트워크 어댑터에서 WOL 패턴을 제거합니다.

참고 패턴 식별자는 네트워크 어댑터에 설정된 각 패턴에 대한 고유한 값입니다. 그러나 패턴 식별자는 모든 미니포트 어댑터에서 전역적으로 고유하지 않습니다.

NDIS 또는 기본 네트워크 어댑터가 WOL 패턴을 제거하면 NDIS_STATUS_PM_WOL_PATTERN_REJECTED 상태 표시가 생성됩니다. NDIS_STATUS_INDICATION 구조체의 StatusBuffer 멤버에는 거부된 WOL 패턴의 ULONG WOL 패턴 식별자가 포함됩니다.

미니포트 드라이버는 요청에 대한 다음 상태 코드 중 하나를 반환합니다.

NDIS_STATUS_SUCCESS
요청된 패턴이 성공적으로 추가되었습니다. NDIS_PM_WOL_PATTERN 구조체의 PatternId 멤버에는 패턴 식별자가 포함되어 있습니다.

NDIS_STATUS_PENDING
요청이 완료될 때까지 보류 중입니다. NDIS는 요청이 완료된 후 최종 상태 코드와 결과를 호출자의 OID 요청 완료 처리기에 전달합니다.

NDIS_STATUS_PM_WOL_PATTERN_LIST_FULL
패턴 목록이 가득 차 네트워크 어댑터가 다른 패턴을 추가할 수 없으므로 요청이 실패했습니다.

NDIS_STATUS_RESOURCES
NDIS 또는 기본 네트워크 어댑터는 리소스 부족으로 인해 새 패턴을 추가할 수 없습니다.

NDIS_STATUS_INVALID_PARAMETER
NDIS_PM_WOL_PATTERN 구조체에서 하나 이상의 매개 변수가 잘못되었습니다.

NDIS_STATUS_BUFFER_TOO_SHORT
정보 버퍼가 너무 짧습니다. NDIS는 데이터를 설정합니다 . SET_INFORMATION. 필요한 최소 버퍼 크기에 대한 NDIS_OID_REQUEST 구조체의 BytesNeeded 멤버입니다.

NDIS_STATUS_NOT_SUPPORTED
네트워크 어댑터는 요청된 WOL 패턴을 지원하지 않습니다.

NDIS_STATUS_FAILURE
이전 이유 이외의 이유로 요청이 실패했습니다.

요구 사항

Version

NDIS 6.20 이상에서 지원됩니다. 미니포트 드라이버의 경우 필수입니다.

헤더

Ntddndis.h(Ndis.h 포함)

추가 정보

NDIS_OID_REQUEST

NDIS_PM_WOL_PATTERN

NDIS_STATUS_INDICATION

NDIS_STATUS_PM_WOL_PATTERN_REJECTED

OID_PM_REMOVE_WOL_PATTERN

OID_PNP_ADD_WAKE_UP_PATTERN