From: HimaNshu on
On Jan 7, 8:08 am, "David R. Cattley" <dcatt...(a)msn.com> wrote:
>
> > ........keep querying OID_TAPI_GET_DEV_CAPS.......
>
> The best thing to do is build a simple IM driver on CE5 Platform Builder and
> 'debug' with the shared source for PPP.DLL until you get the basics working.
> When that is working, move to WM.

Thanks Cattley,

Thanks for each and every detail, some of the things I have already
done I will debug with emulator let see if I can resolve this issue.

Himanshu
From: HimaNshu on
Hi Cattley,

I have get the Windows Mobile 6.0 AsyncMac code and I build the same
driver with logging.
and I install that driver in different location also change the
registry to load driver from that location e.g
\program files\AsynMac.dll
and registry : HLKM\Comm\AsyncMac\
Image : \program files\AsynMac.dll
now I am getting logs after rebooting device, and it creating line and
all...but when I connect to GPRS in creates new adapter name like
WWAN1-airtelgprs.com-1
and MpSend() callback in AsyncMac is never get called. (I haven't find
in log)
Is it mean packets are going through other interface WWAN1 ? it does
not have "image" path in registry, so I am surprise how is it getting
create new interface?

Do you have any idea how to get hook with WWAN1 instance of adapter?
is it created by AsyncMac? (I could not find anything about this new
interface WWAN1 in AsyncMac log)

Himanshu

From: HimaNshu on

Packets are going from PPP, WM 6.0 is creating new WWAN interface.
have a look,
http://msdn.microsoft.com/en-us/library/bb416428.aspx

Now I check for VEM driver code but it is not exposed by Microsoft.
I get some points about WWAN driver,
WAN driver code is available in WM Platform Builder : \Public\cellcore
\WWANNDIS
it is stream driver it is getting initialize and calling
WWANDeviceCreate() ---> VEM function

I don't know how other WWANsend /WWANrecv functions are is getting
called....?

Do you have any idea how can I get the WAN packet to modify above/
below WWAN?

HimaNshu
From: HimaNshu on
sorry, I did mistake it should be,
Packets are not going from PPP, WM 6.0 is creating new WWAN
interface.
From: David R. Cattley on
HimaNshu,

So your problem is not that you need an IM driver between PPP and ASYNCMAC
to intercept PPP traffic, you need an IM driver between the instances of
virtual adapters created by VEM for GPRS connections.

Unfortunately this is very difficult to achieve. I believe that you will
find that CELLCORE components do not tolerate having an IM driver between
the virtual adapter instance (named for the APN that is connected to) and
TCPSTK.

WM6.1 appears to have added a system supplied IM driver for IPSec based VPN
and some changes in CELLCORE (and in particular the Connection Manager) to
deal with *that* IM driver but still does not seem to allow another IM
driver to 'filter' over the VEM interfaces for Cellular.

Since the VEIM.DLL driver for VEM takes complete control of the binding
process (UpperBind/ProtocolsToBindTo) for the virtual adapters, it is very
difficult to change how the binding occurs. Also, the Connection Manager
provider for WWAN may fail to recognize the interface name if an IM driver
is bound between the VEM instance and TCPSTK.

You can get some idea of how this works in WM5/WM6/WM6.1 by looking at the
shared source in Windows CE 6.0 for the CELLCORE components and in
particular the WWAN support driver (that uses VEIM.DLL ).

I am sorry that I do not have a good solution to this problem that I can
share with you.

Regards,
Dave Cattley
Consulting Engineer
Systems Software Development

"HimaNshu" <gajjar.himanshu(a)gmail.com> wrote in message
news:20095a5a-31f7-4707-903f-f4f0d23c05d6(a)x6g2000pre.googlegroups.com...
> sorry, I did mistake it should be,
> Packets are not going from PPP, WM 6.0 is creating new WWAN
> interface.