httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dean Gaudet <dgau...@arctic.org>
Subject Re: [PATCH]: "Undying keepalives in 1.2b7" on Solaris 2.x (fwd)
Date Tue, 11 Mar 1997 08:24:26 GMT
I find it really weird that I haven't seen this problem on hotwired where
I've been running this for ages... 

Why don't we just move the nokeepalive test into set_keepalive?  'cause we
also have the 204 case that can keepalive.  Also right now if we should
need to nokeepalive a HTTP/1.1 client we don't do it right because it
doesn't issue Connection: close.

So here's a patch that moves the nokeepalive test into set_keepalive. 

Dean

Index: http_protocol.c
===================================================================
RCS file: /export/home/cvs/apache/src/http_protocol.c,v
retrieving revision 1.107
diff -c -3 -r1.107 http_protocol.c
*** http_protocol.c	1997/03/07 14:43:52	1.107
--- http_protocol.c	1997/03/11 08:21:41
***************
*** 260,266 ****
      char *tenc   = table_get(r->headers_out, "Transfer-Encoding");
      int ka_sent;
  
!     if (r->connection->keepalive == -1)  /* Did we get bad input? */
          r->connection->keepalive = 0;
      else if (r->server->keep_alive && (!r->server->keep_alive_max ||
  	(r->server->keep_alive_max > r->connection->keepalives)) &&
--- 260,268 ----
      char *tenc   = table_get(r->headers_out, "Transfer-Encoding");
      int ka_sent;
  
!     if (table_get(r->subprocess_env, "nokeepalive")) {
! 	/* fall through to the no keepalive case */
!     } else if (r->connection->keepalive == -1)  /* Did we get bad input? */
          r->connection->keepalive = 0;
      else if (r->server->keep_alive && (!r->server->keep_alive_max ||
  	(r->server->keep_alive_max > r->connection->keepalives)) &&
***************
*** 1116,1123 ****
      
      basic_http_header (r);
  
!     if (!table_get(r->subprocess_env, "nokeepalive"))
!         set_keepalive (r);
  
      if (r->chunked) {
  	bputs("Transfer-Encoding: chunked\015\012", fd);
--- 1118,1124 ----
      
      basic_http_header (r);
  
!     set_keepalive (r);
  
      if (r->chunked) {
  	bputs("Transfer-Encoding: chunked\015\012", fd);


Mime
View raw message