Hi
I am writing a protocol driver in NDIS6X.
For the following code sequence want to know the if the MDL chain is also freed (i.e IoFreeMdl() called on it). I am yet to get to teh stage to test this, so want to know in advance and if yes, code to allocate NB’s separately from a NBL.
ParametersNBL.fAllocateNetBuffer = TRUE;
pOpenContext->SendPool = NdisAllocateNetBufferListPool(Globals.NdisProtocolHandle, &ParametersNBL);
…
…
pFrame = NdisAllocateNetBufferAndNetBufferList(pOpenContext->SendPool,
sizeof(SEND_RSVD), //Request control offset delta
0, // back fill size
pMdl,
0, // Data offset, MsgLength);
…
…
NdisAllocateNetBufferAndNetBufferList(pFrame );
In the above call, will the MDL chain (I might at atmost 3 mdl’s in it) also be freed i.e IOFreeMDL will be called ??
Please let me know.
–thx