Fungsi IoCheckQuotaBufferValidity (ntifs.h)
Rutinitas IoCheckQuotaBufferValidity memeriksa apakah buffer kuota yang ditentukan valid.
Sintaks
NTSTATUS IoCheckQuotaBufferValidity(
[in] PFILE_QUOTA_INFORMATION QuotaBuffer,
[in] ULONG QuotaLength,
[out] PULONG ErrorOffset
);
Parameter
[in] QuotaBuffer
Penunjuk ke buffer yang berisi entri kuota yang akan diperiksa.
[in] QuotaLength
Panjang, dalam byte, dari QuotaBuffer.
[out] ErrorOffset
Variabel untuk menerima offset entri yang menyinggung dalam buffer kuota jika kesalahan ditemukan. Variabel ini hanya valid jika terjadi kesalahan.
Nilai kembali
IoCheckQuotaBufferValidity mengembalikan STATUS_SUCCESS jika buffer kuota valid. Jika tidak, ia mengembalikan STATUS_DATATYPE_MISALIGNMENT jika buffer kuota tidak selaras dengan ULONG. Untuk semua kesalahan lainnya, termasuk ketidakselarasan entri dalam buffer, IoCheckQuotaBufferValidity mengembalikan STATUS_QUOTA_LIST_INCONSISTENT.
Keterangan
IoCheckQuotaBufferValidity memeriksa setiap entri FILE_QUOTA_INFORMATION dalam buffer kuota yang ditentukan untuk memastikan bahwa kondisi berikut terpenuhi:
Seluruh entri harus berada dalam buffer.
Nilai Sid harus berupa pengidentifikasi keamanan (SID).
Nilai SidLength harus cocok dengan panjang dalam byte dari nilai Sid.
Untuk semua entri kecuali yang terakhir, nilai NextEntryOffset harus lebih besar dari nol dan harus jatuh pada batas ULONG.
Selain itu, IoCheckQuotaBufferValidity memeriksa buffer kuota untuk memastikan bahwa kondisi berikut terpenuhi:
Buffer harus selaras dengan ULONG.
Panjang yang dilewatkan dalam QuotaLength cocok dengan panjang buffer yang sebenarnya.
Panjang buffer aktual bersifat nonnegatif.
Agar valid, buffer kuota harus memenuhi semua ketentuan ini.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 |
Target Platform | Universal |
Header | ntifs.h (termasuk Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |