@@ -181,16 +181,14 @@ if (bioShouldRetry) { dprintf("The I/O did not complete -- but we should try it again"); if (statePtr->flags & TLS_TCL_ASYNC) { dprintf("Returning EAGAIN so that it can be retried later"); - *errorCodePtr = EAGAIN; return(-1); } else { dprintf("Doing so now"); - continue; } } dprintf("We have either completely established the session or completely failed it -- there is no more need to ever retry it though"); @@ -201,14 +199,16 @@ case SSL_ERROR_NONE: /* The connection is up, we are done here */ dprintf("The connection is up"); *errorCodePtr = 0; break; + case SSL_ERROR_ZERO_RETURN: dprintf("SSL_ERROR_ZERO_RETURN: Connect returned an invalid value..."); *errorCodePtr = EINVAL; return(-1); + case SSL_ERROR_SYSCALL: backingError = ERR_get_error(); if (backingError == 0 && err == 0) { dprintf("EOF reached")