diff options
Diffstat (limited to 'shell/hush_test')
-rw-r--r-- | shell/hush_test/hush-redir/redir1.right (renamed from shell/hush_test/hush-misc/redir1.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir1.tests (renamed from shell/hush_test/hush-misc/redir1.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir2.right (renamed from shell/hush_test/hush-misc/redir2.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir2.tests (renamed from shell/hush_test/hush-misc/redir2.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir3.right (renamed from shell/hush_test/hush-misc/redir3.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir3.tests (renamed from shell/hush_test/hush-misc/redir3.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir4.right (renamed from shell/hush_test/hush-misc/redir4.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir4.tests (renamed from shell/hush_test/hush-misc/redir4.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir5.right (renamed from shell/hush_test/hush-misc/redir5.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir5.tests (renamed from shell/hush_test/hush-misc/redir5.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir6.right (renamed from shell/hush_test/hush-misc/redir6.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir6.tests (renamed from shell/hush_test/hush-misc/redir6.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir7.right | 3 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir7.tests | 12 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir8.right | 3 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir8.tests | 15 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir9.right | 2 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir9.tests | 4 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redirA.right | 2 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redirA.tests | 11 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir_script.right (renamed from shell/hush_test/hush-misc/redir_script.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir_script.tests (renamed from shell/hush_test/hush-misc/redir_script.tests) | 0 | ||||
-rw-r--r-- | shell/hush_test/hush-redir/redir_space.right (renamed from shell/hush_test/hush-parsing/redir_space.right) | 0 | ||||
-rwxr-xr-x | shell/hush_test/hush-redir/redir_space.tests (renamed from shell/hush_test/hush-parsing/redir_space.tests) | 0 |
24 files changed, 52 insertions, 0 deletions
diff --git a/shell/hush_test/hush-misc/redir1.right b/shell/hush_test/hush-redir/redir1.right index 15515d1..15515d1 100644 --- a/shell/hush_test/hush-misc/redir1.right +++ b/shell/hush_test/hush-redir/redir1.right diff --git a/shell/hush_test/hush-misc/redir1.tests b/shell/hush_test/hush-redir/redir1.tests index ef2fbfb..ef2fbfb 100755 --- a/shell/hush_test/hush-misc/redir1.tests +++ b/shell/hush_test/hush-redir/redir1.tests diff --git a/shell/hush_test/hush-misc/redir2.right b/shell/hush_test/hush-redir/redir2.right index 7326d96..7326d96 100644 --- a/shell/hush_test/hush-misc/redir2.right +++ b/shell/hush_test/hush-redir/redir2.right diff --git a/shell/hush_test/hush-misc/redir2.tests b/shell/hush_test/hush-redir/redir2.tests index 81983ca..81983ca 100755 --- a/shell/hush_test/hush-misc/redir2.tests +++ b/shell/hush_test/hush-redir/redir2.tests diff --git a/shell/hush_test/hush-misc/redir3.right b/shell/hush_test/hush-redir/redir3.right index 3d20bbf..3d20bbf 100644 --- a/shell/hush_test/hush-misc/redir3.right +++ b/shell/hush_test/hush-redir/redir3.right diff --git a/shell/hush_test/hush-misc/redir3.tests b/shell/hush_test/hush-redir/redir3.tests index 7c28e43..7c28e43 100755 --- a/shell/hush_test/hush-misc/redir3.tests +++ b/shell/hush_test/hush-redir/redir3.tests diff --git a/shell/hush_test/hush-misc/redir4.right b/shell/hush_test/hush-redir/redir4.right index ead25f6..ead25f6 100644 --- a/shell/hush_test/hush-misc/redir4.right +++ b/shell/hush_test/hush-redir/redir4.right diff --git a/shell/hush_test/hush-misc/redir4.tests b/shell/hush_test/hush-redir/redir4.tests index c50b8ce..c50b8ce 100755 --- a/shell/hush_test/hush-misc/redir4.tests +++ b/shell/hush_test/hush-redir/redir4.tests diff --git a/shell/hush_test/hush-misc/redir5.right b/shell/hush_test/hush-redir/redir5.right index 52cce4f..52cce4f 100644 --- a/shell/hush_test/hush-misc/redir5.right +++ b/shell/hush_test/hush-redir/redir5.right diff --git a/shell/hush_test/hush-misc/redir5.tests b/shell/hush_test/hush-redir/redir5.tests index 957f9c8..957f9c8 100755 --- a/shell/hush_test/hush-misc/redir5.tests +++ b/shell/hush_test/hush-redir/redir5.tests diff --git a/shell/hush_test/hush-misc/redir6.right b/shell/hush_test/hush-redir/redir6.right index a97c4bd..a97c4bd 100644 --- a/shell/hush_test/hush-misc/redir6.right +++ b/shell/hush_test/hush-redir/redir6.right diff --git a/shell/hush_test/hush-misc/redir6.tests b/shell/hush_test/hush-redir/redir6.tests index c639ebb..c639ebb 100755 --- a/shell/hush_test/hush-misc/redir6.tests +++ b/shell/hush_test/hush-redir/redir6.tests diff --git a/shell/hush_test/hush-redir/redir7.right b/shell/hush_test/hush-redir/redir7.right new file mode 100644 index 0000000..6430b02 --- /dev/null +++ b/shell/hush_test/hush-redir/redir7.right @@ -0,0 +1,3 @@ +Ok +Ok +Done diff --git a/shell/hush_test/hush-redir/redir7.tests b/shell/hush_test/hush-redir/redir7.tests new file mode 100755 index 0000000..e873a46 --- /dev/null +++ b/shell/hush_test/hush-redir/redir7.tests @@ -0,0 +1,12 @@ +# Chars above 0x7f are used as special codes. +# 0x81 is CTLESC (see ash.c). +# The bug was that quoting and unquoting of them +# was out of sync for redirect filenames. + +>unicode.sh +printf 'echo Ok >uni\x81code\n' >>unicode.sh +printf 'cat uni\x81code\n' >>unicode.sh +printf 'cat uni?code\n' >>unicode.sh +. ./unicode.sh +rm uni*code* +echo Done diff --git a/shell/hush_test/hush-redir/redir8.right b/shell/hush_test/hush-redir/redir8.right new file mode 100644 index 0000000..6430b02 --- /dev/null +++ b/shell/hush_test/hush-redir/redir8.right @@ -0,0 +1,3 @@ +Ok +Ok +Done diff --git a/shell/hush_test/hush-redir/redir8.tests b/shell/hush_test/hush-redir/redir8.tests new file mode 100755 index 0000000..2bd3867 --- /dev/null +++ b/shell/hush_test/hush-redir/redir8.tests @@ -0,0 +1,15 @@ +# Chars above 0x7f are used as special codes. +# 0x81 is CTLESC (see ash.c). +# The bug was that quoting and unquoting of them +# was out of sync for redirect filenames. + +# Subcase when redirect filename is specified in a variable. + +>unicode.sh +printf 'v=uni\x81code\n' >>unicode.sh +printf 'echo Ok >"$v"\n' >>unicode.sh +printf 'cat uni\x81code\n' >>unicode.sh +printf 'cat uni?code\n' >>unicode.sh +. ./unicode.sh +rm uni*code* +echo Done diff --git a/shell/hush_test/hush-redir/redir9.right b/shell/hush_test/hush-redir/redir9.right new file mode 100644 index 0000000..34c2512 --- /dev/null +++ b/shell/hush_test/hush-redir/redir9.right @@ -0,0 +1,2 @@ +Ok +Done:0 diff --git a/shell/hush_test/hush-redir/redir9.tests b/shell/hush_test/hush-redir/redir9.tests new file mode 100755 index 0000000..8befa61 --- /dev/null +++ b/shell/hush_test/hush-redir/redir9.tests @@ -0,0 +1,4 @@ +echo Ok >file.tmp +cat 0<>file.tmp +echo Done:$? +rm file.tmp diff --git a/shell/hush_test/hush-redir/redirA.right b/shell/hush_test/hush-redir/redirA.right new file mode 100644 index 0000000..31406e3 --- /dev/null +++ b/shell/hush_test/hush-redir/redirA.right @@ -0,0 +1,2 @@ +tmp11 +tmp11 diff --git a/shell/hush_test/hush-redir/redirA.tests b/shell/hush_test/hush-redir/redirA.tests new file mode 100755 index 0000000..56833f9 --- /dev/null +++ b/shell/hush_test/hush-redir/redirA.tests @@ -0,0 +1,11 @@ +x="tmp11:tmp22" + +# Bug was incorrectly expanding variables in >redir +echo "${x%:*}" >"${x%:*}" +echo tmp1* +rm tmp1* + +# Also try unquoted +echo "${x%:*}" >${x%:*} +echo tmp1* +rm tmp1* diff --git a/shell/hush_test/hush-misc/redir_script.right b/shell/hush_test/hush-redir/redir_script.right index 6694ed3..6694ed3 100644 --- a/shell/hush_test/hush-misc/redir_script.right +++ b/shell/hush_test/hush-redir/redir_script.right diff --git a/shell/hush_test/hush-misc/redir_script.tests b/shell/hush_test/hush-redir/redir_script.tests index ccc497d..ccc497d 100755 --- a/shell/hush_test/hush-misc/redir_script.tests +++ b/shell/hush_test/hush-redir/redir_script.tests diff --git a/shell/hush_test/hush-parsing/redir_space.right b/shell/hush_test/hush-redir/redir_space.right index 0842952..0842952 100644 --- a/shell/hush_test/hush-parsing/redir_space.right +++ b/shell/hush_test/hush-redir/redir_space.right diff --git a/shell/hush_test/hush-parsing/redir_space.tests b/shell/hush_test/hush-redir/redir_space.tests index c0b5430..c0b5430 100755 --- a/shell/hush_test/hush-parsing/redir_space.tests +++ b/shell/hush_test/hush-redir/redir_space.tests |