You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by mi...@apache.org on 2022/01/22 12:09:13 UTC

svn commit: r1897336 - in /httpd/httpd/trunk: modules/ssl/mod_ssl.c support/ab.c

Author: minfrin
Date: Sat Jan 22 12:09:12 2022
New Revision: 1897336

URL: http://svn.apache.org/viewvc?rev=1897336&view=rev
Log:
When failing, we need to explicitly set the connection state.

Modified:
    httpd/httpd/trunk/modules/ssl/mod_ssl.c
    httpd/httpd/trunk/support/ab.c

Modified: httpd/httpd/trunk/modules/ssl/mod_ssl.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/ssl/mod_ssl.c?rev=1897336&r1=1897335&r2=1897336&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/ssl/mod_ssl.c (original)
+++ httpd/httpd/trunk/modules/ssl/mod_ssl.c Sat Jan 22 12:09:12 2022
@@ -714,6 +714,8 @@ static int ssl_hook_process_connection(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(c
                 /* we failed, give up */
                 status = DONE;
 
-                c->aborted = 1;
+                cs->state = CONN_STATE_LINGER;
+
             }
         }
         else {

Modified: httpd/httpd/trunk/support/ab.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/support/ab.c?rev=1897336&r1=1897335&r2=1897336&view=diff
==============================================================================
--- httpd/httpd/trunk/support/ab.c (original)
+++ httpd/httpd/trunk/support/ab.c Sat Jan 22 12:09:12 2022
@@ -1434,7 +1434,7 @@ static void start_connect(struct connect
     }
 #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;



Re: svn commit: r1897336 - in /httpd/httpd/trunk: modules/ssl/mod_ssl.c support/ab.c

Posted by Graham Leggett <mi...@sharp.fm>.
On 24 Jan 2022, at 11:37, Ruediger Pluem <rp...@apache.org> wrote:

> How is the above related to this commit?

Yuck, it’s not. Taken out in r1897408.

Regards,
Graham
—


Re: svn commit: r1897336 - in /httpd/httpd/trunk: modules/ssl/mod_ssl.c support/ab.c

Posted by Ruediger Pluem <rp...@apache.org>.

On 1/22/22 1:09 PM, minfrin@apache.org wrote:
> Author: minfrin
> Date: Sat Jan 22 12:09:12 2022
> New Revision: 1897336
> 
> URL: http://svn.apache.org/viewvc?rev=1897336&view=rev
> Log:
> When failing, we need to explicitly set the connection state.
> 
> Modified:
>     httpd/httpd/trunk/modules/ssl/mod_ssl.c
>     httpd/httpd/trunk/support/ab.c
> 

> 
> Modified: httpd/httpd/trunk/support/ab.c
> URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/support/ab.c?rev=1897336&r1=1897335&r2=1897336&view=diff
> ==============================================================================
> --- httpd/httpd/trunk/support/ab.c (original)
> +++ httpd/httpd/trunk/support/ab.c Sat Jan 22 12:09:12 2022
> @@ -1434,7 +1434,7 @@ static void start_connect(struct connect
>      }
>  #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;
> 

How is the above related to this commit?

Regards

Rüdiger