Commit graph

131 commits

Author SHA1 Message Date
Tom Freudenberg
e22626f08e [ruby/net-smtp] mod: bump to a new VERSION that could be checked for testings >0.2.1
8f2c9323e2
2021-04-28 10:51:10 +09:00
mohamed
ff931d0336 [ruby/net-smtp] Replace Timeout.timeout with socket timeout
Timeout.timeout is inefficient since it spins up a new thread for
each invocation, use Socket.tcp's connect_timeout option instead

6ae4a59f05
2021-04-28 10:47:29 +09:00
Tom Freudenberg
4c8cce5b8a [ruby/net-smtp] Net::SMTP.start() and #start() accepts ssl_context_params keyword argument
Additional params are passed to OpenSSL::SSL::SSLContext#set_params.

	For example, `Net::SMTP#start(ssl_context_params: { cert_store: my_store, timeout: 123 })`
	calls `set_params({ cert_store: my_store, timeout: 123 })`.

4213389c21
2021-04-28 10:46:38 +09:00
Hiroshi SHIBATA
dc3a65bd99
[ruby/net-smtp] Bump version to 0.2.1
6e5c09dcc4
2020-11-18 16:28:46 +09:00
Hiroshi SHIBATA
cada6d85d0
Import net-smtp-0.2.0 from https://github.com/ruby/net-smtp 2020-11-17 14:17:45 +09:00
Nobuyoshi Nakada
3198e7abd7
Separate send into public_send and __send__ 2020-10-27 16:12:45 +09:00
nicholas a. evans
f1d32010e6 [ruby/net-smtp] Add SNI support to net/smtp
b706942392
2020-09-14 17:26:36 +09:00
TOMITA Masahiro
141404e898 [ruby/net-smtp] Net::SMTP.start arguments are keyword arguments
The helo argument is not important, but the helo argument must be
specified to specify the user and secret arguments.
If helo, user, secret, and authtype arguments are keyword arguments,
it is not necessary to specify the helo argument.

269774deac
2020-09-14 17:23:41 +09:00
TOMITA Masahiro
888e04ae05 [ruby/net-smtp] TLS should not check the host name by default.
In tlsconnect(), the host name is checked when
@ssl_context.verify_mode is not OpenSSL::SSL::VERIFY_NONE, but the
verify_mode of @ssl_context generated by default is nil.

bde75a15b5
2020-09-14 17:22:35 +09:00
Nobuyoshi Nakada
b2d96abb42 Extract version number from the source
"requiring version.rb" strategy has some issues.

- cannot work when cross-compiling
- often introduces wrong namespace
- must know the superclasses
- costs at each runtime than at build-time

etc.
2020-07-30 19:03:18 +09:00
Nobuyoshi Nakada
2b7409a2f2
Specify explicit separator not to be affected by $; 2020-03-08 17:38:37 +09:00
Nobuyoshi Nakada
108f7536b3
Removed unnecessary chomp
As `String#split` with the default argument drops trailing newline
as a separator, preceding `String#chomp` is futile.
2020-03-07 17:04:37 +09:00
Jeremy Evans
c5c05460ac Warn on access/modify of $SAFE, and remove effects of modifying $SAFE
This removes the security features added by $SAFE = 1, and warns for access
or modification of $SAFE from Ruby-level, as well as warning when calling
all public C functions related to $SAFE.

This modifies some internal functions that took a safe level argument
to no longer take the argument.

rb_require_safe now warns, rb_require_string has been added as a
version that takes a VALUE and does not warn.

One public C function that still takes a safe level argument and that
this doesn't warn for is rb_eval_cmd.  We may want to consider
adding an alternative method that does not take a safe level argument,
and warn for rb_eval_cmd.
2019-11-18 01:00:25 +02:00
Hiroshi SHIBATA
223d3c460a
Promote net-smtp to default gems 2019-11-07 16:36:14 +09:00
Jeremy Evans
14b0c94ac3 Fix documentation for Net::SMTPServerBusy
Fixes [Bug #11628]
2019-06-27 16:57:19 -07:00
glass
c5e8627f65 Revert "lib/net/http.rb: use connect_timeout instead of Timeout"
This reverts commit 69a1db96fe.
getaddrinfo(3) doesn't support timeout.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-31 01:09:30 +00:00
glass
69a1db96fe lib/net/http.rb: use connect_timeout instead of Timeout
lib/net/pop.rb: ditto

lib/net/ftp.rb: ditto

lib/net/smtp.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-31 00:46:07 +00:00
marcandre
e859e668d2 lib/*: Prefer require_relative over require.
[#15206] [Fix GH-1976]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02 17:52:33 +00:00
kazu
0055f09bcc Use unpack1 instead of unpack and [0]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-20 23:34:03 +00:00
kazu
6ca3028eec lib/net/smtp.rb: Specify frozen_string_literal: true.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-12 12:17:33 +00:00
normal
f845a9ef76 lib/*: remove closed checks
Follow r56795.  Since Ruby 2.2, calling #close on a closed
socket no longer raises exceptions.

* lib/cgi/session.rb (update): remove closed? check
* lib/net/http.rb (finish, transport_request): ditto
* lib/net/imap.rb (disconnect): ditto
* lib/net/pop.rb (do_start, do_finish): ditto
* lib/net/smtp.rb (do_start, do_finish): ditto
* lib/open3.rb (popen_run, pipeline_run): ditto
* lib/pstore.rb (transaction): ditto
* lib/shell/process-controller.rb (sfork):
* lib/tempfile (_close, call, Tempfile.create): ditto
* lib/webrick/httpauth/htdigest.rb (flush): ditto
* lib/webrick/httpauth/htpasswd.rb (flush): ditto
* lib/webrick/server.rb (start_thread, cleanup_shutdown_pipe): ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-21 23:05:41 +00:00
nobu
dad2382270 net/protocol.rb: kwargs
* lib/net/protocol.rb (Net::BufferedIO#initialize): add keyword
  arguments for initial attributes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14 07:53:32 +00:00
shugo
73b3b10d8d * lib/net/smtp.rb (tlsconnect): support timeout for TLS handshake.
[ruby-core:76893] [Bug #12678]

* lib/net/protocol.rb (ssl_socket_connect): new method to implement
  timeout for TLS handshake.

* lib/net/http.rb (connect): use Net::Protocol#ssl_socket_connect.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-05 06:47:36 +00:00
nobu
69b8fddd55 Remove dead link [ci skip]
* lib/net/smtp.rb: [DOC] Remove dead link on documentation for
  Japanese of SMTP.  [Fix GH-1380]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-11 06:19:40 +00:00
shugo
0827a7e52b * lib/net/smtp.rb (getok, get_response): raise an ArgumentError when
CR or LF is included in a line, because they are not allowed in
RFC5321.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-08 07:06:57 +00:00
normal
778bbac8ac stdlib: avoid extra calls to eliminate "\n" from Base64
We may use the '0' (zero) to avoid adding the line feed.
Furthermore, the '*' (asterisk) modifier is not needed for
a single-element arrays.

* ext/psych/lib/psych/visitors/yaml_tree.rb (visit_String):
  eliminate chomp
* lib/net/http.rb (connect): eliminate delete
* lib/net/http/header.rb (basic_encode): ditto
* lib/net/imap.rb (authenticate): eliminate gsub
  (self.encode_utf7): shorten delete arg
* lib/net/smtp.rb (base64_encode): eliminate gsub
* lib/open-uri.rb (OpenURI.open_http): eliminate delete
* lib/rss/rss.rb: ditto
* lib/securerandom.rb (base64): ditto
  (urlsafe_base64): eliminate delete!
* lib/webrick/httpauth/digestauth.rb (split_param_value):
  eliminate chop
* lib/webrick/httpproxy.rb (do_CONNECT): eliminate delete
  (setup_upstream_proxy_authentication): ditto
  [ruby-core:72666] [Feature #11938]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-10 00:35:43 +00:00
naruse
3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
kosaki
00eb720394 * lib/net/smtp.rb (Net::SMTP#data): enable buffering while
'data' send for optimizing Net::SMTP#send_message.
  [ruby-dev:48329] [misc #9981]
  patch by Masahiro Tomita.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-11 19:22:19 +00:00
zzak
7433ce3e8c * lib/net/smtp.rb: [DOC] Remove dead link to RAA by Giorgos Tsiftsis
Fixes the following bugs: [Bug #9152] [Bug #9268] [Bug #9394]
* lib/open-uri.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-01-13 05:49:12 +00:00
a_matsuda
1083b375ec * lib/net/smtp.rb: [DOC] Fix typo
s/raies/raises/
[ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-03 12:14:22 +00:00
drbrain
34e57abf23 * lib/net/smtp.rb (Net::SMTP#critical): Always return a
Net::SMTP::Response.  Patch by Pawel Veselov.
  [ruby-trunk - Bug #9125]
* test/net/smtp/test_smtp.rb:  Test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-02 05:18:04 +00:00
kazu
c54733e120 fix typos inspired by r40825
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-19 14:50:47 +00:00
hsbt
c25aa9f5d6 Document the default Net timeout values by @toolmantim [GH fixes #269]
* lib/net/{ftp,http,pop,smtp}.rb: added documentation for default values.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-31 01:47:47 +00:00
drbrain
f2a13e60d9 * lib/net/smtp.rb: Added Net::SMTP#rset method to implement the SMTP
RSET command.  [ruby-trunk - Feature #5373]
* NEWS:  ditto.
* test/net/smtp/test_smtp.rb:  Test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-11 17:27:03 +00:00
zzak
e91fb5eb6f * lib/net/smtp.rb: Fix rdoc title for Net::SMTP
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-02 04:37:45 +00:00
mame
606208becf * lib/net/smtp.rb (check_continue): raise an error with an explanatory
message.  [ruby-core:35854] [Feature #4598]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-24 12:55:13 +00:00
drbrain
ea9b6997cc * lib/net/protocol.rb (module Net): Added ReadTimeout to match
OpenTimeout.  ReadTimeout is now raised by rbuf_fill instead of
  Timeout::Error to help users distinguish what type of timeout
  occurred.  [ruby-trunk - Feature #6088]
* lib/net/pop.rb (module Net):  Updated documentation for ReadTimeout
  and OpenTimeout.
* lib/net/http.rb (module Net):  ditto
* lib/net/smtp.rb (module Net):  ditto
* lib/net/telnet.rb (module Net):  Net::ReadTimeout is now raised in
  waitfor to match Net::Protocol.
* test/net/http/test_http.rb:  Updated Timeout::Error expectation to
  Net::ReadTimeout.
* test/net/ftp/test_ftp.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-11 21:20:51 +00:00
drbrain
09f27873ed * lib/net/protocol.rb: Add OpenTimeout subclass of Timeout::Error
* lib/net/pop.rb:  Modernize Timeout usage.  Patch by Eric Wong.
	  Use Net::OpenTimeout instead of Timeout::Error.  [Bug #5765]
	* lib/net/http.rb:  ditto
	* lib/net/smtp.rb:  ditto
	* lib/net/telnet.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-28 05:15:54 +00:00
ktsj
c3749b6a6d * ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb,
ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb,
  lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb,
  lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb,
  lib/rinda/tuplespace.rb, lib/rss/maker/base.rb,
  lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb,
  lib/shell/command-processor.rb, lib/shell/process-controller.rb,
  lib/shell/system-command.rb, lib/uri/common.rb: remove unused block
  arguments to avoid creating Proc objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-05 07:37:47 +00:00
drbrain
1cb6879c82 * lib/net/smtp.rb: Document Net::SMTP::Response. Patch by J.R. Garcia.
[Ruby 1.9 - Bug #4768]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-23 00:21:10 +00:00
tenderlove
3971bc3c70 adding more tests for Net::SMTP::Response class
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-22 23:26:05 +00:00
tenderlove
d236a0ca3b passing nil to split is not necessary
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-22 23:18:05 +00:00
tenderlove
0a2392a50a * lib/net/smtp.rb: refactoring Net::SMTP#esmtp= to use an
attr_accessor

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-22 23:13:49 +00:00
tenderlove
4a7f4d1f48 * lib/net/smtp.rb: Net::SMTP should close the SSL connection if the
connection verification fails.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-22 21:37:13 +00:00
nobu
6fd326e76c * lib/net/smtp.rb (Net::SMTP#rcptto_list): fixed typo.
[ruby-core:29809]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-27 09:00:52 +00:00
nobu
2939d61f28 * lib/net/smtp.rb (Net::SMTP#rcptto_list): continue when at least
one RCPT is accepted.  based on a patch from Kero van Gelder at
  [ruby-core:26190].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-16 23:57:43 +00:00
nobu
c9dd4823d9 * lib: fixed typo. a patch by Sho Hashimoto in [ruby-dev:40716].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 03:30:59 +00:00
matz
0fa6bb37c6 * lib/net/smtp.rb (Net::SMTP#check_auth_args): should not change
number of methods for the sake of compatibility.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10 23:56:22 +00:00
nobu
287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
shyouhei
76ef6fa16b * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
Masao Takaku <masao at nii.ac.jp>
	  fix [ruby-dev:35489].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-04 05:46:53 +00:00