mirror of
https://codeberg.org/landley/toybox.git
synced 2026-01-26 14:13:25 +00:00
Add "uudecode -o -" support.
busybox uudecode supports this, and POSIX explicitly mentions it (albeit only in the "STDOUT" section). Plus Android doesn't have /dev/stdout and /dev/stdin, so this lets us rewrite the uudecode tests so they pass on Android too.
This commit is contained in:
parent
fea6d56777
commit
0956d16785
@ -4,24 +4,23 @@
|
||||
|
||||
#testing "name" "command" "result" "infile" "stdin"
|
||||
|
||||
testing "uu empty file" "uudecode -o /dev/stdout && echo yes" \
|
||||
testing "uu empty file" "uudecode -o - && echo yes" \
|
||||
"yes\n" "" "begin 744 test\n\`\nend\n"
|
||||
testing "uu 1-char" "uudecode -o /dev/stdout" "a" "" \
|
||||
testing "uu 1-char" "uudecode -o -" "a" "" \
|
||||
"begin 744 test\n!80 \n\`\nend\n"
|
||||
testing "uu 2-char" "uudecode -o /dev/stdout" "ab" "" \
|
||||
testing "uu 2-char" "uudecode -o -" "ab" "" \
|
||||
"begin 744 test\n\"86( \n\`\nend\n"
|
||||
testing "uu 3-char" "uudecode -o /dev/stdout" "abc" "" \
|
||||
testing "uu 3-char" "uudecode -o -" "abc" "" \
|
||||
"begin 744 test\n#86)C\n\`\nend\n"
|
||||
|
||||
testing "b64 empty file" "uudecode -o /dev/stdout && echo yes" \
|
||||
testing "b64 empty file" "uudecode -o - && echo yes" \
|
||||
"yes\n" "" "begin-base64 744 test\n====\n"
|
||||
testing "b64 1-char" "uudecode -o /dev/stdout" "a" "" \
|
||||
testing "b64 1-char" "uudecode -o -" "a" "" \
|
||||
"begin-base64 744 test\nYQ==\n====\n"
|
||||
testing "b64 2-char" "uudecode -o /dev/stdout" "ab" "" \
|
||||
testing "b64 2-char" "uudecode -o -" "ab" "" \
|
||||
"begin-base64 744 test\nYWI=\n====\n"
|
||||
testing "b64 3-char" "uudecode -o /dev/stdout" "abc" "" \
|
||||
testing "b64 3-char" "uudecode -o -" "abc" "" \
|
||||
"begin-base64 744 test\nYWJj\n====\n"
|
||||
|
||||
testing "filename" "uudecode && echo -ne 'abc' | cmp uudecode-fn-test /dev/stdin && echo -ne yes && rm uudecode-fn-test" \
|
||||
testing "filename" "uudecode && echo -ne 'abc' | cmp uudecode-fn-test - && echo -ne yes && rm uudecode-fn-test" \
|
||||
"yes" "" "begin-base64 744 uudecode-fn-test\nYWJj\n====\n"
|
||||
|
||||
|
||||
@ -41,7 +41,8 @@ void uudecode_main(void)
|
||||
}
|
||||
}
|
||||
|
||||
ofd = xcreate(TT.o ? TT.o : line+idx, O_WRONLY|O_CREAT|O_TRUNC,
|
||||
if (TT.o && !strcmp(TT.o, "-")) ofd = 1;
|
||||
else ofd = xcreate(TT.o ? TT.o : line+idx, O_WRONLY|O_CREAT|O_TRUNC,
|
||||
string_to_mode(mode, 0777^toys.old_umask));
|
||||
|
||||
for(;;) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user