From: knopper on
Now i can only load the modified IM passthru sample from WinCE 4.2 on the WM
2005 device.
I have somes questions:

How can i access directly to the IM driver ?
Could i use the function call below to do this ?

CreateFile(_T("Comm\\PASSTHRU"), GENERIC_READ | GENERIC_WRITE, 0, 0,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);

I can see that NDISUIO driver bind the "PASS\\ TIACXWLN1" adapter. This mus
be the virtual lower miniport adapter for the real miniport adapter
"TIACXWLN1". And is there other upper protocol interface exitsted ?
Can i send modified packets upper to the protocol interfaces to the
application ?
thanks.

"gp" wrote:

> anybody got success with pass thru driver?
>
> pl let me know.
>
> "MSenne" wrote:
>
> > Hard resetting a device will remove the test certs and you'll have to
> > install the SDKCerts.CAB again.
> > Yours should run every time - the same test certs can be installed and
> > used on any number of devices.
> >
> >
From: gp on
can you please let all of us know how succesfuly you are able to modify and
upload NDIS pass thru driver on WM 5.0 devices.

please elaborate all the steps

thanks in advance.

-Gautam

"knopper" wrote:

> Now i can only load the modified IM passthru sample from WinCE 4.2 on the WM
> 2005 device.
> I have somes questions:
>
> How can i access directly to the IM driver ?
> Could i use the function call below to do this ?
>
> CreateFile(_T("Comm\\PASSTHRU"), GENERIC_READ | GENERIC_WRITE, 0, 0,
> OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
>
> I can see that NDISUIO driver bind the "PASS\\ TIACXWLN1" adapter. This mus
> be the virtual lower miniport adapter for the real miniport adapter
> "TIACXWLN1". And is there other upper protocol interface exitsted ?
> Can i send modified packets upper to the protocol interfaces to the
> application ?
> thanks.
>
> "gp" wrote:
>
> > anybody got success with pass thru driver?
> >
> > pl let me know.
> >
> > "MSenne" wrote:
> >
> > > Hard resetting a device will remove the test certs and you'll have to
> > > install the SDKCerts.CAB again.
> > > Yours should run every time - the same test certs can be installed and
> > > used on any number of devices.
> > >
> > >
From: knopper on
gp,

i dont changed the code so much, i only take the passthru sample source
from platform builder 4.2. And it seems work better as the the sample from
platform builder 5.0.
You can dry it with the description which MSenne mentions above, it should
work.

Good luck !

"gp" wrote:

> can you please let all of us know how succesfuly you are able to modify and
> upload NDIS pass thru driver on WM 5.0 devices.
>
> please elaborate all the steps
>
> thanks in advance.
>
> -Gautam
>
> "knopper" wrote:
>
> > Now i can only load the modified IM passthru sample from WinCE 4.2 on the WM
> > 2005 device.
> > I have somes questions:
> >
> > How can i access directly to the IM driver ?
> > Could i use the function call below to do this ?
> >
> > CreateFile(_T("Comm\\PASSTHRU"), GENERIC_READ | GENERIC_WRITE, 0, 0,
> > OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
> >
> > I can see that NDISUIO driver bind the "PASS\\ TIACXWLN1" adapter. This mus
> > be the virtual lower miniport adapter for the real miniport adapter
> > "TIACXWLN1". And is there other upper protocol interface exitsted ?
> > Can i send modified packets upper to the protocol interfaces to the
> > application ?
> > thanks.
> >
> > "gp" wrote:
> >
> > > anybody got success with pass thru driver?
> > >
> > > pl let me know.
> > >
> > > "MSenne" wrote:
> > >
> > > > Hard resetting a device will remove the test certs and you'll have to
> > > > install the SDKCerts.CAB again.
> > > > Yours should run every time - the same test certs can be installed and
> > > > used on any number of devices.
> > > >
> > > >
From: MSenne on
The changes between 4.2 and 5.0 were small (2 or 3 changes in 2 or 3
files I believe) but commenting out the new 5.0 stuff didn't help with
my problems. The source code is virtually the same except for those
small improvements, which are not essential to working on CE5.0
systems. The difference is what libraries you link against.

Knopper,
> How can i access directly to the IM driver ?
What do you want to do? I added code to make my 4.2 version a Stream
Interface Driver and use IOControl codes to control it. If you want to
read and write data I think that CreateFile might be the way, but I
haven't done that, just basic comm using control codes.

> And is there other upper protocol interface exitsted ?
I don't quite understand what you mean, but if you mean are other
adapters using your driver besides the TIACXWLN then the answer is No.
If you have an internal WiFi card (which you do since you have the
internal TIAC...) and an SDIO slot you can plug in a WiFi SDIO card and
bind both adapters to your passthru driver (both will appear as subkeys
of \\Pass\\). But WiFi is the only thing that binds. One of the small
improvements in the CE5.0 code is a list that will skip adapters that
won't bind such as PPTP, IR, ASYNCMAC, etc.

> Can i send modified packets upper to the protocol interfaces to the application ?
You have pointers to the actual packet data and have the ability to
pass on or NOT pass on the data. You can also modify the packets
before passing them on (up or down the stack, depending on whether you
are in a MiniportSend or ProtocolReceive function).

gp,
You need to compile the passthru example as a DLL in Visual Studio 2005
or eVC++4.0 (usually you need VS2005 for WM5 projects, but this is a
platform builder example and doesn't use any VS2005 libraries).
You need to make sure it is exporting your DllEntry function properly
(check exports with DependencyWalker).
You need to sign your driver with a test certificate (this info is on
various message boards and MSDN library or I can provide links).
You need to put your driver in the \Windows folder and load the
appropriate registry settings (mentioned above).
If you have any specifc problems please let us know but that should get
you started I hope.

-MSenne

From: gp on
MSenne,

Thanks for reply

couple of questions for you

1) I am Using Sprint PCS 6700 device and i want to modify all the ip packets
going out and coming in from wifi or ev-do interfaces can it possible with
ndis pass thru driver?

2)please send me link for how to sign driver with a test certificate.

thanks

"MSenne" wrote:

> The changes between 4.2 and 5.0 were small (2 or 3 changes in 2 or 3
> files I believe) but commenting out the new 5.0 stuff didn't help with
> my problems. The source code is virtually the same except for those
> small improvements, which are not essential to working on CE5.0
> systems. The difference is what libraries you link against.
>
> Knopper,
> > How can i access directly to the IM driver ?
> What do you want to do? I added code to make my 4.2 version a Stream
> Interface Driver and use IOControl codes to control it. If you want to
> read and write data I think that CreateFile might be the way, but I
> haven't done that, just basic comm using control codes.
>
> > And is there other upper protocol interface exitsted ?
> I don't quite understand what you mean, but if you mean are other
> adapters using your driver besides the TIACXWLN then the answer is No.
> If you have an internal WiFi card (which you do since you have the
> internal TIAC...) and an SDIO slot you can plug in a WiFi SDIO card and
> bind both adapters to your passthru driver (both will appear as subkeys
> of \\Pass\\). But WiFi is the only thing that binds. One of the small
> improvements in the CE5.0 code is a list that will skip adapters that
> won't bind such as PPTP, IR, ASYNCMAC, etc.
>
> > Can i send modified packets upper to the protocol interfaces to the application ?
> You have pointers to the actual packet data and have the ability to
> pass on or NOT pass on the data. You can also modify the packets
> before passing them on (up or down the stack, depending on whether you
> are in a MiniportSend or ProtocolReceive function).
>
> gp,
> You need to compile the passthru example as a DLL in Visual Studio 2005
> or eVC++4.0 (usually you need VS2005 for WM5 projects, but this is a
> platform builder example and doesn't use any VS2005 libraries).
> You need to make sure it is exporting your DllEntry function properly
> (check exports with DependencyWalker).
> You need to sign your driver with a test certificate (this info is on
> various message boards and MSDN library or I can provide links).
> You need to put your driver in the \Windows folder and load the
> appropriate registry settings (mentioned above).
> If you have any specifc problems please let us know but that should get
> you started I hope.
>
> -MSenne
>
>