1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

merge revision(s) 13657:

* lib/net/http.rb, lib/open-uri.rb: remove
	  Net::HTTP#enable_post_connection_check.  [ruby-dev:31960]
	* lib/net/imap.rb: hostname should be verified against server's
	  indentity as persented in the server's certificate. [ruby-dev:31960]
	* ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_6@16878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shyouhei 2008-06-07 16:16:46 +00:00
parent 3a7b4c0363
commit c69584efa4
7 changed files with 29 additions and 15 deletions

View file

@ -1,3 +1,13 @@
Sun Jun 8 01:15:50 2008 GOTOU Yuuzou <gotoyuzo@notwork.org>
* lib/net/http.rb, lib/open-uri.rb: remove
Net::HTTP#enable_post_connection_check. [ruby-dev:31960]
* lib/net/imap.rb: hostname should be verified against server's
indentity as persented in the server's certificate. [ruby-dev:31960]
* ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.
Thu Jun 5 16:21:16 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (make_cmdvector): adjust escaped successive

View file

@ -29,13 +29,23 @@ require 'net/ftp'
module Net
class FTPTLS < FTP
def connect(host, port=FTP_PORT)
@hostname = host
super
end
def login(user = "anonymous", passwd = nil, acct = nil)
store = OpenSSL::X509::Store.new
store.set_default_paths
ctx = OpenSSL::SSL::SSLContext.new('SSLv23')
ctx.cert_store = store
ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER
ctx.key = nil
ctx.cert = nil
voidcmd("AUTH TLS")
@sock = OpenSSL::SSL::SSLSocket.new(@sock, ctx)
@sock.connect
@sock.post_connection_check(@hostname)
super(user, passwd, acct)
voidcmd("PBSZ 0")
end

View file

@ -134,6 +134,9 @@ module Net
@sock.verify_callback = @options['VerifyCallback']
@sock.verify_depth = @options['VerifyDepth']
@sock.connect
if @options['VerifyMode'] != OpenSSL::SSL::VERIFY_NONE
@sock.post_connection_check(@options['Host'])
end
@ssl = true
end
''

View file

@ -470,7 +470,6 @@ module Net #:nodoc:
@debug_output = nil
@use_ssl = false
@ssl_context = nil
@enable_post_connection_check = false
end
def inspect
@ -527,9 +526,6 @@ module Net #:nodoc:
false # redefined in net/https
end
# specify enabling SSL server certificate and hostname checking.
attr_accessor :enable_post_connection_check
# Opens TCP connection and HTTP session.
#
# When this method is called with block, gives a HTTP object
@ -589,12 +585,7 @@ module Net #:nodoc:
end
s.connect
if @ssl_context.verify_mode != OpenSSL::SSL::VERIFY_NONE
begin
s.post_connection_check(@address)
rescue OpenSSL::SSL::SSLError => ex
raise ex if @enable_post_connection_check
warn ex.message
end
s.post_connection_check(@address)
end
end
on_connect

View file

@ -900,6 +900,7 @@ module Net
end
@sock = SSLSocket.new(@sock, context)
@sock.connect # start ssl session.
@sock.post_connection_check(@host) if verify
else
@usessl = false
end

View file

@ -229,7 +229,6 @@ module OpenURI
if target.class == URI::HTTPS
require 'net/https'
http.use_ssl = true
http.enable_post_connection_check = true
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
store = OpenSSL::X509::Store.new
store.set_default_paths

View file

@ -1,15 +1,15 @@
#define RUBY_VERSION "1.8.6"
#define RUBY_RELEASE_DATE "2008-06-05"
#define RUBY_RELEASE_DATE "2008-06-08"
#define RUBY_VERSION_CODE 186
#define RUBY_RELEASE_CODE 20080605
#define RUBY_PATCHLEVEL 128
#define RUBY_RELEASE_CODE 20080608
#define RUBY_PATCHLEVEL 129
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8
#define RUBY_VERSION_TEENY 6
#define RUBY_RELEASE_YEAR 2008
#define RUBY_RELEASE_MONTH 6
#define RUBY_RELEASE_DAY 5
#define RUBY_RELEASE_DAY 8
#ifdef RUBY_EXTERN
RUBY_EXTERN const char ruby_version[];