Commit graph

163 commits

Author SHA1 Message Date
akr
d900ed31f7 * process.c (rlimit_resource_name2int): support more limits:
RLIMIT_MSGQUEUE, RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_RTTIME and
  RLIMIT_SIGPENDING.
  (Init_process): ditto.
  patch by Run Paint Run Run.  [ruby-core:32262]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-11 23:38:44 +00:00
akr
c3f2d17abe refine an assertion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-25 14:25:55 +00:00
akr
3cea675fbe add an assertion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-24 13:50:05 +00:00
nobu
d837ce5eda * process.c (rb_f_spawn): use correct command name for the error
message.  [ruby-dev:41395]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-23 23:16:09 +00:00
usa
d863f7af0c * test/ruby/test_process.rb: skip some tests on Windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-14 04:34:37 +00:00
usa
266a9ea5f3 * test/ruby/test_process.rb: skip some tests on Windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-13 06:32:21 +00:00
akr
cef8a996be fix a test.
OpenSolaris cannot remove the current directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-06 11:47:00 +00:00
akr
55a4c972df add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-13 17:00:48 +00:00
wanabe
a6b81a6b6e * test/ruby/test_process.rb (test_execopts_env): MANDATORY_ENVS might
not be a part of ENV.  e.g. TMPDIR.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-12 07:12:12 +00:00
akr
e1b928c598 delete RUBYLIB for ruby spawned in test_no_curdir.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-12 00:39:06 +00:00
akr
f86cca6f55 add ML ref.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-11 18:21:47 +00:00
akr
7c6df6dc17 add a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-11 18:15:25 +00:00
naruse
c47c38de93 Retry on checking signal_received.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-05 02:03:18 +00:00
nobu
35e17cbe21 * test/ruby/test_process.rb (test_rlimit_value): rlim_max may be
higher than rlim_cur.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-13 02:43:52 +00:00
nobu
6a64e9e4ac * win32/win32.c (rb_w32_spawn, rb_w32_aspawn): use NULL as
application name for batch files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-22 05:51:58 +00:00
nobu
1e94f2f4f6 * test/ruby/test_process.rb (test_popen_shell): test for [ruby-core:22960].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-20 23:52:43 +00:00
nobu
c9cc612c09 * test/ruby/test_process.rb: skips tests need fd inheritance.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-20 23:28:20 +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
akr
ad235344c4 specify exception class for rescue clause.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-08 00:10:13 +00:00
akr
af14ba145e test setrlimit in a child process.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-07 10:22:20 +00:00
akr
fb128ef26f no need to restore rlimit in child process.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-06 11:36:23 +00:00
usa
7e4ca52669 * test/ruby/test_process.rb: mswin specs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-22 06:27:44 +00:00
nobu
33f7e74998 * test/ruby/test_process.rb (MANDATORY_ENVS): needs RUBYLIB to run
tests without install.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-22 05:52:14 +00:00
naruse
832740d15c * test/ruby/test_process.rb (TestProcess#test_wait_and_sigchild):
Add rescue NotImplementedError.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-11 01:30:59 +00:00
nobu
a931f96111 * test/ruby/test_process.rb (TestProcess::MANDATORY_ENVS): some
platforms need environments for shared objects.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-09 01:40:16 +00:00
mame
d8d5cda2d4 * test/ruby/test_process.rb (test_wait_and_sigchild): remove debug
output.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-02 13:18:57 +00:00
yugui
b3ff7eb3ef * process.c (rb_waitpid): retries waitpid when EINTR.
[ruby-core:19744].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-29 14:41:22 +00:00
usa
0b10c32079 * test/ruby/test_process.rb: skip some tests on win32.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-04 16:39:55 +00:00
akr
a112ec787a * process.c (check_exec_fds): resolve cascaded child fd reference.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-04 10:17:34 +00:00
akr
30b8f1ee2b * process.c (EXEC_OPTION_DUP2_CHILD): defined.
(check_exec_redirect_fd): check :in, :out and :err.
  (check_exec_redirect): check [:child, fd].
  (check_exec_fds): validate EXEC_OPTION_DUP2_CHILD array.
  (run_exec_dup2_child): new function.
  (rb_run_exec_options): call run_exec_dup2_child.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-03 15:02:10 +00:00
akr
ca209c80e9 * process.c (check_exec_redirect): accept :in, :out, :err as redirect
target.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-03 12:33:37 +00:00
kazu
8aaf39ce80 * test/ruby/test_process.rb (TestProcess#test_rlimit_value): add Errno::EINVAL. [ruby-dev:35900]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-23 11:04:54 +00:00
akr
61acccefb7 * process.c (pst_pid): use rb_attr_get to avoid warning on
Process::Status.allocate.pid.
  (pst_inspect): don't raise if self is not initialized.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-21 10:18:38 +00:00
naruse
99e1e0f208 add comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 21:37:41 +00:00
naruse
38751ad9ae * test/ruby/process.rb (test_popen_fork): skip a test which is
freeze in FreeBSD.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 21:33:24 +00:00
kazu
784ddb80d2 * test/ruby/test_dir.rb: use realpath of tmpdir. [ruby-dev:35481]
* test/ruby/test_process.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-22 02:17:15 +00:00
mame
d80a9afb18 * test/ruby/test_process.rb (test_getpriority, test_setpriority): use
PRIO_PROCESS instead of PRIO_USER.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-17 12:09:21 +00:00
akr
ff27b33044 fix test_status_kill for coredump message in Process::Status#inspect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-28 16:53:56 +00:00
usa
5bf133eb50 * test/ruby/test_process.rb (test_exec_wordsplit): on win32, exec'ed process is not child but grandchild.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-24 02:37:51 +00:00
usa
b6cab6e8f1 * test_process.rb (test_popen_fork): skip test if fork is not implemented.
* test_process.rb (test_getpriority): skip test if Process::PRIO_USER is not
  defined.

* test_process.rb (test_setpriority): cannot rescue exceptions which raise in
  assert_nothing_raised. check Process:PRIO_USER before test to skip instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-24 01:26:54 +00:00
mame
4a14d3c04b * test/ruby/test_process.rb: add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-04 16:30:03 +00:00
usa
1de486b600 * test/ruby/test_file_exhaustive.rb (setup): workaround for Windows
Vista.

	* test/ruby/envutil.rb (rubyexec): now Open3.open3 is supported on
	  Windows.

	* test/ruby/test_process.rb: use ``||'' instead of ``;'' because
	  cmd.exe not support it.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-20 16:48:32 +00:00
usa
9416fedc28 * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
* process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
	  run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
	  save parent's process environments.
	  !!!remark!!! these are not thread-safe.

	* process.c (rb_spawn_internal): remove calling run_exec_options()
	  because cannot restore after spawn. we'll fix this later.

	* io.c (pipe_open): ditto.

	* test/ruby/test_process.rb (test_execopts_env): upcase environment
	  variable name for case insensitive platforms.

	* win32/win32.c (init_env): set USER environment variable only when
	  USERNAME is available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-12 14:15:32 +00:00
akr
435ac5e58d * test/ruby/test_process.rb (TestProcess#with_stdin): defined.
(TestProcess#test_argv0_noarg): don't use redirect_fds.
  [ruby-dev:34647]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-11 09:01:31 +00:00
akr
b104173c4c add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 12:38:47 +00:00
akr
5adabb4010 don't use fork method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 06:17:28 +00:00
akr
36cb003300 * process.c (check_exec_redirect_fd): prohibit duplex IO.
(check_exec_fds): record maxhint even if close_others is not
  specified.
  (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 05:40:19 +00:00
akr
01e712d786 add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-29 02:24:26 +00:00
akr
80b1f7b50e add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-27 06:10:35 +00:00
akr
2142a5af51 don't use Unix commands such as true, env, etc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26 15:39:09 +00:00