[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Netscape the Big Win



-----BEGIN PGP SIGNED MESSAGE-----

Hal said:
> This sounds very good if it already is almost working.  The TCP
> connection which is opened would have to be to a server on the local
> machine, so it would be important that the software support that.  Also,
> the local SOCKS relay would of course not want its winsock calls to be
> intercepted and translated in this way, so there would need to be some
> alternative way to access "vanilla" winsock.  Can you give any
> more information on the NEC work?

This should be fairly straightforward: take the existing winsock.dll
or winsock32.dll and rename it. Install the NEC DLL with the old
winsock's name, then have the NEC DLL do a LoadLibrary() to attach the
original version.

> I have written a simple dummy relay for winsock and it requires a pretty
> different programming style than for Unix.  Netscape has a habit of
> firing off a bunch of requests at once, so it has to be extremely
> asynchronous.  For Windows this means you get a windows message every
> time a packet arrives and use non-blocking I/O.  In Unix this is usually
> handled by forking a new process to handle each independent connection.
> Non-blocking I/O can be used in Unix but I don't think there is a
> non-blocking connect as there is in Windows.  Maybe Windows 95 will allow
> a more Unix-style communication model, though.  Should the proxy require
> Windows 95, or will Windows 3 still be in widespread use for another
> year or two?

Asynchronous requests are the best way to implement I/O under Windows
(3.1, '95, and NT.) Any app that's threaded (Free Agent and Netscape
come to mind) will benefit, as will any user who's using a
multiprocessor machine.

If you're willing to assume the existence of Win95 or WinNT, you can
always spawn a new thread for each connection.

- -Paul

- -- 
Paul Robichaux, KD4JZG       | Do you support free speech? Even when
[email protected]            | you don't like what's being said?
		 Be a cryptography user. Ask me how.


-----BEGIN PGP SIGNATURE-----
Version: 2.6.2

iQCVAwUBMBZVcafb4pLe9tolAQHrHwQAhBAtIAZnaL2gh1BhZeE6WWQ1UQK7ffB2
XRZReUNzAVpCyvllKPDiN5TgUSuit8XeB4BzHOStXkNMJGlLE0vqTr5j5y2S0Fzo
nisi5Ve5+8XWJ8wFrshldfFcLyFuOK3LeL9cAKXQQrQ2GdxluusqBzqYHFM8koPP
zWI2YiF0VHM=
=yzFt
-----END PGP SIGNATURE-----