summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--ext/openssl/lib/openssl/buffering.rb2
-rw-r--r--test/openssl/test_ssl.rb14
3 files changed, 21 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index d8e1f5d758..bbc97e8f6f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Tue Dec 3 10:43:58 2013 Eric Hodel <drbrain@segment7.net>
+
+ * ext/openssl/lib/openssl/buffering.rb: Return ASCII-8BIT strings from
+ SSLSocket methods. [ruby-trunk - Bug #9028]
+ * test/openssl/test_ssl.rb: Test for the above.
+
Tue Dec 3 09:42:27 2013 Eric Hodel <drbrain@segment7.net>
* lib/rdoc: Update to RDoc master 900de99. Changes include:
diff --git a/ext/openssl/lib/openssl/buffering.rb b/ext/openssl/lib/openssl/buffering.rb
index fc75faff44..1223c5de15 100644
--- a/ext/openssl/lib/openssl/buffering.rb
+++ b/ext/openssl/lib/openssl/buffering.rb
@@ -1,4 +1,4 @@
-#
+# coding: binary
#--
#= $RCSfile$ -- Buffering mix-in module.
#
diff --git a/test/openssl/test_ssl.rb b/test/openssl/test_ssl.rb
index 64efa8dd33..a13f0e1a9c 100644
--- a/test/openssl/test_ssl.rb
+++ b/test/openssl/test_ssl.rb
@@ -30,6 +30,20 @@ class OpenSSL::TestSSL < OpenSSL::SSLTestCase
end
end
+ def test_ssl_gets
+ start_server(PORT, OpenSSL::SSL::VERIFY_NONE, true) { |server, port|
+ server_connect(port) { |ssl|
+ ssl.write "abc\n"
+ IO.select [ssl]
+
+ line = ssl.gets
+
+ assert_equal "abc\n", line
+ assert_equal Encoding::BINARY, line.encoding
+ }
+ }
+ end
+
def test_ssl_read_nonblock
start_server(PORT, OpenSSL::SSL::VERIFY_NONE, true) { |server, port|
server_connect(port) { |ssl|