Função IoCheckQuotaBufferValidity (ntifs.h)
O 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.
Valor de retorno
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.
Observações
IoCheckQuotaBufferValidity verifica cada entrada FILE_QUOTA_INFORMATION no buffer de cota especificado para garantir que as seguintes condições sejam atendidas:
A entrada inteira 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 cotas 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 |
---|---|
de cliente com suporte mínimo | Windows 2000 |
da Plataforma de Destino | Universal |
cabeçalho | ntifs.h (inclua Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |