From 22f741484391c3b2fd94881fd41c8c0df9749e95 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Thu, 24 Jul 2008 22:34:43 +0000 Subject: ash: prevent exec NN>&- from closing fd used for script reading --- shell/ash_test/ash-redir/redir4.right | 1 + shell/ash_test/ash-redir/redir4.tests | 72 +++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 shell/ash_test/ash-redir/redir4.right create mode 100755 shell/ash_test/ash-redir/redir4.tests (limited to 'shell/ash_test') diff --git a/shell/ash_test/ash-redir/redir4.right b/shell/ash_test/ash-redir/redir4.right new file mode 100644 index 0000000..d86bac9 --- /dev/null +++ b/shell/ash_test/ash-redir/redir4.right @@ -0,0 +1 @@ +OK diff --git a/shell/ash_test/ash-redir/redir4.tests b/shell/ash_test/ash-redir/redir4.tests new file mode 100755 index 0000000..4bdf5ae --- /dev/null +++ b/shell/ash_test/ash-redir/redir4.tests @@ -0,0 +1,72 @@ +# ash uses fd 10 (usually) for reading the script +exec 13>&- +exec 12>&- +exec 11>&- +exec 10>&- +# some amount of input is prefetched. +# make sure final echo is far enough to not be prefetched. +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +############################################################### +echo "OK" -- cgit v1.1