Hi,
I am seeing some wierd behavior with TCP/IP and an NDIS hooking
filter driver. In our NDIS filter we send a packet to NDIS return the
status NDIS returns back to the protocol driver, which then calls our
TDI filter. This is to be expected, and works well most of the time.
The problem occurs when a user mode application calls send for
up to one packet’s worth of data. Sometimes when NdisSend returns
pending, and we indicate that up to TCP/IP, TCP/IP calls our TDI_SEND
completion routine before NDIS has actually sent the packet!
This messes up our timing of sends, as we haven’t yet marked the
end of a send since the packet hasn’t actually gone out yet.
Is this a bug? Is there something I’m missing? My understanding
is the the TDI_SEND completion routine should not be called until the
packet has actually been sent.
Thanks!
-Jeff
**********************************************************************
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.
This footnote also confirms that this email message has been swept by
the latest virus scan software available for the presence of computer
viruses.
**********************************************************************