Artifact Content

Artifact a72d9b7c9c72badc6d1ffac5f464fb110a0a7488:

2008-06-18  Pat Thoyts  <>

	* tests/ciphers.test: Fix for different openssl versions.
	* win/    Updates to support tests.
	* win/
	* win/nmakehlp.c:

2008-03-19  Jeff Hobbs  <>

	*** TLS 1.6 TAGGED ***

	* (dist): update to include win/ and

	* win/ bump version to 1.6
	* use -L and -R where necessary. [Bug 1742859]

	* aclocal.m4: improve --with-ssl-dir check.

	* tests/tlsIO.test (tlsIO-14.*):   Add tls::unimport for symmetry
	* tls.htm, tls.c (UnimportObjCmd): to tls::import. [Bug 1203273]

	* tls.c (Tls_Clean, ImportObjCmd): Fix cleanup mem leak [Bug 1414045]
	Use better Eval APIs, cleaner Tcl_Obj-handling.

2008-03-19  Pat Thoyts  <>

	* win/  Updated the nmake build files with MSVC9 support
	* win/    and fixed to run the test-suite properly.
	* win/nmakehlp.c:
	* tls.tcl (tls::initlib): Corrected namespace handling.
	* tls.c: Applied #1890223 to fix handshake on non-blocking sockets

2008-03-17  Jeff Hobbs  <>

	* tls.tcl (tls::initlib):     load tls.tcl first and call
	* (pkgIndex.tcl): tls::initlib to load library to
	handle cwd changes. [Bug 1888113]

2007-09-06  Pat Thoyts  <>

	* tls.c:           Silence 64 bit integer conversion warnings
	* win/nmakehlp.c:  Update build system to support AMD64 target
	* win/ with MSVC8
	* win/

2007-06-22  Jeff Hobbs  <>

	* tlsIO.c (TlsInputProc, TlsOutputProc, TlsWatchProc): 
	* tls.c (VerifyCallback): add an state flag in the verify callback
	that prevents possibly recursion (on 'update'). [Bug 1652380]

	* tests/ciphers.test: reworked to make test output cleaner to
	understand missing ciphers (if any)

	*, tclconfig/tcl.m4: update to TEA 3.6
	* configure,       using autoconf-2.59

2007-02-28  Pat Thoyts  <>

	* win/ Rebase the DLL sensibly. Additional libs for 
	static link of openssl.
	* tls.tcl: bug #1579837 - TIP 278 bug (possibly) - fixed.

