Поделиться через


правило Irql_NetBuffer_Function (ndis)

Правило Irql_NetBuffer_Function указывает, что функции, связанные с NET_BUFFER, должны вызываться на правильных уровнях IRQL.

Это правило проверяет следующие функции NDIS:

NdisAdvanceNetBufferDataStartdisAdvanceNetBufferListDataStartNdisAllocateCloneNetBufferListNdisAllocateFragmentNetBufferListNdisAllocateMdlNdisAllocateNetBufferNdisAllocateNetBufferAndNetBufferListNdisAllocateNetBufferListNdisAllocateNetBufferListContextNdisAllocateNetBufferListPoolNdisAllocateNetBufferMdlAndDataNdisAllocateNetBufferPoolNdisAllocateReassembledNetBufferListNdisCopyFromNetBufferToNetBufferToNetBufferNdisCopyReceiveNetBufferListInfoNdisCopySendNetBufferListInfoNdisFreeCloneNetBufferListNdisFreeFragmentNetBufferListNdisFreeMdlNdisFreeNetBufferNdisFreeNetBufferListNdisFreeNetBufferListContextNdisFreeNetBufferListPoolNdisFreeNetBufferPoolNdisFreeReassembledNetBufferListNdisGetDataBufferNdisGetMdlPhysicalArraySizeNdisGetPoolFromNetBufferNdisGetPoolFromNetBufferListNdisQueryMdlNdisQueryMdlOffsetNdisQueryNetBufferPhysicalCountNdisRetreatNetBufferDataStartNdisRetreatNetBufferListDataStart

Модель драйвера: NDIS

Как тестировать

Во время компиляции

Запустите средство проверки статических драйверов и укажите правило Irql_NetBuffer_Function .

Чтобы выполнить анализ кода, выполните следующие действия.
  1. Подготовьте код (используйте объявления типов ролей).
  2. Запустите средство проверки статических драйверов.
  3. Просмотр и анализ результатов.

Дополнительные сведения см. в статье Использование средства проверки статических драйверов для поиска дефектов в драйверах.

Применяется к

NdisAdvanceNetBufferDataStartNdisAdvanceNetBufferListDataStartNdisAllocateCloneNetBufferListNdisAllocateFragmentNetBufferListNdisAllocateMdlNdisAllocateNetBuffNdisAllocateNetBufferAndNetBufferListNdisAllocateNetBufferListNdisAllocateNetBufferListContextNdisAllocateNetBufferListPoolNdisAllocateNetBufferMdlAndDataNdisAllocateNetBufferPoolNdisAllocateReassembledNetBufferListNdisCopyFromNetBufferToNetBufferToNetBufferNdisCopyReceiveNetBufferListInfoNdisCopySendNetBufferListInfoNdisFreeCloneNetBufferListNdisFreeFragmentNetBufferListNdisFreeMdlNdisFreeNetBufferNdisFreeNetBufferListNdisFreeNetBufferListContextNdisFreeNetBufferListPoolNdisFreeNetBufferPoolNdisFreeReassembledNetBufferListNdisGetDataBufferNdisGetMdlPhysicalArraySizeNdisGetPoolFromNetBufferNdisGetPoolFromNetBufferListNdisQueryMdlNdisQueryMdlOffsetNdisQueryNetBufferPhysicalCountNdisRetreatNetBufferDataStartNdisRetreatNetBufferListDataStart