Module Name: src
Committed By: kre
Date: Sun May 15 15:44:43 UTC 2016
Modified Files:
src/tests/bin/sh: t_redircloexec.sh
Log Message:
Add a new test case to validate N>&N redirect disables close-on-exec.
OK christos@
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/bin/sh/t_redircloexec.sh
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/tests/bin/sh/t_redircloexec.sh
diff -u src/tests/bin/sh/t_redircloexec.sh:1.2 src/tests/bin/sh/t_redircloexec.sh:1.3
--- src/tests/bin/sh/t_redircloexec.sh:1.2 Wed Mar 16 21:13:51 2016
+++ src/tests/bin/sh/t_redircloexec.sh Sun May 15 15:44:43 2016
@@ -1,4 +1,4 @@
-# $NetBSD: t_redircloexec.sh,v 1.2 2016/03/16 21:13:51 christos Exp $
+# $NetBSD: t_redircloexec.sh,v 1.3 2016/05/15 15:44:43 kre Exp $
#
# Copyright (c) 2016 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -82,6 +82,40 @@ exec_redir_closed_body() {
cleanhelper exec
}
+atf_test_case exec_redir_open
+exec_redir_open_head() {
+ atf_set "descr" "Tests that redirections created by exec can remain open"
+}
+exec_redir_open_body() {
+
+ mkhelper exec 6 \
+ "exec 6> out 6>&6; echo exec1 >&6; ${TEST_SH} exec2; exec 6>&-"
+
+ atf_check -s exit:0 -o empty -e empty ${TEST_SH} ./exec1
+ atf_check -s exit:0 -o empty -e empty ${TEST_SH} -e ./exec1
+
+ mkhelper exec 9 \
+ "exec 9> out ; echo exec1 >&9; ${TEST_SH} exec2 9>&9"
+
+ atf_check -s exit:0 -o empty -e empty ${TEST_SH} ./exec1
+
+ mkhelper exec 8 \
+ "exec 8> out; printf OK; exec 8>&8; echo exec1 >&8;" \
+ "printf OK; ${TEST_SH} exec2; printf OK"
+
+ atf_check -s exit:0 -o match:OKOKOK -e empty \
+ ${TEST_SH} -e ./exec1
+
+ mkhelper exec 7 \
+ "exec 7> out; printf OK; echo exec1 >&7;" \
+ "printf OK; ${TEST_SH} 7>&7 exec2; printf OK"
+
+ atf_check -s exit:0 -o match:OKOKOK -e empty \
+ ${TEST_SH} -e ./exec1
+
+ cleanhelper exec
+}
+
atf_test_case loop_redir_open
loop_redir_open_head() {
atf_set "descr" "Tests that redirections in loops don't close on exec"
@@ -136,6 +170,7 @@ subshell_redir_open_body() {
atf_init_test_cases() {
atf_add_test_case exec_redir_closed
+ atf_add_test_case exec_redir_open
atf_add_test_case loop_redir_open
atf_add_test_case compound_redir_open
atf_add_test_case simple_redir_open