C30034

경고 C30034: 할당 함수에 플래그 값을 전달하면 실행 가능한 메모리가 할당될 수 있습니다. 할당 함수가 페이징되지 않은 실행 가능한 풀 형식을 요청하지 않는지 확인하세요.

BANNED_MEM_ALLOCATION_MAYBE_UNSAFE

실행 파일 비페이지 풀을 할당할 수 있는 함수에 대한 호출이 발견되었습니다. 결과 할당이 실제로 실행 불가능할 수 있음을 나타내는 매개 변수가 사용되지만 실행 가능한 메모리가 할당되었을 가능성이 낮고 실행 가능한 메모리가 할당된 것으로 확인됩니다. 이는 선택적 할당 함수를 매개 변수로 사용하는 함수에서 가장 일반적입니다.

예제

다음 코드는 pAllocate가 지정된 형식을 할당하는지 알 수 없기 때문에 이 경고를 생성합니다. 네 번째 매개 변수(0, 실행 가능)에서 또는 할당 형식이 pAllocate 내에서 설정되었는지 여부입니다.

ExInitializeNPagedLookasideList(   pLookaside,
                pAllocate,
                pFree,
                0,
                size,
                tag,
                depth);

다음 코드는 이 경고를 방지합니다.

ExInitializeNPagedLookasideList(   pLookaside,
                pAllocate,
                pFree,
                POOL_NX_ALLOCATION,
                size,
                tag,
                depth);