diff options
author | aamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-03-13 05:48:58 +0000 |
---|---|---|
committer | aamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-03-13 05:48:58 +0000 |
commit | 1a7cb01d6410dc7c56b46ef51b188bdf87b5fd4c (patch) | |
tree | 9d7108ce6de0b46c0fe7dab59edee2551b76c702 /lib | |
parent | e502549be1bea41406ccef0e819b0e9cb8cdb069 (diff) | |
download | ruby-1a7cb01d6410dc7c56b46ef51b188bdf87b5fd4c.tar.gz |
aamine
* lib/net/http.rb: add HTTPRequest#basic_auth.
* lib/net/smtp.rb: raise if only account or password is given.
* lib/net/protocol.rb: WriteAdapter#<< returns self.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r-- | lib/net/http.rb | 7 | ||||
-rw-r--r-- | lib/net/protocol.rb | 5 | ||||
-rw-r--r-- | lib/net/smtp.rb | 13 |
3 files changed, 17 insertions, 8 deletions
diff --git a/lib/net/http.rb b/lib/net/http.rb index 473cf5d8a3..bbe98274f4 100644 --- a/lib/net/http.rb +++ b/lib/net/http.rb @@ -504,7 +504,10 @@ module Net end def self.get_print( addr, path, port = nil ) - print get( addr, path, port ) + new( addr, port || HTTP.port ).start {|http| + http.get path, nil, $stdout + } + nil end @@ -733,7 +736,7 @@ module Net end def basic_auth( acc, pass ) - @header['authorization'] = ["#{acc}:#{pass}"].pack('m').gsub(/\s+/, '') + @header['authorization'] = 'Basic ' + ["#{acc}:#{pass}"].pack('m').strip end end diff --git a/lib/net/protocol.rb b/lib/net/protocol.rb index 7018158315..a440ef0817 100644 --- a/lib/net/protocol.rb +++ b/lib/net/protocol.rb @@ -363,7 +363,10 @@ module Net @sock.__send__ @mid, str end - alias << write + def <<( str ) + @sock.__send__ @mid, str + self + end end diff --git a/lib/net/smtp.rb b/lib/net/smtp.rb index 2e8377cddd..3b1d100fb3 100644 --- a/lib/net/smtp.rb +++ b/lib/net/smtp.rb @@ -153,12 +153,15 @@ module Net end end - if user and secret then + if user or secret then + (user and secret) or + raise ArgumentError, "both of account and password are required" + mid = 'auth_' + (authtype || 'cram_md5').to_s - unless @command.respond_to? mid then - raise ArgumentError, "wrong auth type #{authtype.to_s}" - end - @command.send mid, user, secret + @command.respond_to? mid or + raise ArgumentError, "wrong auth type #{authtype.to_s}" + + @command.__send__ mid, user, secret end end |