2006-03-30  Pat Thoyts  <>

	* tclconfig/*:  Updated to TEA 3.5 in response to bug 1460491
	* configure*:   Regenerated configure.

2005-02-08  Jeff Hobbs  <>

	*, tclconfig/tcl.m4: update to TEA 3.2
	* configure,       using autoconf-2.59

2004-12-23  Pat Thoyts  <>

	*      Removed spurious copying of tls.tcl into the
	                    build directory.

2004-12-22  Pat Thoyts  <>

	*     Incremented minor version to 1.5.1
	* configure:        

2004-12-17  Pat Thoyts  <>

	* win/  Added the MSVC build system (from the Tcl
	* win/     sampleextension).
	* win/nmakehlp.c:
	* win/tls.rc        Added Windows resource file.
	* tls.tcl:          From patch #948155, added support for
	                    alternate socket commands.
	* tls.c:            Quieten some MSVC warnings. Prefer ckalloc
	                    over Tcl_Alloc. (David Graveraux).

2004-06-29  Pat Thoyts  <>

	* tls.c:            Fixup to build against tcl 8.3.3. Handle
	* tlsIO.c:          8.4 constification.

	* tlsInt.h:         Added headers required with MSVC on Win32.
	* tlsX509.c:        undef min and max if defined (win32).

	*      Fixed to build on win32 using msys with
	* aclocal.m4:       MSVC. Also fixed the test target.
	* configure:        Regenerated.
	* tclconfig/tcl.m4: Updated to most recent version.

2004-03-23  Dan Razzell <>
	* tls.c:
	* tlsBIO.c:
	* tlsIO.c:
	* tlsInt.h:	Fixed type match warnings.

2004-03-19  Jeff Hobbs  <>

	* tls.c (Tls_Init):   replaced older TEA config with newer
	* config/* (removed):
	*, strncasecmp.c (removed):
	*, aclocal.m4, configure,
	* tclconfig/README.txt, tclconfig/install-sh, tclconfig/tcl.m4:

2004-03-17  Dan Razzell <>

	* tlsX509.c:	Add support for long serial numbers per RFC 3280.
			Format is now hexadecimal. 
			[Request #915313]
			Correctly convert certificate Distinguished Names
			to Tcl string representation.  Eliminates use of
			deprecated OpenSSL function.  Format is now compliant
			with RFC 2253.  [Request #915315]

2004-02-17  Dan Razzell <>


2004-02-12  Dan Razzell	<>

	* tls.c:	Allow verify callback to return empty result.
	* tls.htm:	Document callback behaviors.

2004-02-11  Dan Razzell	<>

	* tests/tlsIO.test:

2004-02-03  Dan Razzell <>

	*	Removed circular dependency.
	* tlsInt.h:	Make function declarations explicit.
	* tls.c:	Fix type match and unused variable warnings.
	* tlsBIO.c:	Fix type match warning.

2003-12-15  Dan Razzell	<>

	* tls.htm:
	* tests/tlsIO.test: updated version to 1.5.

2003-10-07  Dan Razzell	<>

	* tests/ciphers.test: updated list of tested ciphers to correspond
	* with those available from OpenSSL. [Request #811981]

2003-10-07  Dan Razzell <>

	[Request #811911]

2003-07-07  Jeff Hobbs  <>

	* tlsX509.c:          Wojciech Kocjan (wojciech
	* tests/keytest2.tcl:

2003-05-15  Dan Razzell	<> 

	* tls.tcl:
	* tlsInt.h:
	Now each socket can have its own command and password callbacks instead
	of being forced to have all password management pass through a common
	procedure.  The common password procedure is retained for compatibility
	but its use should be DEPRECATED.
	Add version command to return OpenSSL version string.
	Remove unstable workarounds needed for verify in obsolete versions of
	Fix memory leak. [Request #640660]
	More casts to eliminate compiler warnings.

	* tls.htm: document password callback.
	Correct technical and typographic errors.

	* README.txt: identify versions of OpenSSL which fix known problems.
	General warning of security problems in older versions of OpenSSL.

2002-02-04  Jeff Hobbs  <>

	* tls.htm:

	* tls.c:
	* tlsIO.c:

	* tests/simpleClient.tcl:

	* tests/tlsIO.test:

	* removed strncasecmp from default object set.  This

	* configure: regen'ed.
	* updated to 1.5.0 for next release.
	openssl 0.9.6c installs by default).
	Changed to use public Tcl headers (private not needed).

2001-06-21  Jeff Hobbs  <>


	* configure: added configure to CVS
	* moved to patchlevel 1.4.1

	* corrected 'dist' target

	* tests/certs/
	* tests/certs/ca.pem:
	* tests/certs/client.key:
	* tests/certs/client.pem:
	* tests/certs/client.req:
	* tests/certs/privkey.pem:
	* tests/certs/server.key:
	* tests/certs/server.pem:
	* tests/certs/server.req:
	* tests/certs/cacert.pem: replaced by new ca.pem
	* tests/certs/skey.pem: replaced by new server.key
	* tests/certs/ckey.pem: replaced by new client.key
	README info on their generation.

	* tests/ciphers.test: updated ciphers expected with default
	openssl build.


2001-03-14  Jeff Hobbs  <>

	to work around some OSes quirks.  (

2000-09-07  Jeff Hobbs  <>


2000-08-23  Jeff Hobbs  <>


	* (dist): create dist target for archive distributions

	to make the test work with OpenSSL on Windows (doesn't affect
	other builds).

	* tls.htm: updated with notes for 1.4.

2000-08-21  Jeff Hobbs  <>


2000-08-18  Jeff Hobbs  <>

	case it is a big security hole to do without it.

	* (OPENSSL): added NO_IDEA and NO_RC5 defines by
	default when compiling with OpenSSL.

	* tlsInt.h: added err.h include

	* tlsBIO.c:
	* tlsIO.c: corrected pedantic cast errors.

2000-08-16  Jeff Hobbs  <>

	* tests/ciphers.test: improved ability to change constraint
	setting for whether user compiled against RSA or OpenSSL libs.

	* tls.c (Tls_Init): corrected interpretation of version number
	(patchlevel and release/serial were swapped).

2000-08-15  Jeff Hobbs  <>

	* README.txt: added notes about need to use 8.2.0+.

	* tlsInt.h:
	* tls.c:
	* tlsIO.c: corrected structure initialization to work when

	because it doesn't exist in pre-8.3 tcltest.

	* tests/simpleClient.tcl: 
	* tests/simpleServer.tcl: added simple client/server test scripts
	that use test certs and can do simple stress tests.

2000-08-14  Jeff Hobbs  <>

	* tlsInt.h:
	* tlsIO.c:
	* tlsBIO.c:

	was called because we don't want people using TLS with the
	original stacked channel implementation.

2000-07-26  Jeff Hobbs  <>


	was due to debug assertion in Windows SSL.

	code was cleaned up.

	* tlsBIO.c: minor whitespace cleanup

	* tlsIO.c: minor whitespace cleanup.
	(TlsInputProc, TlsOutputProc): Added ERR_clear_error before calls
	to BIO_read or BIO_write, because we could otherwise end up
	cleanup up excessive use of gotos.

2000-07-20  Jeff Hobbs  <>

	stacked channels (as opposed to the standard sockets the test
	suite was adopted from).  Key differences are that TLS cannot
	the handshake will block, and handshaking must be forced in some
	cases.  Also, handshakes don't seem to complete unless the client

	* tests/remote.tcl: corrected the finding of tests certificates

	* tlsIO.c (TlsCloseProc): removed deleting of timer handler as
	that is handled by Tls_Clean.

	trickle callback errors to the user.

	* made the install-binaries target regenerate the
	pkgIndex.tcl correctly.  The test target probably shouldn't screw

2000-07-17  Jeff Hobbs  <>

	* updated version to 1.4

2000-07-13  Jeff Hobbs  <>

	which now pass.  Added some comments to other failing tests.

2000-07-11  Jeff Hobbs  <>

	better parity when comparing with Transform channel procs.
	Rewrote TlsWatchProc, added TlsNotifyProc according to the new
	channel design, which also leaves TlsChannelHandler unused.

	* tlsBIO.c (BioCtrl): changed BIO_CTRL_FLUSH case to use
	Tcl_WriteRaw instead of Tcl_Flush (to operate on correct channel
	otherwise cause a recursive stack bomb when implicit handshaking
	took effect.


2000-07-10  Jeff Hobbs  <>


	* tls.c: added use of Tcl_GetTopChannel after Tcl_GetChannel and
	got return value from Tcl_StackChannel.

	* tests/tlsIO.test: added some handshaking that shouldn't be
	necessary, but we crash otherwise (needs more testing).

	the above channels are in TCL_CHANNEL_VERSION_2 #ifdefs.

2000-06-05  Scott Stanton  <>

	* Fixed broken test target.

	* tlsInt.h: 
	* tls.c: Cleaned up declarations of Tls_Clean to avoid errors on
	Windows (lint).

2000-06-05  Brent Welch <>

	* tls.c, tlsIO.c:  Split Tls_Free into Tls_Clean, which does
	the SSL state "synchronously" during a stacked flush.

2000-06-01  Scott Stanton  <>

	* tlsIO.c: Restored call to Tcl_NotifyChannel from ChannelHandler
	to ensure that events propagate from the lower driver.  This may

2000-06-01  Scott Stanton  <>

	* tlsIO.c: Restore the previous version.  Fixed the CloseProc so
	it unregisters the channel handler on the superceded channel
	instead of the upper channel. Also removed the call to
	Tcl_NotifyChannel in the ChannelHandler because this will result
	in an infinite loop if data is ever buffered in the BIO
	structure. [Bug: 5623]

2000-05-31  Brent Welch <>

	* tls.c: Change the ChannelHandler to be registered on the main
	is because the socket driver notifies the main channel, and there
	are times with the main channel gets closed, but the superceded
	this half-open state it is associated with the superceeded
	is mostly destroyed.  Eliminated the redundant call to
	Tcl_NotifyChannel from TlsWatchProc. [Bug: 5623]