Função FsRtlOplockGetAnyBreakOwnerProcess (ntifs.h)
FsRtlOplockGetAnyBreakOwnerProcess retorna um proprietário de um bloqueio oportunista supostamente quebrando (oplock).
Sintaxe
PEPROCESS FsRtlOplockGetAnyBreakOwnerProcess(
POPLOCK Oplock
);
Parâmetros
Oplock
Ponteiro para a estrutura oplock opaca do arquivo. Esse ponteiro deve ter sido inicializado por uma chamada anterior para FsRtlInitializeOplock.
Retornar valor
Esse método retornará NULL se nenhum proprietário puder ser encontrado; caso contrário, ele retornará um ponteiro para o PEPROCESS (objeto de processo) de um proprietário.
Comentários
FsRtlOplockGetAnyBreakOwnerProcess seleciona um proprietário para o oplock supostamente quebrando da seguinte maneira:
Se o oplock tiver um proprietário exclusivo, FsRtlOplockGetAnyBreakOwnerProcess retornará um ponteiro para o EPROCESS do proprietário exclusivo.
Se o oplock não tiver um proprietário exclusivo e a fila de interrupção não estiver vazia, FsRtlOplockGetAnyBreakOwnerProcess retornará arbitrariamente um ponteiro para o primeiro EPROCESS na fila.
Caso contrário, FsRtlOplockGetAnyBreakOwnerProcess retornará NULL.
Se FsRtlOplockGetAnyBreakOwnerProcess retornar não NULL, o chamador será responsável por chamar ObDeferenceObject para liberar a referência adquirida em seu nome.
FsRtlOplockGetAnyBreakOwnerProcess não tenta verificar se uma interrupção está realmente pendente ou se o processo retornado é, de fato, o proprietário.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 2004 |
Cabeçalho | ntifs.h |