Regra KsInvalidStreamPointer (ks)
A regra KsInvalidStreamPointer verifica se um driver de miniporto KS fornece um ponteiro de Stream KS válido como um argumento de função. Violações típicas são causadas por manipulação incorreta de ponteiro ou corrupção de ponteiro causada pelo uso incorreto de memória.
Um ponteiro de fluxo válido é um ponteiro de fluxo de borda à esquerda ou à direita ou um ponteiro de fluxo que foi clonado por meio de KsStreamPointerClone. Para obter mais informações, consulte Ponteiros de Stream de borda à esquerda e à direita.
Essa regra também verifica se KsStreamPointerDelete não foi usado para tentar excluir um ponteiro de fluxo não clonado.
Modelo de driver: KS
Marcar de bugs encontradas com esta regra: 0xC4 de Verificação de Bugs: DRIVER_VERIFIER_DETECTED_VIOLATION (0x0008100C)
Exemplo
O código a seguir viola essa regra.
PKKSSTREAM_POINTER StreamPointer = KsPinGetLeadingEdgeStreamPointer (Pin, KSSTREAM_POINTER_STATE_UNLOCKED);
//
// ERROR: KsStreamPointerDelete can only be called on clone stream pointers.
//
KsStreamPointerDelete (StreamPointer);
Esse código também viola a regra.
KsStreamPointerDelete (NULL);
Como testar
Em tempo de execução |
---|
Para verificar essa regra, abra uma janela do Prompt de Comando. Insira um comando Verificador de Driver e especifique /domain ks. Por exemplo: Para obter mais informações, consulte Verificador de Driver. |
verifier /domain ks [opções] /driver<yourdriver>
Em tempo de execução |
---|
Execute o Verificador de Driver e selecione a opção de verificação de conformidade da DDI . |
Aplica-se a
KsStreamPointerDelete
KsStreamPointerAdvance
KsStreamPointerAdvanceOffsetsAndUnlock
KsStreamPointerCancelTimeout
KsStreamPointerGetIrp
KsStreamPointerGetMdl
KsStreamPointerGetNextClone
KsStreamPointerLock
KsStreamPointerScheduleTimeout
KsStreamPointerSetStatusCode
KsStreamPointerUnlock
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de