mirror of
https://github.com/apache/httpd.git
synced 2025-08-06 11:06:17 +00:00
When failing, we need to explicitly set the connection state.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1897336 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@ -714,6 +714,8 @@ static int ssl_hook_process_connection(conn_rec* c)
|
||||
/* Take advantage of an async MPM. If we see an EAGAIN,
|
||||
* loop round and don't block.
|
||||
*/
|
||||
conn_state_t *cs = c->cs;
|
||||
|
||||
apr_status_t rv;
|
||||
|
||||
rv = ap_get_brigade(c->input_filters, temp,
|
||||
@ -731,7 +733,8 @@ static int ssl_hook_process_connection(conn_rec* c)
|
||||
/* we failed, give up */
|
||||
status = DONE;
|
||||
|
||||
c->aborted = 1;
|
||||
cs->state = CONN_STATE_LINGER;
|
||||
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
@ -1434,7 +1434,7 @@ static void start_connect(struct connection * c)
|
||||
}
|
||||
#endif
|
||||
if ((rv = apr_socket_connect(c->aprsock, destsa)) != APR_SUCCESS) {
|
||||
if (APR_STATUS_IS_EINPROGRESS(rv)) {
|
||||
if (APR_STATUS_IS_EINPROGRESS(rv) || APR_STATUS_IS_EINTR(rv)) {
|
||||
set_conn_state(c, STATE_CONNECTING);
|
||||
c->rwrite = 0;
|
||||
return;
|
||||
|
Reference in New Issue
Block a user