diff options
| author | gotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-05-26 18:11:29 +0000 |
|---|---|---|
| committer | gotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-05-26 18:11:29 +0000 |
| commit | f2449f6a1cc74b0b941a096dec87228749b32315 (patch) | |
| tree | c80e70158d1368ce82e8f0281a7d91fb4cf16775 /ext/openssl/lib | |
| parent | cc64762989e84a12500a649698a04a8ce97690a6 (diff) | |
| download | ruby-f2449f6a1cc74b0b941a096dec87228749b32315.tar.gz ruby-f2449f6a1cc74b0b941a096dec87228749b32315.tar.xz ruby-f2449f6a1cc74b0b941a096dec87228749b32315.zip | |
* ext/openssl/ossl_ssl.c (ossl_ssl_read): take optional second argument
to specify a string to be written.
* ext/openssl/lib/openssl/buffering.rb (OpenSSL::Buffering#read):
take optional second argument to specify a string to be written.
* ext/openssl/lib/openssl/buffering.rb (OpenSSL::Buffering#gets):
refine regexp for end-of-line.
* ext/opnessl/lib/openssl/ssl.rb
(OpenSSL::SSL::SocketForwarder#listen): fix typo.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@6411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/openssl/lib')
| -rw-r--r-- | ext/openssl/lib/openssl/buffering.rb | 11 | ||||
| -rw-r--r-- | ext/openssl/lib/openssl/ssl.rb | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/ext/openssl/lib/openssl/buffering.rb b/ext/openssl/lib/openssl/buffering.rb index fdbd71bc0..6fcb143fc 100644 --- a/ext/openssl/lib/openssl/buffering.rb +++ b/ext/openssl/lib/openssl/buffering.rb @@ -54,14 +54,19 @@ module Buffering public - def read(size=nil) + def read(size=nil, buf=nil) fill_rbuff unless defined? @rbuffer @eof ||= nil until @eof break if size && size <= @rbuffer.size fill_rbuff end - consume_rbuff(size) + ret = consume_rbuff(size) || "" + if buf + buf.replace(ret) + ret = buf + end + (size && ret.empty?) ? nil : ret end def gets(eol=$/) @@ -164,7 +169,7 @@ module Buffering s = "" args.each{|arg| s << arg.to_s - unless /#{$/}\Z/o =~ s + unless /#{$/}\z/o =~ s s << $/ end } diff --git a/ext/openssl/lib/openssl/ssl.rb b/ext/openssl/lib/openssl/ssl.rb index f63ff7cc9..629109a1d 100644 --- a/ext/openssl/lib/openssl/ssl.rb +++ b/ext/openssl/lib/openssl/ssl.rb @@ -68,7 +68,7 @@ module OpenSSL @svr end - def listen(basklog=5) + def listen(backlog=5) @svr.listen(backlog) end |
