NDIS_SET_PACKET_TIME_RECEIVED 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.

NDIS_SET_PACKET_TIME_RECEIVED sets the TimeReceived value in the out-of-band data block associated with a given packet descriptor.

Syntax

VOID NDIS_SET_PACKET_TIME_RECEIVED(
  _In_ PNDIS_PACKET Packet,
  _In_ ULONGLONG    TimeReceived
);

Parameters

  • Packet [in]
    Pointer to a packet descriptor allocated by the caller for receive indications.

  • TimeReceived [in]
    Specifies the system time at which the packet was received from the remote node on the network.

Return value

None

Remarks

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

All timestamps set in the NDIS_PACKET_OOB_DATA blocks associated with packet descriptors are expressed in system time units as the number of 100-nanosecond intervals since January 1, 1601. A driver can call NdisGetCurrentSystemTime to supply the TimeReceived argument to NDIS_SET_PACKET_TIME_RECEIVED.

When a protocol driver's ProtocolReceivePacket function is called with such an indication, it can use NDIS_GET_TIME_RECEIVED to retrieve the TimeReceived timestamp using the Packet pointer it is given on entry.

If the ProtocolReceive function is called with an indicated packet descriptor for which the underlying driver set the TimeReceived timestamp, ProtocolReceive can call NdisGetReceivedPacket and NDIS_GET_ORIGINAL_PACKET to get the packet that contains this timestamp.

Requirements

Target platform

Desktop

Header

Ndis.h (include Ndis.h)

IRQL

<= DISPATCH_LEVEL

See also

MiniportHandleInterrupt

MiniportTimer

NdisGetCurrentSystemTime

NDIS_GET_ORIGINAL_PACKET

NDIS_GET_PACKET_TIME_RECEIVED

NdisGetReceivedPacket

NdisMIndicateReceivePacket

NDIS_OOB_DATA_FROM_PACKET

NDIS_PACKET_OOB_DATA

NDIS_SET_PACKET_TIME_SENT

ProtocolReceive

ProtocolReceivePacket

 

 

Send comments about this topic to Microsoft