Copyright (C) 1997-2000 Matt Newman <[email protected]> TLS 1.4 Copyright (C) 2000 Ajuba Solutions $Header: /home/rkeene/tmp/cvs2fossil/../tcltls/tls/tls/README.txt,v 1.2 2000/08/15 18:49:07 hobbs Exp $ TLS (aka SSL) Channel - can be layered on any bi-directional Tcl_Channel. Both client and server-side sockets are possible, and this code should work on any platform as it uses a generic mechanism for layering on SSL and Tcl. The TLS 1.4 release requires Tcl 8.2.0+, with 8.3.2+ preferred. The stacked channel implementation in Tcl was originally introduced in 8.2.0 (previously the Trf patch) and rewritten for 8.3.2+ due to inherent limitations in the earlier implementation. TLS 1.4 should compile with any stubs-capable Tcl interpreter, but will require 8.2+ when loaded. There are known limitations in the 8.2.0-8.3.1 stacked channel implementation, so it is encouraged that people use TLS 1.4+ with an 8.3.2+ Tcl interpreter. Full filevent sematics should also be intact - see tests directory for blocking and non-blocking examples. This was built (almost) from scratch based upon observation of OpenSSL 0.9.2B Addition credit is due for Andreas Kupries ([email protected]), for providing the Tcl_ReplaceChannel mechanism and working closely with me to enhance it to support full fileevent semantics. Also work done by the follow people provided the impetus to do this "right":- tclSSL (Colin McCormack, Shared Technology) SSLtcl (Peter Antman) This code is licensed under the same terms as the Tcl Core. I would also like to acknowledge the input of Marshall Rose, who convinced me that people need to be able to switch-to-encrypted mode part way through a conversation. Also I would like to acknowledge the kind support of Novadigm Inc, my current employer, which made this possible. Matt Newman