Irql_NetBuffer_Function rule (ndis)
The Irql_NetBuffer_Function rule specifies that the NET_BUFFER-related functions must be called at correct IRQL levels.
This rule verifies the following NDIS functions:
NdisAdvanceNetBufferDataStart disAdvanceNetBufferListDataStart NdisAllocateCloneNetBufferList NdisAllocateFragmentNetBufferList NdisAllocateMdl NdisAllocateNetBuffer NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferList NdisAllocateNetBufferListContext NdisAllocateNetBufferListPool NdisAllocateNetBufferMdlAndData NdisAllocateNetBufferPool NdisAllocateReassembledNetBufferList NdisCopyFromNetBufferToNetBuffer NdisCopyReceiveNetBufferListInfo NdisCopySendNetBufferListInfo NdisFreeCloneNetBufferList NdisFreeFragmentNetBufferList NdisFreeMdl NdisFreeNetBuffer NdisFreeNetBufferList NdisFreeNetBufferListContext NdisFreeNetBufferListPool NdisFreeNetBufferPool NdisFreeReassembledNetBufferList NdisGetDataBuffer NdisGetMdlPhysicalArraySize NdisGetPoolFromNetBuffer NdisGetPoolFromNetBufferList NdisQueryMdl NdisQueryMdlOffset NdisQueryNetBufferPhysicalCount NdisRetreatNetBufferDataStart NdisRetreatNetBufferListDataStart
Driver model: NDIS
How to test
At compile time |
---|
Run Static Driver Verifier and specify the Irql_NetBuffer_Function rule. Use the following steps to run an analysis of your code:
For more information, see Using Static Driver Verifier to Find Defects in Drivers. |
Applies to
NdisAdvanceNetBufferDataStart NdisAdvanceNetBufferListDataStart NdisAllocateCloneNetBufferList NdisAllocateFragmentNetBufferList NdisAllocateMdl NdisAllocateNetBuffer NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferList NdisAllocateNetBufferListContext NdisAllocateNetBufferListPool NdisAllocateNetBufferMdlAndData NdisAllocateNetBufferPool NdisAllocateReassembledNetBufferList NdisCopyFromNetBufferToNetBuffer NdisCopyReceiveNetBufferListInfo NdisCopySendNetBufferListInfo NdisFreeCloneNetBufferList NdisFreeFragmentNetBufferList NdisFreeMdl NdisFreeNetBuffer NdisFreeNetBufferList NdisFreeNetBufferListContext NdisFreeNetBufferListPool NdisFreeNetBufferPool NdisFreeReassembledNetBufferList NdisGetDataBuffer NdisGetMdlPhysicalArraySize NdisGetPoolFromNetBuffer NdisGetPoolFromNetBufferList NdisQueryMdl NdisQueryMdlOffset NdisQueryNetBufferPhysicalCount NdisRetreatNetBufferDataStart NdisRetreatNetBufferListDataStart