NdisDprFreePacket function
Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
NdisDprFreePacket releases a driver-allocated packet descriptor and returns it to the free list when the caller is running at IRQL = DISPATCH_LEVEL.
Syntax
VOID NdisDprFreePacket(
_In_ PNDIS_PACKET Packet
);
Parameters
- Packet [in]
Pointer to the packet descriptor returned by NdisDprAllocatePacket or NdisAllocatePacket.
Return value
None
Remarks
Before calling NdisDprFreePacket, the driver either must call NdisFreeBuffer as many times as necessary to release all buffer descriptors chained to the packet, or it must call an NdisUnchainBufferAtXxx function as many times as necessary to save all pointers to buffer descriptors. Otherwise, memory associated with buffer descriptors in the chain remains unusable by the driver and by NDIS until the system is rebooted.
Callers of NdisDprFreePacket must be running at IRQL = DISPATCH_LEVEL. Otherwise, drivers should call NdisFreePacket.
Requirements
Target platform |
Universal |
Version |
Not supported for NDIS 6.0 drivers in Windows Vista. Supported for NDIS 5.1 drivers in Windows Vista and Windows XP. |
Header |
Ndis.h (include Ndis.h) |
Library |
Ndis.lib |
IRQL |
DISPATCH_LEVEL (See Remarks section) |
See also