다음을 통해 공유


IoCheckQuotaBufferValidity 함수(ntifs.h)

IoCheckQuotaBufferValidity 루틴은 지정된 할당량 버퍼가 유효한지 여부를 확인합니다.

구문

NTSTATUS IoCheckQuotaBufferValidity(
  [in]  PFILE_QUOTA_INFORMATION QuotaBuffer,
  [in]  ULONG                   QuotaLength,
  [out] PULONG                  ErrorOffset
);

매개 변수

[in] QuotaBuffer

검사할 할당량 항목이 포함된 버퍼에 대한 포인터입니다.

[in] QuotaLength

QuotaBuffer의 길이(바이트)입니다.

[out] ErrorOffset

오류가 발견되면 할당량 버퍼에서 잘못된 항목의 오프셋을 받을 변수입니다. 이 변수는 오류가 발생하는 경우에만 유효합니다.

반환 값

IoCheckQuotaBufferValidity 는 할당량 버퍼가 유효한 경우 STATUS_SUCCESS 반환합니다. 그렇지 않으면 할당량 버퍼가 ULONG에 맞지 않으면 STATUS_DATATYPE_MISALIGNMENT 반환합니다. 버퍼에서 항목의 잘못된 정렬을 포함하여 다른 모든 오류의 경우 IoCheckQuotaBufferValidity 는 STATUS_QUOTA_LIST_INCONSISTENT 반환합니다.

설명

IoCheckQuotaBufferValidity 는 지정된 할당량 버퍼의 각 FILE_QUOTA_INFORMATION 항목을 검사하여 다음 조건이 충족되는지 확인합니다.

  • 전체 항목은 버퍼 내에 있어야 합니다.

  • Sid 값은 SID(보안 식별자)여야 합니다.

  • SidLength 값은 Sid 값의 길이(바이트)를 일치시켜야 합니다.

  • 마지막을 제외한 모든 항목의 경우 NextEntryOffset 값은 0보다 커야 하며 ULONG 경계에 있어야 합니다.

또한 IoCheckQuotaBufferValidity 는 할당량 버퍼를 검사하여 다음 조건이 충족되는지 확인합니다.

  • 버퍼는 ULONG에 맞춰야 합니다.

  • QuotaLength에 전달된 길이는 버퍼의 실제 길이와 일치합니다.

  • 실제 버퍼 길이는 무한합니다.

유효하려면 할당량 버퍼가 이러한 모든 조건을 충족해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000
대상 플랫폼 유니버설
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

추가 정보

FILE_QUOTA_INFORMATION

IRP_MJ_QUERY_QUOTA

IRP_MJ_SET_QUOTA