C30032

경고 C30032: 메모리 할당 함수를 호출하고 POOL_NX_OPTOUT 지시문을 사용하여 실행 메모리 요청을 강제합니다.

BANNED_MEM_ALLOCATION_FORCE_UNSAFE

전처리기 지시문 POOL_NX_OPTOUT 안전하지 않은 형식(MM_PAGE_PRIORITYPOOL_TYPE)이 안전한 형식(예: NonPagedPool에서 NonPagedPoolNx로)으로 자동 승격되는 것을 방지합니다. 원본에서 POOL_NX_OPTOUT 사용하는 것은 의도적으로 발생할 수 있습니다. 이는 의도적으로 수행되고 실행 가능한 메모리가 필요한 경우 Pragma Prefast를 사용하여 경고 메시지를 표시하지 않는 경고를 표시하지 않을 수 있습니다. 이 유형의 할당은 추가 메모리 보호를 옵트인한 Windows 10 시스템에서 허용되지 않습니다.

예제

다음 코드는 이 경고를 생성합니다.

원본 파일에서 다음을 수행합니다.

C_DEFINES=$(C_DEFINES) –DUNICODE -DPOOL_NX_OPTOUT=1

코드 파일에서 다음을 수행합니다.

pPtr = MmGetSystemAddressForMdlSafe( pMdl, NormalPagePriority);

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

원본 파일에서 다음을 추가합니다.

C_DEFINES=$(C_DEFINES) -DUNICODE -DPOOL_NX_OPTIN_AUTO=1

코드 파일에서 다음을 수행합니다.

pPtr = MmGetSystemAddressForMdlSafe( pMdl, NormalPagePriority);