ChristerH
asked on
Looking NT DDK TDI information and samples
Hi Driver lovers!
The DDK/TDI for Windown NT documentation is not
complete, far away. Information about the parameters
to the function called is missing. The only thing I
wish to do is to interface the TDI from my own kernel
driver at the simplies way, by building an interface
(should not be nessesary!) that supports following:
* Opens a port or creates one for other clients to
connect against (both TCP and UDP)
* Sends frames from different driver levels
* Makes it possible to register a callback function for receive frames
* Close/delete the port.
I'm sure that Microsoft-Bill has written some very
good samples during the development of the TDI. I
would be very pleased if i could get some of these.
I did found an example in the DDK for NT 4.0 (Note!!!)
called TDI, but it was too complex, TDI isn't that
hard and difficult to understand that this sample
shows (?).
There must also be some user mode application that
uses that sample and I don't seem to find it!
The DDK/TDI for Windown NT documentation is not
complete, far away. Information about the parameters
to the function called is missing. The only thing I
wish to do is to interface the TDI from my own kernel
driver at the simplies way, by building an interface
(should not be nessesary!) that supports following:
* Opens a port or creates one for other clients to
connect against (both TCP and UDP)
* Sends frames from different driver levels
* Makes it possible to register a callback function for receive frames
* Close/delete the port.
I'm sure that Microsoft-Bill has written some very
good samples during the development of the TDI. I
would be very pleased if i could get some of these.
I did found an example in the DDK for NT 4.0 (Note!!!)
called TDI, but it was too complex, TDI isn't that
hard and difficult to understand that this sample
shows (?).
There must also be some user mode application that
uses that sample and I don't seem to find it!
Yes, there are Windows 95 and NT's TDI-client example from PCA-USA, if you are willing to spend about $400.
"http://www.pcausa.com/products/tdiclient.htm"
By the way, the DDK's TDI example is not an example of TDI-client, but an example of TDI driver. But it will help you in understanding the TDI interface. NT-DDK does talk a little bit about TDI-client (accessable in both kernel and application layer). While TDIVXD document talks about a variant TDI interface in Windows 95 environment.
Look at "tdikrnl.h" in "ntddk\src\network\inc" for TDI-client IRP macros.
"http://www.pcausa.com/products/tdiclient.htm"
By the way, the DDK's TDI example is not an example of TDI-client, but an example of TDI driver. But it will help you in understanding the TDI interface. NT-DDK does talk a little bit about TDI-client (accessable in both kernel and application layer). While TDIVXD document talks about a variant TDI interface in Windows 95 environment.
Look at "tdikrnl.h" in "ntddk\src\network\inc" for TDI-client IRP macros.
ASKER
I have already ordered PCA's "TDICLIENT-95/NT-007 TDI Client sample for Windows 95 and Windows NT". The problem is that this is an ECHO-server that allows clients to connect against it, and then it sends back the packets reusing the system resources allocated when sending the packet back. I wich to also conntct agains other servers and allocate NDIS-buffers, IRS's and other stuff when sending a new packet.
I'm not quite sure what you want to know? You mean you want to know to use NDIS_BUFFER's and IRP's???
Sorry about mistakingly clicked on "Answer" instead of "Comment". Driver model in NT is by nature a beast itself. There are no easy way around it. But if you really want help, you can check out BlueWater System's NT WinDK toolkit on "http://www.bluewatersystem.com". They've got easy C++ objects for NT driver and bunch of sample codes. But once again, they cost money, I mean BIG money, around $1000.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER