This is the latest iteration of the TLS patch I've been working on
(and off) for some time now. I believe this iteration is ready for
serious consideration for inclusion in XEmacs. It gives us an
Emacs-compatible open-network-stream on systems where one of NSS,
gnutls, or openssl is available. This version incoporates changes
requested by Aidan during the last go-around: it uses Boolint in the C
code instead of hanging onto references to Lisp objects, and TLS
connections now self-identify as such.
We still need an Emacs-compatible gnutls.el. That's going to be hard,
since Emacs's Lisp code is very gnutls-specific; i.e., if you build
with NSS or openssl, the matchup between gnutls.el and the underlying
code isn't great. I'm considering a couple of approaches, but don't
want to hold up this part of the work.
Also, Windows ships with DLLs that contain TLS code, so in principle
it should be possible to extend this work to the WIndows part of the
code. In practice, I'm having some really fundamental trouble with
that which I will discuss on xemacs-beta.
The patch is attached in an attempt to avoid whitespace mangling
courtesy of gmail.
XEmacs-Patches mailing list