From b9ad75fa602dd72b042b2ea08ce86da50746ab30 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Fri, 28 Mar 2008 17:49:31 +0000 Subject: copy_file: handle "cp /dev/foo file" (almost) compatibly to coreutils. (almost because we do not copy mode, which is probably wasn't intended). +61 bytes. --- testsuite/cp/cp-a-files-to-dir | 3 ++- testsuite/cp/cp-dev-file | 2 ++ testsuite/cp/cp-does-not-copy-unreadable-file | 7 ++++++- 3 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 testsuite/cp/cp-dev-file (limited to 'testsuite/cp') diff --git a/testsuite/cp/cp-a-files-to-dir b/testsuite/cp/cp-a-files-to-dir index 39f8f8103..abdbdf77d 100644 --- a/testsuite/cp/cp-a-files-to-dir +++ b/testsuite/cp/cp-a-files-to-dir @@ -2,7 +2,8 @@ echo file number one > file1 echo file number two > file2 ln -s file2 link1 mkdir dir1 -touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file3 +# why??? +#touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file3 mkdir there busybox cp -a file1 file2 link1 dir1 there test -f there/file1 diff --git a/testsuite/cp/cp-dev-file b/testsuite/cp/cp-dev-file new file mode 100644 index 000000000..055f0d9ee --- /dev/null +++ b/testsuite/cp/cp-dev-file @@ -0,0 +1,2 @@ +busybox cp /dev/null foo +test -f foo diff --git a/testsuite/cp/cp-does-not-copy-unreadable-file b/testsuite/cp/cp-does-not-copy-unreadable-file index ce11bfab0..e17e8e66d 100644 --- a/testsuite/cp/cp-does-not-copy-unreadable-file +++ b/testsuite/cp/cp-does-not-copy-unreadable-file @@ -1,6 +1,11 @@ touch foo chmod a-r foo set +e -busybox cp foo bar +if test `id -u` = 0; then + # run as user with nonzero uid + setuidgid 1 busybox cp foo bar +else + busybox cp foo bar +fi set -e test ! -f bar -- cgit v1.2.3