1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
* lib/net/smtp.rb: SMTP.new requires at least one arg.
* lib/net/pop.rb: POP.new requires at least one arg.
* lib/net/pop.rb: uses "raise *Error.new" instead of simple raise.
* lib/net/http.rb: HTTP.new requires at least one arg.
* lib/net/http.rb: changes implicit start algolithm.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
aamine 2001-12-07 10:04:25 +00:00
parent 4ed1344bd7
commit a20863ff41
5 changed files with 47 additions and 44 deletions

View file

@ -1,3 +1,15 @@
Fri Dec 7 19:12:14 2001 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: SMTP.new requires at least one arg.
* lib/net/pop.rb: POP.new requires at least one arg.
* lib/net/pop.rb: uses "raise *Error.new" instead of simple raise.
* lib/net/http.rb: HTTP.new requires at least one arg.
* lib/net/http.rb: changes implicit start algolithm.
Fri Dec 7 15:49:39 2001 Usaku Nakamura <usa@ruby-lang.org>
* ext/extmk.rb.in: ignore adding -Wl,-R to DLDFLAGS when the directory

View file

@ -11,9 +11,8 @@ This program is free software. You can re-distribute and/or
modify this program under the same terms as Ruby itself,
Ruby Distribute License or GNU General Public License.
NOTE: You can get Japanese version of this document from
Ruby Documentation Project (RDP):
((<URL:http://www.ruby-lang.org/~rubikitch/RDP.cgi>))
NOTE: You can find Japanese version of this document in
the doc/net directory of the standard ruby interpreter package.
== What is this module?
@ -639,7 +638,14 @@ module Net
define_http_method_interface :Post, true, true
define_http_method_interface :Put, false, true
def request( req, body = nil )
def request( req, body = nil, &block )
unless active? then
start {
req['connection'] = 'close'
return request(req, body, &block)
}
end
connecting( req ) {
req.__send__( :exec,
@socket, @curr_http_version, edit_path(req.path), body )
@ -660,14 +666,7 @@ module Net
def connecting( req )
unless active? then
implicit = true
req['connection'] ||= 'close'
end
if not @socket then
start
elsif @socket.closed? then
if @socket.closed? then
re_connect
end
if not req.body_exist? or @seems_1_0_server then
@ -692,10 +691,6 @@ module Net
D 'Conn close'
@socket.close
end
if implicit then
finish
end
end
def keep_alive?( req, res )

View file

@ -10,9 +10,8 @@ This program is free software. You can re-distribute and/or
modify this program under the same terms as Ruby itself,
Ruby Distribute License or GNU General Public License.
NOTE: You can get Japanese version of this document from
Ruby Documentation Project (RDP):
((<URL:http://www.ruby-lang.org/~rubikitch/RDP.cgi>))
NOTE: You can find Japanese version of this document in
the doc/net directory of the standard ruby interpreter package.
== What is This Module?
@ -422,14 +421,15 @@ module Net
"#<#{type} #{@num}#{@deleted ? ' deleted' : ''}>"
end
def all( dest = '' )
if block_given? then
dest = NetPrivate::ReadAdapter.new( Proc.new )
def pop( dest = '', &block )
if block then
dest = NetPrivate::ReadAdapter.new( block )
end
@command.retr( @num, dest )
end
alias pop all
alias mail all
alias all pop
alias mail pop
def top( lines, dest = '' )
@command.top( @num, lines, dest )
@ -440,7 +440,7 @@ module Net
end
def delete
@command.dele( @num )
@command.dele @num
@deleted = true
end
@ -470,9 +470,9 @@ module Net
}
end
def auth( acnt, pass )
def auth( account, pass )
critical {
@socket.writeline 'USER ' + acnt
@socket.writeline 'USER ' + account
check_reply_auth
@socket.writeline 'PASS ' + pass
@ -537,21 +537,19 @@ module Net
def check_reply_auth
begin
cod = check_reply( SuccessCode )
rescue ProtocolError
raise ProtoAuthError, 'Fail to POP authentication'
return check_reply( SuccessCode )
rescue ProtocolError => err
raise ProtoAuthError.new( 'Fail to POP authentication', err.response )
end
return cod
end
def get_reply
str = @socket.readline
if /\A\+/ === str then
return Response.new( SuccessCode, str[0,3], str[3, str.size - 3].strip )
Response.new( SuccessCode, str[0,3], str[3, str.size - 3].strip )
else
return Response.new( ErrorCode, str[0,4], str[4, str.size - 4].strip )
Response.new( ErrorCode, str[0,4], str[4, str.size - 4].strip )
end
end
@ -564,7 +562,7 @@ module Net
rep = super( sock )
m = /<.+>/.match( rep.msg ) or
raise ProtoAuthError, "not APOP server: cannot login"
raise ProtoAuthError.new( "not APOP server: cannot login", nil )
@stamp = m[0]
end

View file

@ -10,9 +10,8 @@ This program is free software. You can re-distribute and/or
modify this program under the same terms as Ruby itself,
Ruby Distribute License or GNU General Public License.
NOTE: You can get Japanese version of this document from
Ruby Documentation Project (RDP):
((<URL:http://www.ruby-lang.org/~rubikitch/RDP.cgi>))
NOTE: You can find Japanese version of this document in
the doc/net directory of the standard ruby interpreter package.
=end
@ -80,7 +79,7 @@ module Net
def initialize( addr, port = nil )
@address = addr || 'localhost'
@address = addr
@port = port || type.port
@command = nil
@ -213,9 +212,9 @@ module Net
class Response
def initialize( ctype, cno, msg )
def initialize( ctype, code, msg )
@code_type = ctype
@code = cno
@code = code
@message = msg
super()
end

View file

@ -10,9 +10,8 @@ This program is free software. You can re-distribute and/or
modify this program under the same terms as Ruby itself,
Ruby Distribute License or GNU General Public License.
NOTE: You can get Japanese version of this document from
Ruby Documentation Project (RDP):
((<URL:http://www.ruby-lang.org/~rubikitch/RDP.cgi>))
NOTE: You can find Japanese version of this document in
the doc/net directory of the standard ruby interpreter package.
== What is This Module?