[#7055] More on VC++ 2005 — Austin Ziegler <halostatue@...>

Okay. I've got Ruby compiling. I'm attempting to get everything in

17 messages 2006/01/05
[#7058] Re: More on VC++ 2005 — nobuyoshi nakada <nobuyoshi.nakada@...> 2006/01/06

Hi,

[#7084] mathn: ugly warnings — hadmut@... (Hadmut Danisch)

Hi,

22 messages 2006/01/10
[#7097] Re: mathn: ugly warnings — Daniel Berger <Daniel.Berger@...> 2006/01/10

Hadmut Danisch wrote:

[#7098] Design contracts and refactoring (was Re: mathn: ugly warnings) — mathew <meta@...> 2006/01/10

Daniel Berger wrote:

[#7118] Re: Design contracts and refactoring (was Re: mathn: ugly warnings) — mathew <meta@...> 2006/01/12

*Dean Wampler *<deanwampler gmail.com> writes:

[#7226] Fwd: Re: Question about massive API changes — "Sean E. Russell" <ser@...>

Hello,

23 messages 2006/01/28
[#7228] Re: Question about massive API changes — Caleb Tennis <caleb@...> 2006/01/28

>

[ ruby-Bugs-3318 ] net/https does not submit RFC compliant requests

From: noreply@...
Date: 2006-01-24 17:03:54 UTC
List: ruby-core #7196
Bugs item #3318, was opened at 2006-01-24 16:52
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=3318&group_id=426

Category: Standard Library
Group: None
Status: Open
Resolution: None
Priority: 3
Submitted By: Jordan BoomBoom (jord)
Assigned to: Nobody (None)
Summary: net/https does not submit RFC compliant requests

Initial Comment:
Hi,

Working with net/https, I noticed a bug when it makes requests
to the server. Instead of making the following request:

-> GET /a/b/c?x=1 HTTP/1.1

It inserts 'https://' + URL + ':443' and makes the following request instead:

-> GET https://www.abc.com:443/a/b/c?x=1 HTTP/1.1

As can be seen this is an invalid HTTP request statement that causes 500 errors on the server.

Proof:

** irb
E:\>irb
irb(main):001:0> host, port, path = "www.abc.com", 443, "/a/b/c"
=> ["www.abc.com", 443, "/a/b/c"]
irb(main):002:0> require 'net/https'
=> true
irb(main):003:0> h = Net::HTTP.new(host, port, "127.0.0.1", 8080)
=> #<#<Class:0x2a99620> www.abc.com:443 open=false>
irb(main):004:0> h.use_ssl = true
=> true
irb(main):005:0> resp, body = h.get(path)
warning: peer certificate won't be verified in this SSL session.

** Burp proxy log
GET https://www.abc.com:443/a/b/c HTTP/1.1
Connection: close
Host: www.abc.com:443

I have a work around by commenting out the following
lines in the net/https.rb file and replacing them with path - Note
this method is now identical to the net/http.rb file:

module ProxyMod
     def edit_path( path )
       if use_ssl
          path
         #'https://' + addr_port + path
       else
         path
         #'http://' + addr_port + path
       end
     end
   end

OS: Windows XP
ruby -v : ruby 1.8.2 (2004-12-25) [i386-mswin32]

Cheers,
Jordan

----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=3318&group_id=426

In This Thread

Prev Next