// COMPLETE THREAD

help writing code

2 expanded posts ยท every known parent and child

NODE 0c2b05d5help writing code
I've spent the summer working on a SMTP/POP client that runs under
MS-Windows.  There are two ideas behind it. First, widespread acceptance of
global communication will require that mass market user don't have to learn
vi/emacs/... and Second, once the email composing and reading is done on a
local, controlled PC, we can trivially pipe messages in and out of PGP,
RIPEM, or your favorite encryption algorithm. This second part will allow
folks to send all their mail encrypted, which will not only spread the
word, but hurt traffic analysis.

But, I need help. I've got all the front-end stuff working, and can handle
the SMTP/POP protocols. But I can't get Windows to talk reliably with a
raw async link. (I don't want to require SLIP or PPP, as lots of sites
are too clueless to offer it.)

I need a robust communications library. It has to do as well as possible
given an inherantly inreliable link. I've bought three commercial sibraries,
and none work.

Cypherpunks write code. I've been trying. If someone wants to help,
please reply, and we can work out detailed specs of the API I have in mind.

Pat

Pat Farrell      Grad Student                 pfarrell@netcom.com
Department of Computer Science    George Mason University, Fairfax, VA
Public key availble via finger          #include <standard.disclaimer>
NODE d7beef88Re: help writing code
...
> the SMTP/POP protocols. But I can't get Windows to talk reliably with a
> raw async link. (I don't want to require SLIP or PPP, as lots of sites
> are too clueless to offer it.)
> 
> I need a robust communications library. It has to do as well as possible
> given an inherantly inreliable link. I've bought three commercial sibraries,
> and none work.
...
The only way to communicate reliably over the serial port in Windows is 
to upgrade the UART in your serial port to a 16550AFN or equivalent. The 
standard UART (16450 in AT class machines) has no buffer and suffers from 
frequent dropouts due to data overwrite on receive. If you can't do that, 
then an error correcting protocol such as SLIP or PPP is required.

                                   Mike Johnson
                                   mpj@csn.org