C30034
aviso C30034: Passando um valor de sinalizador para uma função de alocação que pode resultar na alocação de memória executável. Verifique se a função de alocação não está solicitando uma forma de pool executável não paginado.
BANNED_MEM_ALLOCATION_MAYBE_UNSAFE
Foi encontrada uma chamada para uma função que resulta na possível alocação de pool executável não paginado. Existem parâmetros usados que indicam que a alocação resultante pode realmente não ser executável, mas é determinado que isso é improvável e a memória executável foi alocada. Isso é mais comum com uma função que usa funções de alocação opcionais como parâmetro.
Exemplo
O código a seguir gera esse aviso porque não se sabe se pAllocate aloca o tipo especificado - neste o quarto parâmetro (0, que é executável) ou se o tipo de alocação é definido de dentro pAllocate.
ExInitializeNPagedLookasideList( pLookaside,
pAllocate,
pFree,
0,
size,
tag,
depth);
O código a seguir evita esse aviso:
ExInitializeNPagedLookasideList( pLookaside,
pAllocate,
pFree,
POOL_NX_ALLOCATION,
size,
tag,
depth);