Should I submit a bug for this?  I guess I'm not sure what proper
protocol is.....

On Fri, Mar 30, 2007 at 03:44:49PM +0900, Aaron Patterson wrote:
> Sometimes Apache will send a connection header like this:
> 
>   Connection: Keep-Alive, close
> 
> then close the connection.  Net::HTTP#keep_alive? does not handle this
> response correctly.  It returns true when it should return false.
> Testing for closed state before keep-alive seems to do the trick.
> 
> Here is my patch (against 1.8.6):
> 
> Index: lib/net/http.rb
> ===================================================================
> --- lib/net/http.rb     (revision 12131)
> +++ lib/net/http.rb     (working copy)
> @@ -1089,10 +1089,10 @@
>      def keep_alive?(req, res)
>        return false if /close/i =~ req['connection'].to_s
>        return false if @seems_1_0_server
> +      return false if /close/i      =~ res['connection'].to_s
>        return true  if /keep-alive/i =~ res['connection'].to_s
> -      return false if /close/i      =~ res['connection'].to_s
> +      return false if /close/i      =~ res['proxy-connection'].to_s
>        return true  if /keep-alive/i =~ res['proxy-connection'].to_s
> -      return false if /close/i      =~ res['proxy-connection'].to_s
>        (@curr_http_version == '1.1')
>      end
> 
> 
> -- 
> Aaron Patterson
> http://tenderlovemaking.com/

-- 
Aaron Patterson
http://tenderlovemaking.com/