NDIS IM Driver

hi all,

I am writing a NDIS4.0 intermediate Driver for Win NT4.0 which will talk at
it’s lower end with Serial driver instead of usual NIC’s.

I am looking for insight into following topics from u experts:

1.Actully i have to run a transport driver(i.e TCP/IP) on a serial port so i
think IM driver is the only option left.Isn’t it so??

2.How can we map or convert an NDIS packet sent by Transport driver(eg.
TCP/IP) into an IRP so that it could be passed to serial driver.

3.In the usual scenario of layered kernel mode drivers,i can call
“IoGetDeviceObjectPointer” to bind my upper layer driver to some lower
driver.In my case of IM driver,should my IM driver have same function to
bind to lower serial driver or there is some other way to accomplish this
binding.

So all u Driver Developers fill my mailbox with ur helpful tips.
Any Info or a pointer to some source will be of great help.
Thanx in advance

Chandandeep Singh Pabla
DCM Tech.


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

> I am writing a NDIS4.0 intermediate Driver for Win NT4.0 which will talk
at

You will not need an IM driver in this case. You must not have a protocol
lower end.
Write a deserialized NDIS miniport on top of the serial port, not the IM.

1.Actully i have to run a transport driver(i.e TCP/IP) on a serial port so
i
think IM driver is the only option left.Isn’t it so??

Not IM, but a miniport (better deserialized) on top of the serial port.

2.How can we map or convert an NDIS packet sent by Transport driver(eg.
TCP/IP) into an IRP so that it could be passed to serial driver.

NDIS packet contains a MDL chain, IRP can contain it too.

3.In the usual scenario of layered kernel mode drivers,i can call
“IoGetDeviceObjectPointer” to bind my upper layer driver to some lower
driver.In my case of IM driver,should my IM driver have same function to
bind to lower serial driver or there is some other way to accomplish this
binding.

Yes, or - on w2k - you can register for a PnP device notification for the
Serial class devices and bind yourself to it from this notification, then
reporting the link up condition to the protocol drivers above you.

Max


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Hi Max,
thanx a lot,
Can u please give me a pointer about some sample code which has similar
functionality i.e it talk to serial port at it’s lower end.I want to have a
feel of such driver.
If anybody has worked on such a driver then please help.
Thanx,
chandan

Subject: Re: NDIS IM Driver
From: “Maxim S. Shatskih”
Date: Wed, 2 May 2001 16:31:17 +0400
X-Message-Number: 16

> I am writing a NDIS4.0 intermediate Driver for Win NT4.0 which will talk
at

You will not need an IM driver in this case. You must not have a protocol
lower end.
Write a deserialized NDIS miniport on top of the serial port, not the IM.

> 1.Actully i have to run a transport driver(i.e TCP/IP) on a serial port so
i
> think IM driver is the only option left.Isn’t it so??

Not IM, but a miniport (better deserialized) on top of the serial port.

> 2.How can we map or convert an NDIS packet sent by Transport driver(eg.
> TCP/IP) into an IRP so that it could be passed to serial driver.

NDIS packet contains a MDL chain, IRP can contain it too.

> 3.In the usual scenario of layered kernel mode drivers,i can call
> “IoGetDeviceObjectPointer” to bind my upper layer driver to some lower
> driver.In my case of IM driver,should my IM driver have same function to
> bind to lower serial driver or there is some other way to accomplish this
> binding.

Yes, or - on w2k - you can register for a PnP device notification for the
Serial class devices and bind yourself to it from this notification, then
reporting the link up condition to the protocol drivers above you.

Max


You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
----------------------------------------------------------------------


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com