summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2000-07-01 18:28:24 +0000
committeraamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2000-07-01 18:28:24 +0000
commit5eccd28bb30b5ebdc57ded504a27fbf488a65050 (patch)
tree811aa14e205271bc714844ed1cd4a07cef2b1a27
parent951d81cab818c09630e7a829931dc6719a9b7031 (diff)
* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.25.
* lib/net/protocol.rb (each_crlf_line): beg = 0 is needed in adding{} * lib/net/smtp.rb: allow String for to_addr of SMTP#sendmail git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--lib/net/protocol.rb6
-rw-r--r--lib/net/smtp.rb20
2 files changed, 16 insertions, 10 deletions
diff --git a/lib/net/protocol.rb b/lib/net/protocol.rb
index f234371a694..f438a86c77f 100644
--- a/lib/net/protocol.rb
+++ b/lib/net/protocol.rb
@@ -64,7 +64,7 @@ module Net
class Protocol
- Version = '1.1.24'
+ Version = '1.1.25'
class << self
@@ -664,10 +664,10 @@ module Net
end
def each_crlf_line( src )
- str = m = nil
- beg = 0
+ str = m = beg = nil
adding( src ) do
+ beg = 0
buf = @wbuf
while buf.index( /\n|\r\n|\r/, beg ) do
m = $~
diff --git a/lib/net/smtp.rb b/lib/net/smtp.rb
index bc346d3138a..57e4116f2ea 100644
--- a/lib/net/smtp.rb
+++ b/lib/net/smtp.rb
@@ -38,11 +38,15 @@ Net::Protocol
If account and password are given, is trying to get authentication
by using AUTH command. "authtype" is :plain (symbol) or :cram_md5.
+: send_mail( mailsrc, from_addr, to_addrs )
: sendmail( mailsrc, from_addr, to_addrs )
This method sends 'mailsrc' as mail. SMTPSession read strings
from 'mailsrc' by calling 'each' iterator, and convert them
into "\r\n" terminated string when write.
+ from_addr must be String.
+ to_addrs must be Array of String, or String.
+
Exceptions which SMTP raises are:
* Net::ProtoSyntaxError: syntax error (errno.500)
* Net::ProtoFatalError: fatal error (errno.550)
@@ -91,13 +95,14 @@ module Net
attr :esmtp
- def sendmail( mailsrc, fromaddr, toaddrs )
- do_ready fromaddr, toaddrs
+ def send_mail( mailsrc, from_addr, to_addrs )
+ do_ready from_addr, to_addrs
@command.write_mail mailsrc, nil
end
+ alias sendmail send_mail
- def ready( fromaddr, toaddrs, &block )
- do_ready fromaddr, toaddrs
+ def ready( from_addr, to_addrs, &block )
+ do_ready from_addr, to_addrs
@command.write_mail nil, block
end
@@ -105,9 +110,10 @@ module Net
private
- def do_ready( fromaddr, toaddrs )
- @command.mailfrom fromaddr
- @command.rcpt toaddrs
+ def do_ready( from_addr, to_addrs )
+ to_addrs = [to_addrs] if String === to_addrs
+ @command.mailfrom from_addr
+ @command.rcpt to_addrs
@command.data
end