RE: NDIS 6 ?modify send packet , cause BSOD

Are you making a deep copy of the packet (NBL)? The MDL chain passed to
you describing the packet data (frame) is not describing a buffer you can
write to typically. If you want to modify it, you should be modifying a
copy.

You will get further with this forum if you post the results of !analyze
from the crash instead of just leaving us to guess what caused the BSOD.

Good Luck,
Dave Cattley

hi David,
I have copied the NBL ,

pNewBufList = allocateNetBufferAndList( pFilter, PacketSize , TRUE );
if ( pNewBufList == NULL ) break;

NtStatus =
NdisCopyFromNetBufferToNetBuffer(NET_BUFFER_LIST_FIRST_NB(pNewBufList),

0,
PacketSize,
NET_BUFFER_LIST_FIRST_NB(pSendPacketList),
0,
&BytesCopied);

if( NtStatus != STATUS_SUCCESS )

{
*pNewNetBufferLists = NULL;
FreeMdlAndNetBufferList( pNewBufList );
break;
}