Re: ntdev digest: October 30, 2000

NT Developers Interest List digest wrote:

NT Developers Interest List Digest for Monday, October 30, 2000.


Subject: Re: TDI Question
From: Justin White
> Date: Mon, 30 Oct 2000 09:07:33 +0200
> X-Message-Number: 1
>
> Thanks Jason,
>
> This does help a bit, although as far as i know, a TDI_ACCEPT does not
> have to be used if a ClientEventConnect handler is registered. The
> ClientEventConnect handler does however fill in the ConnectionContext
> value and then return to the transport with this value set. This context
> value is then supposed to be NULL if the connection is refused. My
> problem is that the TDI_ACCEPT is not being called and so although I
> have the open address object, if the ACCEPT call is not made, I can’t
> make the association.

Justin,

To accept a connection, you must ultimately supply a TDI_ACCEPT IRP.
The key is that it is not always supplied by an explict call to
TDI_ACCEPT.

In the case of ClientEventConnect, the final parameter in this function
call is a IRP *pAcceptIrp - a pointer to an IRP.

If the client wants to accept the connection, it must return an IRP
which has been pre-built as a TDI_ACCEPT IRP, and set the return status
to STATUS_MORE_PROCESSING_REQUIRED.

This is where you TDI_ACCEPT is coming from, and it lets you do the
association.

Hope this helps,

Jason

Jason O’Broin, Member of Technical Staff, Server Products Group
Wind River Networks, 500 Wind River Way, Alameda, CA 94501-1147 USA
Phone: +1 (510) 749 2466 Fax: +1 (510) 749 2914 Email: xxxxx@wrs.com