File History

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

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
2017-09-21
16:07
More soft-EOF mappings file: [064eb6d39e] check-in: [d63ee30cb2] user: rkeene branch: bug-eof-loop-6dd5588df6, size: 28214
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
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
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
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
08:48
Updated to fatally fail if the handshake fatally fails file: [3765b3df61] check-in: [f79122ae17] user: rkeene branch: trunk, size: 27090
08:16
Handle more cases of I/O errors file: [cd83a9c489] check-in: [7170c34dbc] user: rkeene branch: trunk, size: 26808
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
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
07:19
Enhanced support for syscall error checking from BIOs file: [48013cc12f] check-in: [538876ebf5] user: rkeene branch: trunk, size: 25482
06:47
Removed extraenous cleanup file: [3cea59bdcb] check-in: [5798396954] user: rkeene branch: trunk, size: 25261
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
03:40
Fixed uninitialized use of variable file: [b6a83cdb8f] check-in: [942e844672] user: rkeene branch: wip-fix-io-layer, size: 25249
03:35
Cleaned up more things file: [f15c16a7e8] check-in: [4579316443] user: rkeene branch: wip-fix-io-layer, size: 25273
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
01:14
More work on improving I/O routines file: [38a7baa9a1] check-in: [7df7a8696e] user: rkeene branch: wip-fix-io-layer, size: 25082
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
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
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
2016-12-10
05:02
More modernization of the code file: [9eaf78f936] check-in: [2771dc7670] user: rkeene branch: trunk, size: 23978
02:55
Removed backwards compatibility hacks and much reformatting file: [c5a7b3dcc1] check-in: [f087e1fe61] user: rkeene branch: trunk, size: 23964
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
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
15:25
Added a check for a BIO error file: [b1a0a715c4] check-in: [79ea996cac] user: rkeene branch: tls-1-7, size: 30675
15:12
Added more debugging file: [0ede72c6bc] check-in: [ed1ce834df] user: rkeene branch: tls-1-7, size: 30333
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
14:51
More debugging file: [d0dab0f21b] check-in: [9bb0350edb] user: rkeene branch: tls-1-7, size: 29850
14:43
More debugging around TLS retries file: [103755cb9d] check-in: [e84900f887] user: rkeene branch: tls-1-7, size: 29678
2016-12-02
16:28
For unsupported options do even less file: [6426f40f98] check-in: [3842146243] user: rkeene branch: tls-1-7, size: 29589
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
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
2016-11-22
22:11
Removed artifacts from conversion from CVS file: [d9df3786b9] check-in: [c75816429f] user: rkeene branch: tls-1-7, size: 29802
21:36
Applied patch file: [ed5e46f5ea] check-in: [4ec3fe7449] user: rkeene branch: rkeene-eoffix, size: 29915
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
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
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
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
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
2004-03-24
05:22
Fix build warnings. file: [5817cb10fa] check-in: [67bf2dd40d] user: razzell branch: trunk, size: 28090
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
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
2000-08-18
19:17
* tlsBIO.c: * tlsIO.c: corrected pedantic cast errors. file: [dc69f109fa] check-in: [5bc402b4bf] user: hobbs branch: trunk, size: 28053
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
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
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
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
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
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
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
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
2000-06-02
05:14
Removed printf file: [917446d5a9] check-in: [fa28281e24] user: welch branch: trunk, size: 18848
2000-06-01
22:34
*** empty log message *** file: [f528e682ea] check-in: [0d55961d2f] user: stanton branch: trunk, size: 19046
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
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
2000-01-20
01:51
updated copyright notice file: [e2f15d6a74] check-in: [4afdc17574] user: aborr branch: trunk, size: 18478
2000-01-19
22:10
Initial import of tls extension. file: [f1ba907f62] check-in: [27770ce26d] user: aborr branch: tls-vendor-branch, size: 18482 Added