[ruby-core:61007] [ruby-trunk - Bug #9385] open-uri always uses proxy set as env var even if proxy flag is set to nil

From: naruse@...
Date: 2014-02-22 08:54:49 UTC
List: ruby-core #61007
Issue #9385 has been updated by Yui NARUSE.

Backport changed from 1.9.3: DONTNEED, 2.0.0: DONE, 2.1: REQUIRED to 1.9.3: DONTNEED, 2.0.0: DONE, 2.1: DONE

ruby_2_1 r45125 merged revision(s) 44637.

----------------------------------------
Bug #9385: open-uri always uses proxy set as env var even if proxy flag is set to nil
https://bugs.ruby-lang.org/issues/9385#change-45409

* Author: Christophe Philemotte
* Status: Closed
* Priority: Normal
* Assignee: Akira Tanaka
* Category: lib
* Target version: current: 2.2.0
* ruby -v: 2.0.0p247
* Backport: 1.9.3: DONTNEED, 2.0.0: DONE, 2.1: DONE
----------------------------------------
According to doc http://ruby-doc.org/stdlib-2.1.0/libdoc/open-uri/rdoc/OpenURI.html we can disable the proxy by doing

open("http://www.ruby-lang.org/en/raa.html", :proxy => nil)

and "environment variables for proxy are ignored and connection will be made to a server directly". But it is not. The environment variable is still considered and used (cf attached script and logs).

After digging the code, I think it's because Net::HTTP.new is called without passing p_addr to nil. If I'm not wrong, the attached patch is a possible solution to fix it.

---Files--------------------------------
run.sh (109 Bytes)
logs.txt (1.3 KB)
0001-open-uri-Ignore-ENV-for-proxy-when-proxy-flag-nil.patch (745 Bytes)


-- 
http://bugs.ruby-lang.org/

In This Thread

Prev Next