All right then,

Thanks for the encouragement.

Thanks to Mulix for wanting to host it. If anyone else wants this, please
let me know.


I will release the software real soon, probably either this evening or
tomorrow. I want to make some minor cleanups (such as removing the
hard-coding of my user name inside the code ;-)).

The code is mainly based on reverse-engineering. I used the wonderful USB
sniffer written by Benoit Papillault

http://benoit.papillault.free.fr/usbsnoop/index.en.php,

using the modem under Windows. Then going through zillions of RFCs, 3 ITU
recommendations (luckily this is the maximum number of recommendations
that can be downloaded for free), the USB spec, and the pppd manpage I
succeeded to hack this driver and make it work (well, at least partially,
as I explained). Playing with mtu/mru does not seem to affect the behavior
too much.

Ok, for those interested I attach the dump of tcpdump (actually I belong
to the coward crowd that uses ethereal, so it's ethereal dumps ;-) which
shows the problem. lynx_hp shows an attempt to connect to www.hp.com using
lynx on my modem, while lynx_hp_ok shows the same thing when the modem
runs on Windows and my computer is connected via ethernet to the Windows
computer. My IP address at actcom is 192.117.103.188 (this is when I
connect via the modem), while when I am connected via Windows acting as a
router + DHCP + DNS proxy, my IP address was 192.168.0.128.

Ah, and one more question. I used some code from RFC 1662 for computing
the checksum for PPP frames. The code is copied almostly verbatim from
there (I just changed the K&R declarations to ANSI prototypes). Can this
code be used in GPL'ed programs? (I believe the answer is yes, but I'm not
sure).

                                                        Emil


Attachment: lynx_hp.gz
Description: Binary data

Attachment: lynx_hp_ok.gz
Description: Binary data

Reply via email to