쿼리로, 오버리딩 드라이버는 OID_PM_PROTOCOL_OFFLOAD_LIST OID를 사용하여 기본 네트워크 어댑터에 설정된 프로토콜 오프로드를 열거할 수 있습니다. OID 쿼리 요청에서 성공적으로 반환된 후 NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 현재 활성 프로토콜 오프로드를 설명하는 NDIS_PM_PROTOCOL_OFFLOAD 구조 목록에 대한 포인터가 포함됩니다.
발언
NDIS는 미니포트 드라이버에 대한 쿼리를 처리합니다. NDIS 드라이버는 OID_PM_PROTOCOL_OFFLOAD_LIST OID를 사용하여 기본 네트워크 어댑터에 설정된 프로토콜 오프로드 목록을 가져올 수 있습니다.
목록의 각 NDIS_PM_PROTOCOL_OFFLOAD 구조체에 대해 NDIS는 NextProtocolOffloadOffset 멤버를 OID 정보 버퍼의 시작 부분(즉, NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버가 가리키는 버퍼의 시작 부분)에서 목록의 다음 NDIS_PM_PROTOCOL_OFFLOAD 구조의 시작 부분으로 설정합니다. NextProtocolOffloadOffset 목록의 마지막 구조체 멤버의 오프셋은 0입니다.
네트워크 어댑터에 설정된 프로토콜 오프로드가 없는 경우 NDIS는 DATA를 설정합니다. QUERY_INFORMATION. BytesWritten는 NDIS_OID_REQUEST 구조체의 멤버를 0으로 NDIS_STATUS_SUCCESS 반환합니다. 데이터 내의 데이터입니다. QUERY_INFORMATION. InformationBuffer 멤버는 NDIS에 의해 수정되지 않습니다.
NDIS는 요청에 대해 다음 상태 코드 중 하나를 반환합니다.
NDIS_STATUS_SUCCESS
요청이 성공적으로 완료되었습니다.
InformationBuffer 프로토콜 오프로드 목록에 대한 포인터(있는 경우)를 포함합니다.
NDIS_STATUS_PENDING
요청이 완료 보류 중입니다. 최종 상태 코드 및 결과는 호출자의 OID 요청 완료 처리기에 전달됩니다.
NDIS_STATUS_BUFFER_TOO_SHORT
정보 버퍼가 너무 짧습니다. NDIS는 DATA를 설정합니다. QUERY_INFORMATION. NDIS_OID_REQUEST 구조체의 BytesNeeded 멤버를 필요한 최소 버퍼 크기로 설정합니다.
NDIS_STATUS_FAILURE
이전 이유 이외의 이유로 요청이 실패했습니다.
요구 사항
버전 |
NDIS 6.20 이상에서 지원됩니다. 미니포트 드라이버에 대해서는 요청되지 않습니다. (설명 섹션 참조) |
머리글 |
Ntddndis.h(Ndis.h 포함) |