File History
Bounty program for improvements to Tcl and certain Tcl packages.

History of tlsIO.c

2018-10-30
14:20
Applied patch from Jinhu to address [94c6a431fee] file: [a0890258d8] check-in: [afec51b85b] user: rkeene, branch: trunk, size: 27430 [annotate] [blame] [check-ins using] [diff]
2017-09-21
16:07
More soft-EOF mappings file: [064eb6d39e] check-in: [d63ee30cb2] user: rkeene, branch: bug-eof-loop-6dd5588df6, size: 28214 [annotate] [blame] [check-ins using] [diff]
14:15
Added support for detecting writes after we have told the channel that we are in EOF and start returning errors in that case file: [1ceb846355] check-in: [7e5e4e2114] user: rkeene, branch: bug-eof-loop-6dd5588df6, size: 27809 [annotate] [blame] [check-ins using] [diff]
2016-12-13
18:49
Mapped OpenSSL errors for read/write wants to EAGAIN file: [f8a8e7a642] check-in: [ad1752cdaf] user: rkeene, branch: trunk, size: 27408 [annotate] [blame] [check-ins using] [diff]
16:00
Updated to return soft errors on during SSL negotiation retries on reads and hard errors on SSL negotiation during writes or handshake commands file: [0aa31db5a9] check-in: [b9557ba691] user: rkeene, branch: trunk, size: 27185 [annotate] [blame] [check-ins using] [diff]
15:43
Made repeated failures to handshake return fatal errors and made handshake code use the same logic as the rest of the OpenSSL read error checking file: [562862938f] check-in: [1b7959d27a] user: rkeene, branch: trunk, size: 26969 [annotate] [blame] [check-ins using] [diff]
08:48
Updated to fatally fail if the handshake fatally fails file: [3765b3df61] check-in: [f79122ae17] user: rkeene, branch: trunk, size: 27090 [annotate] [blame] [check-ins using] [diff]
08:16
Handle more cases of I/O errors file: [cd83a9c489] check-in: [7170c34dbc] user: rkeene, branch: trunk, size: 26808 [annotate] [blame] [check-ins using] [diff]
07:55
Removed an uninitialized read during debugging output and made OutputProc TLS initializations resemble InputProc's version file: [8a857e348e] check-in: [7e57900ba3] user: rkeene, branch: trunk, size: 26400 [annotate] [blame] [check-ins using] [diff]
07:42
Updated I/O handling to properly deal with errors and passing that error code up the stack file: [3bb908850c] check-in: [fe1f0ecd35] user: rkeene, branch: trunk, size: 26109 [annotate] [blame] [check-ins using] [diff]
07:19
Enhanced support for syscall error checking from BIOs file: [48013cc12f] check-in: [538876ebf5] user: rkeene, branch: trunk, size: 25482 [annotate] [blame] [check-ins using] [diff]
06:47
Removed extraenous cleanup file: [3cea59bdcb] check-in: [5798396954] user: rkeene, branch: trunk, size: 25261 [annotate] [blame] [check-ins using] [diff]
04:48
Updated to support retrying TLS negotiations if we get an EAGAIN error file: [b42f920022] check-in: [f2deea0396] user: rkeene, branch: wip-fix-io-layer, size: 25342 [annotate] [blame] [check-ins using] [diff]
03:40
Fixed uninitialized use of variable file: [b6a83cdb8f] check-in: [942e844672] user: rkeene, branch: wip-fix-io-layer, size: 25249 [annotate] [blame] [check-ins using] [diff]
03:35
Cleaned up more things file: [f15c16a7e8] check-in: [4579316443] user: rkeene, branch: wip-fix-io-layer, size: 25273 [annotate] [blame] [check-ins using] [diff]
2016-12-12
01:56
Disabled checking the client certificate and aborting if not found file: [0f85acc9f6] check-in: [916215af0a] user: rkeene, branch: wip-fix-io-layer, size: 25095 [annotate] [blame] [check-ins using] [diff]
01:14
More work on improving I/O routines file: [38a7baa9a1] check-in: [7df7a8696e] user: rkeene, branch: wip-fix-io-layer, size: 25082 [annotate] [blame] [check-ins using] [diff]
2016-12-11
23:57
Added a flag for fastpath so that errors can be found while using it file: [b04673cb79] check-in: [8b2b046ff5] user: rkeene, branch: wip-fix-io-layer, size: 25633 [annotate] [blame] [check-ins using] [diff]
21:22
Rewrote state engine for OpenSSL connection establishment to be more easily reasoned about file: [320c969bcc] check-in: [77e904c4e2] user: rkeene, branch: wip-fix-io-layer, size: 25648 [annotate] [blame] [check-ins using] [diff]
19:10
Added a lot of work towards fixing the I/O layer file: [0aabed0fd6] check-in: [ee7ea6a917] user: rkeene, branch: wip-fix-io-layer, size: 24861 [annotate] [blame] [check-ins using] [diff]
2016-12-10
05:02
More modernization of the code file: [9eaf78f936] check-in: [2771dc7670] user: rkeene, branch: trunk, size: 23978 [annotate] [blame] [check-ins using] [diff]
02:55
Removed backwards compatibility hacks and much reformatting file: [c5a7b3dcc1] check-in: [f087e1fe61] user: rkeene, branch: trunk, size: 23964 [annotate] [blame] [check-ins using] [diff]
2016-12-08
08:36
Moved BIO_ wrappers into the BIO source and added more debugging output file: [638f98d4e0] check-in: [333d833f31] user: rkeene, branch: trunk, size: 30781 [annotate] [blame] [check-ins using] [diff]
2016-12-07
15:34
More specific check for non-BIO failures file: [43589242ff] check-in: [e10ce6579d] user: rkeene, branch: tls-1-7, size: 30483 [annotate] [blame] [check-ins using] [diff]
15:25
Added a check for a BIO error file: [b1a0a715c4] check-in: [79ea996cac] user: rkeene, branch: tls-1-7, size: 30675 [annotate] [blame] [check-ins using] [diff]
15:12
Added more debugging file: [0ede72c6bc] check-in: [ed1ce834df] user: rkeene, branch: tls-1-7, size: 30333 [annotate] [blame] [check-ins using] [diff]
15:10
More work towards getting the state engine for waiting for a connection to come back together file: [77155f526d] check-in: [5aea4802ca] user: rkeene, branch: tls-1-7, size: 30210 [annotate] [blame] [check-ins using] [diff]
14:51
More debugging file: [d0dab0f21b] check-in: [9bb0350edb] user: rkeene, branch: tls-1-7, size: 29850 [annotate] [blame] [check-ins using] [diff]
14:43
More debugging around TLS retries file: [103755cb9d] check-in: [e84900f887] user: rkeene, branch: tls-1-7, size: 29678 [annotate] [blame] [check-ins using] [diff]
2016-12-02
16:28
For unsupported options do even less file: [6426f40f98] check-in: [3842146243] user: rkeene, branch: tls-1-7, size: 29589 [annotate] [blame] [check-ins using] [diff]
16:25
Added an --enable-debug and made debug-printf macro more fancy file: [2827fa68fa] check-in: [8a3f4fc732] user: rkeene, branch: tls-1-7, size: 29589 [annotate] [blame] [check-ins using] [diff]
16:13
Cleaned up compiler warnings with debugging statements casting pointers to ints file: [a22b43babb] check-in: [ac2c67d21d] user: rkeene, branch: tls-1-7, size: 29770 [annotate] [blame] [check-ins using] [diff]
2016-11-22
22:11
Removed artifacts from conversion from CVS file: [d9df3786b9] check-in: [c75816429f] user: rkeene, branch: tls-1-7, size: 29802 [annotate] [blame] [check-ins using] [diff]
21:36
Applied patch file: [ed5e46f5ea] check-in: [4ec3fe7449] user: rkeene, branch: rkeene-eoffix, size: 29915 [annotate] [blame] [check-ins using] [diff]
2015-06-06
09:07
Fix for bug #58. Crash/hang on protocol version negotiation failure. See bug report for analysis. Now we keep track of handshake failures through the HANDSHAKE_FAILURE flag and do not call back into SSL_accept/SSL_connect if handshake had already failed. file: [cd93e606f5] check-in: [9182f29754] user: apnadkarni, branch: trunk, size: 29820 [annotate] [blame] [check-ins using] [diff]
2015-05-01
18:44
* configure.in: Bump to version 1.6.5. * win/makefile.vc: * configure: regen with ac-2.59 * tls.c: Accepted SF TLS [bug/patch #57](https://sourceforge.net/p/tls/bugs/57/). * tlsIO.c: Accepted core Tcl patch in [ticket](http://core.tcl.tk/tcl/tktview/0f94f855cafed92d0e174b7d835453a02831b4dd). file: [9278c7db29] check-in: [b3dc06600e] user: andreas_kupries, branch: trunk, size: 29076 [annotate] [blame] [check-ins using] [diff]
2014-12-08
19:09
Applied patches #12 and #13 for Server Name Indication (SNI) support, and TLS 1.1, 1.2 support. file: [8be3b6411f] check-in: [54d14de805] user: andreas_kupries, branch: trunk, size: 29027 [annotate] [blame] [check-ins using] [diff]
2007-06-22
21:20
* tlsIO.c (TlsInputProc, TlsOutputProc, TlsWatchProc): * tls.c (VerifyCallback): add an state flag in the verify callback that prevents possibly recursion (on 'update'). [Bug 1652380] file: [208b82b4d8] check-in: [c692cb9684] user: hobbs2, branch: trunk, size: 28694 [annotate] [blame] [check-ins using] [diff]
2004-06-29
11:07
* tls.c: Fixup to build against tcl 8.3.3. Handle * tlsIO.c: 8.4 constification. file: [8e756afb36] check-in: [9633ce0e5c] user: patthoyts, branch: trunk, size: 28095 [annotate] [blame] [check-ins using] [diff]
2004-03-24
05:22
Fix build warnings. file: [5817cb10fa] check-in: [67bf2dd40d] user: razzell, branch: trunk, size: 28090 [annotate] [blame] [check-ins using] [diff]
2002-02-04
22:46
* tls.htm: * tls.c: added support for local certificate status check, as well as returning the # of bits in the session key. [Patch #505698] (rose) * tls.c: * tlsIO.c: * tlsBIO.c: added CONSTs to satisfy Tcl 8.4 sources. This may give warnings when compiled against 8.3, but they can be ignored. file: [40b688575b] check-in: [c34385bbcd] user: hobbs, branch: trunk, size: 28079 [annotate] [blame] [check-ins using] [diff]
2000-09-07
21:16
* tlsIO.c (Tls_ChannelType): set typeName field of channel type to "tls" (this got lost in move to dynamic version compatability checking). file: [31b270211d] check-in: [44b2bc9c7a] user: hobbs, branch: trunk, size: 28055 [annotate] [blame] [check-ins using] [diff]
2000-08-18
19:17
* tlsBIO.c: * tlsIO.c: corrected pedantic cast errors. file: [dc69f109fa] check-in: [5bc402b4bf] user: hobbs, branch: trunk, size: 28053 [annotate] [blame] [check-ins using] [diff]
2000-08-15
18:49
* tlsInt.h: * tls.c: * tlsIO.c: corrected structure initialization to work when compiling with 8.2. Now compiles with 8.2+ and tested to work with 8.2+ and dynamically adjust to the version of Tcl it was loaded into. TLS will fail the test suite with Tcl 8.2-8.3.1. file: [76eadcab80] check-in: [e7ef654f47] user: hobbs, branch: trunk, size: 27993 [annotate] [blame] [check-ins using] [diff]
00:02
* tlsInt.h: * tlsIO.c: * tlsBIO.c: * tls.c: changed around to only working with 8.2.0+ (8.3.2+ preferred), with runtime checks for pre- and post-io-rewrite. file: [7f2f9df19f] check-in: [33ea0b5a9d] user: hobbs, branch: trunk, size: 23657 [annotate] [blame] [check-ins using] [diff]
2000-07-27
01:58
* merged all changes from tls-1-3-io-rewrite back into main branch file: [8569dadd68] check-in: [a636fa7c56] user: hobbs, branch: trunk, size: 23793 [annotate] [blame] [check-ins using] [diff]
2000-07-26
22:15
* tls.c (ImportObjCmd): removed unnecessary use of 'bio' arg. (Tls_Init): check return value of SSL_library_init. Also lots of whitespace cleanup (more like Tcl Eng style guide), but not all 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 pulling an error off the stack that didn't belong to us. Also cleanup up excessive use of gotos. file: [1cbb80c69b] check-in: [e64e21d80e] user: hobbs, branch: tls-1-3-io-rewrite, size: 23797 [annotate] [blame] [check-ins using] [diff]
2000-07-21
05:32
* tests/tlsIO.test: corrected various tests to be correct for TLS stacked channels (as opposed to the standard sockets the test suite was adopted from). Key differences are that TLS cannot operate in one process without all channels being non-blocking, or the handshake will block, and handshaking must be forced in some cases. Also, handshakes don't seem to complete unless the client has placed at least one byte for the server to read in the channel. * tests/remote.tcl: corrected the finding of tests certificates * tlsIO.c (TlsCloseProc): removed deleting of timer handler as that is handled by Tls_Clean. * tls.tcl (tls::_accept): corrected the internal _accept to trickle callback errors to the user. * Makefile.in: made the install-binaries target regenerate the pkgIndex.tcl correctly. The test target probably shouldn't screw it up, but this is to be on the safe side. file: [d750d9a254] check-in: [977988aed6] user: hobbs, branch: tls-1-3-io-rewrite, size: 22797 [annotate] [blame] [check-ins using] [diff]
2000-07-12
01:54
* tlsIO.c: changed all the channel procs to start with Tls* for 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 in the stack instead of starting at the top again). Would otherwise cause a recursive stack bomb when implicit handshaking took effect. file: [0145d832d0] check-in: [a27c6affe5] user: hobbs, branch: tls-1-3-io-rewrite, size: 22913 [annotate] [blame] [check-ins using] [diff]
2000-07-11
04:58
* tlsBIO.c (BioWrite, BioRead): changed Tcl_Read/Write to Tcl_ReadRaw/TclWriteRaw. * 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). * tlsIO.c: added support for "corrected" stacked channels. All the above channels are in TCL_CHANNEL_VERSION_2 #ifdefs. file: [3096d1d31d] check-in: [fb9a612600] user: hobbs, branch: tls-1-3-io-rewrite, size: 20250 [annotate] [blame] [check-ins using] [diff]
2000-06-05
18:09
Moved SSL shutdown up into the CloseProc, away from the asynchronous EventuallyFree file: [83d2c33ca1] check-in: [b3abc0c1c4] user: welch, branch: trunk, size: 18873 [annotate] [blame] [check-ins using] [diff]
2000-06-02
05:14
Removed printf file: [917446d5a9] check-in: [fa28281e24] user: welch, branch: trunk, size: 18848 [annotate] [blame] [check-ins using] [diff]
2000-06-01
22:34
*** empty log message *** file: [f528e682ea] check-in: [0d55961d2f] user: stanton, branch: trunk, size: 19046 [annotate] [blame] [check-ins using] [diff]
19:26
* 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] file: [e27842c796] check-in: [b86c814390] user: stanton, branch: trunk, size: 18254 [annotate] [blame] [check-ins using] [diff]
2000-05-31
21:24
Moved ChannelHandler to the main channel instead of using Tls_GetParent and registering the handler with the dummy, or stacked channel. Eliminated call to Tcl_NotifyChannel from the WatchProc file: [3d8ca23169] check-in: [b29663e789] user: welch, branch: trunk, size: 19117 [annotate] [blame] [check-ins using] [diff]
2000-01-20
01:51
updated copyright notice file: [e2f15d6a74] check-in: [4afdc17574] user: aborr, branch: trunk, size: 18478 [annotate] [blame] [check-ins using] [diff]
2000-01-19
22:10
Initial import of tls extension. file: [f1ba907f62] check-in: [27770ce26d] user: aborr, branch: tls-vendor-branch, size: 18482 Added [annotate] [blame] [check-ins using]