NDIS_SET_PACKET_TIME_RECEIVED

This macro sets the TimeReceived value in the out-of-band data block associated with a specified packet descriptor.

At a Glance

Header file: Ndis.h
Windows CE versions: 2.0 and later

Syntax

NDIS_SET_PACKET_TIME_RECEIVED( IN PNDIS_PACKET Packet,
IN ULONGLONG TimeReceived );

Packet
Pointer to a packet desciptor allocated by the caller for receive indications.
TimeReceived
Specifies the system time at which the packet was received from the remote node on the network.

Remarks

Drivers use this macro to set this time stamp in the out-of-band data block associated with a packet descriptor before calling the NdisMIndicateReceivePacket function. Miniports that indicate multipacket receives can set the TimeReceived parameter for each packet in an idicated array to the same value before making an indication, particularly if the NIC has no internal clock, so the NIC driver calls the NdisGetCurrentSystemTime function.

All time stamps set in the NDIS_PACKET_OOB_DATA structures associated with packet descriptors are expressed in system time units as the number of 100-nanosecond intervals since January 1, 1601. A driver calls NdisGetCurrentSystemTime to supply the TimeReceived parameter to NDIS_SET_PACKET_TIME_RECEIVED.

If the ProtocolReceive function is called with an indicated packet descriptor for which the underlying driver set the TimeReceived time stamp, ProtocolReceive calls NdisQueryReceiveInformation to get this time stamp.

A driver that calls this macro runs in IRQL <=DISPATCH_LEVE.

See Also

NdisMIndicateReceivePacket, NDIS_SET_PACKET_TIME_SENT