Função MmIsDriverVerifyingByAddress (wdm.h)
O MmIsDriverVerifyingByAddress verifica se o driver do modo kernel identificado pelo endereço de imagem especificado está sendo verificado ou chama um driver que está sendo verificado pelo Driver Verifier.
Sintaxe
LOGICAL MmIsDriverVerifyingByAddress(
[in] PVOID AddressWithinSection
);
Parâmetros
[in] AddressWithinSection
Um ponteiro para o endereço virtual dentro da imagem do driver. MmIsDriverVerifyingByAddress usa esse endereço para determinar qual driver verificar.
Valor de retorno
MmIsDriverVerifyingByAddress retornará VERDADEIRO se o driver especificado estiver na lista de verificação de driver ou importar chamadas para pontos de entrada em um driver que esteja na lista de verificação de driver. Caso contrário, essa rotina retornará FALSE .
Observações
Um driver no modo kernel pode chamar essa rotina para determinar se ele ou outro driver está sendo monitorado por driver verifier. O Verificador de Driver monitora drivers no modo kernel para detectar chamadas ou ações de função ilegais que podem corromper o sistema. Para selecionar drivers a serem verificados, você pode usar o de Linha de Comando do Verificador de ou do Gerenciador do Verificador de Driver. Para obter mais informações sobre como adicionar drivers à lista de verificação de driver, consulte Selecionando drivers para serem verificados.
Uma rotina semelhante, MmIsDriverVerifying, indica se um driver identificado por um objeto driver está sendo verificado ou chama um driver que está sendo verificado.
Outra rotina relacionada, MmIsDriverSuspectForVerifier, indica se um driver representado por um objeto de driver está na lista de drivers selecionados para serem verificados.
Por exemplo, se o driver A tiver uma tabela de importação por meio da qual ele chama um ou mais pontos de entrada no driver B e o driver B estiver na lista de verificação do driver, MmIsDriverVerifyingByAddress(Aobj)
retornará VERDADEIRO e MmIsDriverSuspectForVerifier(Badr)
retornará TRUE, em que Aobj
é um ponteiro para o objeto driver para A e Badr
é um endereço no driver B. Se o driver A não estiver na lista de verificação do driver, MmIsDriverSuspectForVerifier(Aobj)
retornará false. Mesmo que o driver B não chame pontos de entrada em nenhum drivers que estejam na lista de verificação de driver, MmIsDriverVerifyingByAddress(Badr)
retornará VERDADEIRO porque o driver B está na lista de verificação do driver. Se um driver C não estiver na lista de verificação de driver e não chamar pontos de entrada em nenhum drivers que estejam na lista de verificação do driver, MmIsDriverVerifyingByAddress(Cadr)
e MmIsDriverSuspectForVerifier(Cobj)
retornarão false.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows Vista. |
da Plataforma de Destino | Universal |
cabeçalho | wdm.h (inclua Wdm.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | <=APC_LEVEL |