ndis.h: Fix definition of NdisQueryPacketLength

svn path=/branches/ros-amd64-bringup/; revision=41071
This commit is contained in:
Timo Kreuzer 2009-05-23 11:40:44 +00:00
parent 107b7b3802
commit bd27ff9406

View file

@ -1997,34 +1997,10 @@ NdisQueryPacket(
#define NdisQueryPacketLength(Packet, \
TotalPacketLength) \
{ \
if ((TotalPacketLength)) \
{ \
if (!(Packet)->Private.ValidCounts) { \
UINT _Offset; \
UINT _PacketLength; \
PNDIS_BUFFER _NdisBuffer; \
UINT _PhysicalBufferCount = 0; \
UINT _TotalPacketLength = 0; \
UINT _Count = 0; \
\
for (_NdisBuffer = (Packet)->Private.Head; \
_NdisBuffer != (PNDIS_BUFFER)NULL; \
_NdisBuffer = _NdisBuffer->Next) \
{ \
_PhysicalBufferCount += NDIS_BUFFER_TO_SPAN_PAGES(_NdisBuffer); \
NdisQueryBufferOffset(_NdisBuffer, &_Offset, &_PacketLength); \
_TotalPacketLength += _PacketLength; \
_Count++; \
} \
(Packet)->Private.PhysicalCount = _PhysicalBufferCount; \
(Packet)->Private.TotalLength = _TotalPacketLength; \
(Packet)->Private.Count = _Count; \
(Packet)->Private.ValidCounts = TRUE; \
} \
\
if (TotalPacketLength) \
*((PUINT)TotalPacketLength) = (Packet)->Private.TotalLength; \
} \
if (!(Packet)->Private.ValidCounts) \
NdisQueryPacket(Packet, NULL, NULL, NULL, TotalPacketLength); \
else \
*(TotalPacketLength) = (Packet)->Private.TotalLength; \
}