diff options
-rw-r--r-- | shell/ash_test/ash-redir/redir5.right | 4 | ||||
-rwxr-xr-x | shell/ash_test/ash-redir/redir5.tests | 13 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir_to_bad_fd.right | 2 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir_to_bad_fd.tests | 3 |
4 files changed, 22 insertions, 0 deletions
diff --git a/shell/ash_test/ash-redir/redir5.right b/shell/ash_test/ash-redir/redir5.right new file mode 100644 index 000000000..52cce4feb --- /dev/null +++ b/shell/ash_test/ash-redir/redir5.right @@ -0,0 +1,4 @@ +Backgrounded pipes shall have their stdin redirected to /dev/null +Zero:0 +Zero:0 +Done diff --git a/shell/ash_test/ash-redir/redir5.tests b/shell/ash_test/ash-redir/redir5.tests new file mode 100755 index 000000000..957f9c81f --- /dev/null +++ b/shell/ash_test/ash-redir/redir5.tests @@ -0,0 +1,13 @@ +echo "Backgrounded pipes shall have their stdin redirected to /dev/null" + +# 1. bash does not redirect stdin to /dev/null if it is interactive. +# hush does it always (this is allowed by standards). + +# 2. Failure will result in this script hanging + +cat & wait; echo Zero:$? + +# This does not work for bash! bash bug? +cat | cat & wait; echo Zero:$? + +echo Done diff --git a/shell/hush_test/hush-redir/redir_to_bad_fd.right b/shell/hush_test/hush-redir/redir_to_bad_fd.right new file mode 100644 index 000000000..43b8af293 --- /dev/null +++ b/shell/hush_test/hush-redir/redir_to_bad_fd.right @@ -0,0 +1,2 @@ +./redir_to_bad_fd.tests: line 2: 10: Bad file descriptor +OK diff --git a/shell/hush_test/hush-redir/redir_to_bad_fd.tests b/shell/hush_test/hush-redir/redir_to_bad_fd.tests new file mode 100755 index 000000000..91b0c1ff9 --- /dev/null +++ b/shell/hush_test/hush-redir/redir_to_bad_fd.tests @@ -0,0 +1,3 @@ +# ash uses fd 10 (usually) for reading the script +echo LOST >&10 +echo OK |