mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/net/http, lib/net/https: move content from net/https to
net/http. [ruby-dev:39986] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ef6e53635a
commit
e0cdab5fff
3 changed files with 34 additions and 46 deletions
|
@ -1,3 +1,8 @@
|
|||
Fri Jan 8 21:15:21 2010 NARUSE, Yui <naruse@ruby-lang.org>
|
||||
|
||||
* lib/net/http, lib/net/https: move content from net/https to
|
||||
net/http. [ruby-dev:39986]
|
||||
|
||||
Fri Jan 8 14:06:01 2010 NAKAMURA Usaku <usa@ruby-lang.org>
|
||||
|
||||
* io.c (rb_io_s_read): close the IO if an exception is raised on
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
#++
|
||||
|
||||
require 'net/protocol'
|
||||
autoload :OpenSSL, 'openssl'
|
||||
require 'uri'
|
||||
|
||||
module Net #:nodoc:
|
||||
|
@ -544,7 +545,33 @@ module Net #:nodoc:
|
|||
|
||||
# returns true if use SSL/TLS with HTTP.
|
||||
def use_ssl?
|
||||
false # redefined in net/https
|
||||
@use_ssl
|
||||
end
|
||||
|
||||
# Turn on/off SSL.
|
||||
# This flag must be set before starting session.
|
||||
# If you change use_ssl value after session started,
|
||||
# a Net::HTTP object raises IOError.
|
||||
def use_ssl=(flag)
|
||||
flag = (flag ? true : false)
|
||||
if started? and @use_ssl != flag
|
||||
raise IOError, "use_ssl value changed, but session already started"
|
||||
end
|
||||
@use_ssl = flag
|
||||
end
|
||||
|
||||
SSL_ATTRIBUTES = %w(
|
||||
ssl_version key cert ca_file ca_path cert_store ciphers
|
||||
verify_mode verify_callback verify_depth ssl_timeout
|
||||
)
|
||||
attr_accessor(*SSL_ATTRIBUTES)
|
||||
|
||||
# return the X.509 certificates the server presented.
|
||||
def peer_cert
|
||||
if not use_ssl? or not @socket
|
||||
return nil
|
||||
end
|
||||
@socket.io.peer_cert
|
||||
end
|
||||
|
||||
# Opens TCP connection and HTTP session.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
=begin
|
||||
|
||||
= $RCSfile$ -- SSL/TLS enhancement for Net::HTTP.
|
||||
= net/https -- SSL/TLS enhancement for Net::HTTP.
|
||||
|
||||
== Info
|
||||
'OpenSSL for Ruby 2' project
|
||||
|
@ -11,16 +11,6 @@
|
|||
This program is licenced under the same licence as Ruby.
|
||||
(See the file 'LICENCE'.)
|
||||
|
||||
== Requirements
|
||||
This program requires Net 1.2.0 or higher version.
|
||||
You can get it from RAA or Ruby's CVS repository.
|
||||
|
||||
== Version
|
||||
$Id$
|
||||
|
||||
2001-11-06: Contiributed to Ruby/OpenSSL project.
|
||||
2004-03-06: Some code is merged in to net/http.
|
||||
|
||||
== Example
|
||||
|
||||
Here is a simple HTTP client:
|
||||
|
@ -100,37 +90,3 @@ It can be replaced by the following code:
|
|||
|
||||
require 'net/http'
|
||||
require 'openssl'
|
||||
|
||||
module Net
|
||||
class HTTP
|
||||
remove_method :use_ssl?
|
||||
def use_ssl?
|
||||
@use_ssl
|
||||
end
|
||||
|
||||
# Turn on/off SSL.
|
||||
# This flag must be set before starting session.
|
||||
# If you change use_ssl value after session started,
|
||||
# a Net::HTTP object raises IOError.
|
||||
def use_ssl=(flag)
|
||||
flag = (flag ? true : false)
|
||||
if started? and @use_ssl != flag
|
||||
raise IOError, "use_ssl value changed, but session already started"
|
||||
end
|
||||
@use_ssl = flag
|
||||
end
|
||||
|
||||
SSL_ATTRIBUTES = %w(
|
||||
ssl_version key cert ca_file ca_path cert_store ciphers
|
||||
verify_mode verify_callback verify_depth ssl_timeout
|
||||
)
|
||||
attr_accessor(*SSL_ATTRIBUTES)
|
||||
|
||||
def peer_cert
|
||||
if not use_ssl? or not @socket
|
||||
return nil
|
||||
end
|
||||
@socket.io.peer_cert
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue