aboutsummaryrefslogtreecommitdiffstats
path: root/test/net/ftp/test_ftp.rb
Commit message (Collapse)AuthorAgeFilesLines
* Rename RubyVM::MJIT to RubyVM::JITTakashi Kokubun2021-01-131-17/+17
| | | | | | | | because the name "MJIT" is an internal code name, it's inconsistent with --jit while they are related to each other, and I want to discourage future JIT implementation-specific (e.g. MJIT-specific) APIs by this rename. [Feature #17490]
* Guard all accesses to RubyVM::MJIT with defined?(RubyVM::MJIT) &&Benoit Daloze2020-12-041-15/+15
| | | | * Otherwise those tests, etc cannot run on alternative Ruby implementations.
* Increase read timeout of FTP tests with --jit-waitTakashi Kokubun2020-06-211-1/+13
| | | | | Trying to eliminate some newer random failures http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3016543
* Try using longer read_timeout for --jit-waitTakashi Kokubun2020-06-141-7/+4
| | | | | | | | failure on TestFTP. When we skip a test, the place to hang (long wait for compilation) just moves to another test and it doesn't seem to finish. http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3003055
* Skip test_getbinaryfile_command_injection on --jit-waitTakashi Kokubun2020-06-131-0/+2
| | | | | | | | | | Timeout-based test often fails with --jit-wait as a false positive. Like other tests in the TestFTP, let me skip this as well. http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3001181 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3000134 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2999923 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2998857
* [ruby/net-ftp] Added guard condition for the old ruby versionsHiroshi SHIBATA2020-04-081-2/+2
| | | | https://github.com/ruby/net-ftp/commit/a56ba121ee
* [ruby/net-ftp] Guard with under the Ruby 2.6Hiroshi SHIBATA2020-04-081-1/+1
| | | | https://github.com/ruby/net-ftp/commit/bed4bc31db
* Ignore test_getbinaryfile for --jit-waitTakashi Kokubun2020-03-251-0/+2
| | | | | | | To fix this properly, we'd need to configure timeout for the server and the client because waiting for compilation takes time. Until we figure out how to do it, let me skip this.
* Skip test_abort_tls with --jit-wait for nowTakashi Kokubun2020-03-121-0/+2
| | | | | Perhaps the server blocks for an unexpectedly long time by waiting for JIT. As it's usually passing, I don't think it's detecting a bug.
* Add Net::FTP#features and Net::FTP#optionShugo Maeda2019-09-021-0/+96
| | | | | Patch by darkphnx (Dan Wentworth) . Thanks! [Feature #15964]
* Suppress unused variable warningsNobuyoshi Nakada2019-06-301-0/+3
|
* test_ftp.rb: loosen another timeout requirementk0kubun2018-11-141-2/+2
| | | | | | | for Travis osx. https://travis-ci.org/ruby/ruby/jobs/454864155 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_ftp.rb: loosen timeout for Travis osxk0kubun2018-11-141-4/+4
| | | | | | https://travis-ci.org/ruby/ruby/jobs/454798071 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_ftp.rb: extend timeout for --jit-wait testingk0kubun2018-11-081-1/+1
| | | | | | | to avoid random failures like https://app.wercker.com/ruby/ruby/runs/mjit-test1/5be394b818310600284f2b50?step=5be394f1591ca800079b1329 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* net/http, net/ftp: skip SSL/TLS session resumption testsrhe2018-08-091-0/+13
| | | | | | | | | | | | | | | | | | Due to a bug in OpenSSL 1.1.0h[1] (it's only in this specific version; it was introduced just before the release and is already fixed in their stable branch), the callback set by SSLContext#session_new_cb= does not get called for clients, making net/http and net/ftp not attempt session resumption. Let's disable the affected test cases for now. Another option would be to fallback to using SSLSocket#session as we did before r64234. But since only a single version is affected and hopefully a new stable version containing the fix will be released in near future, I chose not to add such workaround code to lib/. [1] https://github.com/openssl/openssl/pull/5967 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: workaround for EPROTOTYPEnobu2018-04-301-1/+1
| | | | | | | | | | * io.c (internal_write_func, internal_writev_func): retry at unexpected EPROTOTYPE on macOS, to get rid of a kernel bug. [ruby-core:86690] [Bug #14713] * ext/socket/init.c (rsock_{sendto,send,write}_blocking): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_ftp.rb: extend read_timeout for --jit-waitk0kubun2018-04-281-1/+1
| | | | | | | testing. I'm running `make test-all RUN_OPTS='--jit-wait'` and the read_timeout was too slow for it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Extend timeout for CI.shugo2017-12-211-2/+2
| | | | | | http://ci.rvm.jp/results/trunk-asserts-nopara@ruby-sky1/266962 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix a command injection vulnerability in Net::FTP.nagachika2017-12-141-0/+234
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove unnecessary read_timeout.shugo2017-12-061-7/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Remove unnecessary read_timeout.shugo2017-12-051-5/+1
| | | | | | http://ci.rvm.jp/results/trunk-asserts-nopara@ruby-sky1/219867 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* skip openssl related tests.ko12017-05-161-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Specify the socktype explicitly.shugo2016-12-041-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use 127.0.0.1 if getaddrinfo fails.shugo2016-12-041-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use IPv6 if it's preferred.shugo2016-12-031-106/+85
| | | | | | I hope this fix makes tests faster on Windows. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Suppress warnings.shugo2016-11-291-8/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Ignore SystemCallError in case it is raised by SSLSocket#accept.shugo2016-11-291-1/+1
| | | | | | | Errno::ECONNRESET was raised by test_tls_post_connection_check and test_tls_unknown_ca on mswin64 CI. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* net/ftp: add a new option ssl_handshake_timeout to Net::FTP.new.shugo2016-11-291-9/+6
| | | | | | | | | | The TLS handshake timeout can be specified independently, because the TLS handshake doesn't start just after the underlying connection is established, but after the AUTH command is completed. It's also useful for testing purposes. However, if ssl_handshake_timeout is not specified, open_timeout is used instead for convenience. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hide exceptions in server threadusa2016-11-281-5/+8
| | | | | | | * test/net/ftp/test_ftp.rb (test_tls_connect_timeout): sleeping to give a chance of complete of accept is a timing issue at all. therefore, simply ignore the exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Give a chance to complete server.acceptusa2016-11-281-0/+1
| | | | | | | * test/net/ftp/test_ftp.rb (test_tls_connect_timeout): get rid of a test error on Windows. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* net/ftp: support timeout for TLS handshake.shugo2016-11-261-0/+24
| | | | | | Net::FTP inherits ssl_socket_connect from Net::Protocol to implement timeout. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* rescue Errno::EPROTOTYPE in FTPTest#test_list_read_timeout_exceeded.shugo2016-11-231-1/+1
| | | | | | | Errno::EPROTOTYPE is sometimes raised on Mac OS X 10.10. [ruby-core:78066] [Bug #12914] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add a new optinal argument pathname to FTP#stat.shugo2016-11-231-0/+33
| | | | | | | Based on the patch by soleboxy. [Fix GH-1478] [ruby-core:78240] [Feature #12965] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add BufferedSSLSocket#send.shugo2016-11-221-0/+53
| | | | | | | SSLSocket#send is not defined, so use #write instead. flags and dest are ignored. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add new options open_timeout and read_timeout to Net::FTP.new.shugo2016-11-211-0/+10
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remote_address should be called on @bare_sock.shugo2016-11-201-1/+1
| | | | | | Because @sock.remote_address fails if @sock is an SSLSocket. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Expand abbreviated option names.shugo2016-11-191-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Move certificates to test/net/fixtures/.shugo2016-11-191-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Support TLS and hash styles options for Net::FTP.new.shugo2016-11-191-0/+456
| | | | | | | | If the :ssl options is specified, the control connection is protected with TLS in the manner described in RFC 4217. Data connections are also protected with TLS unless the :private_data_connection is set to false. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ftp.rb: use Addrinfo interfacesshugo2016-11-151-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (putline): raise an ArgumentError whenshugo2016-07-051-0/+10
| | | | | | CR or LF is included in a line. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* net/ftp.rb: NullSocket#closed?nobu2016-02-121-0/+8
| | | | | | | * net/ftp.rb: add NullSocket#closed? to fix closing not opened connection. [Fix GH-1232] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (initialize): Connections are in passive mode pershugo2015-11-111-0/+3
| | | | | | | | | default now. The default mode can be changed by Net::FTP.default_passive=. * lib/net/ftp.rb (default_passive=, default_passive): new methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add binmode for Tempfile to prevent EOF (0x1A)naruse2015-10-271-0/+1
| | | | | | http://ruby-mswin.cloudapp.net/vc10-x64/ruby-trunk/log/20151023T062322Z.log.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (gettextfile, getbinaryfile): use the safeshugo2015-10-231-2/+127
| | | | | | navigation operator. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/net/ftp/test_ftp.rb: add tests for getbinaryfile andshugo2015-10-221-0/+159
| | | | | | gettextfile. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (parse257): refactor.shugo2015-10-091-1/+19
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb: use frozen_string_literal: true.shugo2015-10-091-3/+6
| | | | | | | | | | * test/net/ftp/test_buffered_socket.rb: ditto. * test/net/ftp/test_ftp.rb: ditto. * test/net/ftp/test_mlsx_entry.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (mtime): use usec instead of fractions to parseshugo2015-09-281-0/+11
| | | | | | | decimal fractions of a second correctly when the number of digits is not 6. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (mtime): parse decimal fractions of a second asshugo2015-09-281-0/+38
| | | | | | specified in RFC 3659. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e