From ea837fc6feab1b2f1b5400b79b87879aa160f42b Mon Sep 17 00:00:00 2001 From: gotoyuzo Date: Mon, 28 Jul 2003 19:06:31 +0000 Subject: * ext/openssl/lib/net/https.rb (use_ssl=): raise ProtocolError if connection is set up already. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/openssl/lib/net/https.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'ext/openssl/lib') diff --git a/ext/openssl/lib/net/https.rb b/ext/openssl/lib/net/https.rb index 0f5cb13407..fb7f53c555 100644 --- a/ext/openssl/lib/net/https.rb +++ b/ext/openssl/lib/net/https.rb @@ -137,7 +137,7 @@ module Net SSLIO end - attr_accessor :use_ssl + attr_reader :use_ssl attr_writer :key, :cert attr_writer :ca_file, :ca_path attr_writer :verify_mode, :verify_callback, :verify_depth @@ -150,6 +150,14 @@ module Net default_initialize(*args) @key = @cert = @ca_file = @ca_path = @verify_mode = @verify_callback = @verify_depth = @timeout = @cert_store = nil + @already_connected = false + end + + def use_ssl=(flag) + if @already_connected && !@use_ssl + raise ProtocolError, "connection is alrady set up" + end + @use_ssl = flag end def on_connect @@ -173,6 +181,7 @@ module Net @socket.ssl_connect @peer_cert = @socket.peer_cert end + @already_connected = true end end -- cgit v1.2.3