Overview
Comment: | Cleaned up more things |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | wip-fix-io-layer |
Files: | files | file ages | folders |
SHA1: |
4579316443ead0f83eb3d01a2924e318 |
User & Date: | rkeene on 2016-12-13 03:35:25 |
Other Links: | branch diff | manifest | tags |
Context
2016-12-13
| ||
03:40 | Fixed uninitialized use of variable check-in: 942e844672 user: rkeene tags: wip-fix-io-layer | |
03:35 | Cleaned up more things check-in: 4579316443 user: rkeene tags: wip-fix-io-layer | |
03:27 | Silence warnings about ignoring this return value by explicitly ignoring it check-in: 41f972bfbf user: rkeene tags: wip-fix-io-layer | |
Changes
Modified tlsIO.c
from [0f85acc9f6]
to [f15c16a7e8].
︙ | ︙ | |||
156 157 158 159 160 161 162 | * 0 if successful, the value of Tcl_GetErrno() if failed. * * Side effects: * Closes the socket of the channel. * *------------------------------------------------------------------- */ | < | < < | | | | | | > > > | 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 | * 0 if successful, the value of Tcl_GetErrno() if failed. * * Side effects: * Closes the socket of the channel. * *------------------------------------------------------------------- */ static int TlsCloseProc(ClientData instanceData, Tcl_Interp *interp) { State *statePtr = (State *) instanceData; dprintf("TlsCloseProc(%p)", (void *) statePtr); Tls_Clean(statePtr); Tcl_EventuallyFree((ClientData)statePtr, Tls_Free); dprintf("Returning TCL_OK"); return(TCL_OK); /* Interp is unused. */ interp = interp; } /* *------------------------------------------------------------------- * * TlsInputProc -- * |
︙ | ︙ | |||
263 264 265 266 267 268 269 | break; case SSL_ERROR_SYSCALL: dprintf("I/O error reading, treating it as EOF"); *errorCodePtr = 0; bytesRead = 0; break; } | | | 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 | break; case SSL_ERROR_SYSCALL: dprintf("I/O error reading, treating it as EOF"); *errorCodePtr = 0; bytesRead = 0; break; } dprintf("Input(%d) -> %d [%d]", bufSize, bytesRead, *errorCodePtr); return bytesRead; } /* *------------------------------------------------------------------- * |
︙ | ︙ | |||
312 313 314 315 316 317 318 | dprintf("Tls_WaitForConnect returned %i (err = %i)", written, *errorCodePtr); return(-1); } if (toWrite == 0) { dprintf("zero-write"); | | > > > > > > > > > | 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 | dprintf("Tls_WaitForConnect returned %i (err = %i)", written, *errorCodePtr); return(-1); } if (toWrite == 0) { dprintf("zero-write"); err = BIO_flush(statePtr->bio); if (err <= 0) { dprintf("Flushing failed"); *errorCodePtr = EIO; written = 0; return(-1); } written = 0; *errorCodePtr = 0; return(0); } /* * We need to clear the SSL error stack now because we sometimes reach |
︙ | ︙ | |||
367 368 369 370 371 372 373 | *errorCodePtr = ECONNABORTED; written = -1; break; default: dprintf(" unknown err: %d", err); break; } | | | 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 | *errorCodePtr = ECONNABORTED; written = -1; break; default: dprintf(" unknown err: %d", err); break; } dprintf("Output(%d) -> %d", toWrite, written); return(written); } /* *------------------------------------------------------------------- * |
︙ | ︙ | |||
773 774 775 776 777 778 779 | err = SSL_connect(statePtr->ssl); } if (err > 0) { dprintf("That seems to have gone okay"); | | > > > > | 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 | err = SSL_connect(statePtr->ssl); } if (err > 0) { dprintf("That seems to have gone okay"); err = BIO_flush(statePtr->bio); if (err <= 0) { dprintf("Flushing the lower layers failed, this will probably terminate this session"); } } rc = SSL_get_error(statePtr->ssl, err); dprintf("Got error: %i (rc = %i)", err, rc); bioShouldRetry = 0; |
︙ | ︙ |