Author: markt Date: Wed Jun 22 19:39:11 2016 New Revision: 1749766 URL: http://svn.apache.org/viewvc?rev=1749766&view=rev Log: Correctly handle OS level EAGAIN return codes during non-blocking TLS I/O
Modified: tomcat/native/trunk/native/src/sslnetwork.c tomcat/native/trunk/xdocs/miscellaneous/changelog.xml Modified: tomcat/native/trunk/native/src/sslnetwork.c URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/src/sslnetwork.c?rev=1749766&r1=1749765&r2=1749766&view=diff ============================================================================== --- tomcat/native/trunk/native/src/sslnetwork.c (original) +++ tomcat/native/trunk/native/src/sslnetwork.c Wed Jun 22 19:39:11 2016 @@ -339,8 +339,11 @@ TCN_IMPLEMENT_CALL(jint, SSLSocket, hand } break; case SSL_ERROR_SYSCALL: + if (APR_STATUS_IS_EAGAIN(rv)) { + return APR_EAGAIN; + } #if !defined(_WIN32) - if (APR_STATUS_IS_EINTR(rv)) { + else if (APR_STATUS_IS_EINTR(rv)) { /* Interrupted by signal */ continue; } @@ -427,6 +430,9 @@ ssl_socket_recv(apr_socket_t *sock, char con->shutdown_type = SSL_SHUTDOWN_TYPE_STANDARD; return APR_EOF; } + else if (APR_STATUS_IS_EAGAIN(rv)) { + return APR_EAGAIN; + } #if !defined(_WIN32) else if (APR_STATUS_IS_EINTR(rv)) { /* Interrupted by signal Modified: tomcat/native/trunk/xdocs/miscellaneous/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/native/trunk/xdocs/miscellaneous/changelog.xml?rev=1749766&r1=1749765&r2=1749766&view=diff ============================================================================== --- tomcat/native/trunk/xdocs/miscellaneous/changelog.xml (original) +++ tomcat/native/trunk/xdocs/miscellaneous/changelog.xml Wed Jun 22 19:39:11 2016 @@ -40,6 +40,10 @@ <bug>59616</bug>: Correct the Windows build files so that OCSP is correctly enabled and disabled in the respective Windows binaries. (markt) </fix> + <fix> + Correctly handle OS level EAGAIN return codes during non-blocking TLS I/O. + (markt) + </fix> </changelog> </section> <section name="Changes in 1.2.7"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org