Função IoCheckQuotaBufferValidity (ntifs.h)
A rotina IoCheckQuotaBufferValidity verifica se o buffer de cota especificado é válido.
Sintaxe
NTSTATUS IoCheckQuotaBufferValidity(
[in] PFILE_QUOTA_INFORMATION QuotaBuffer,
[in] ULONG QuotaLength,
[out] PULONG ErrorOffset
);
Parâmetros
[in] QuotaBuffer
Ponteiro para o buffer que contém as entradas de cota a serem verificadas.
[in] QuotaLength
Comprimento, em bytes, de QuotaBuffer.
[out] ErrorOffset
Uma variável para receber o deslocamento da entrada ofensiva no buffer de cota se um erro for encontrado. Essa variável só será válida se ocorrer um erro.
Retornar valor
IoCheckQuotaBufferValidity retornará STATUS_SUCCESS se o buffer de cota for válido. Caso contrário, ele retornará STATUS_DATATYPE_MISALIGNMENT se o buffer de cota não estiver alinhado ao ULONG. Para todos os outros erros, incluindo o desalinhamento de entradas no buffer, IoCheckQuotaBufferValidity retorna STATUS_QUOTA_LIST_INCONSISTENT.
Comentários
IoCheckQuotaBufferValidity verifica cada entrada FILE_QUOTA_INFORMATION no buffer de cota especificado para garantir que as seguintes condições sejam atendidas:
Toda a entrada deve estar dentro do buffer.
O valor de Sid deve ser um SID (identificador de segurança).
O valor de SidLength deve corresponder ao comprimento em bytes do valor de Sid.
Para todas as entradas, exceto a última, o valor de NextEntryOffset deve ser maior que zero e deve cair em um limite ULONG.
Além disso, IoCheckQuotaBufferValidity verifica o buffer de cota para garantir que as seguintes condições sejam atendidas:
O buffer deve estar alinhado ao ULONG.
O comprimento passado em QuotaLength corresponde ao comprimento real do buffer.
O comprimento real do buffer não é negativo.
Para ser válido, o buffer de cota deve atender a todas essas condições.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 |
Plataforma de Destino | Universal |
Cabeçalho | ntifs.h (inclua Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |