| #!/bin/sh |
| |
| |
|
|
| |
|
|
| |
| |
| |
| |
|
|
| |
| |
| |
| |
|
|
| |
| |
|
|
| . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src |
| print_ver_ cp |
|
|
| touch a || framework_failure_ |
| ln a b || framework_failure_ |
| mkdir c || framework_failure_ |
| cp -d a b c || framework_failure_ |
| test -f c/a || framework_failure_ |
| test -f c/b || framework_failure_ |
|
|
|
|
| a_inode=$(ls -i c/a|sed 's,c/.*,,') |
| b_inode=$(ls -i c/b|sed 's,c/.*,,') |
| test "$a_inode" = "$b_inode" || fail=1 |
| |
|
|
| rm -rf a b c |
| touch a |
| ln -s a b |
| mkdir c |
| cp --preserve=links -R -H a b c || fail=1 |
| a_inode=$(ls -i c/a|sed 's,c/.*,,') |
| b_inode=$(ls -i c/b|sed 's,c/.*,,') |
| test "$a_inode" = "$b_inode" || fail=1 |
| |
|
|
| |
| |
| rm -rf a b c d; mkdir d; (cd d; touch a; ln -s a b) |
| cp --preserve=links -R -L d c || fail=1 |
| a_inode=$(ls -i c/a|sed 's,c/.*,,') |
| b_inode=$(ls -i c/b|sed 's,c/.*,,') |
| test "$a_inode" = "$b_inode" || fail=1 |
| |
|
|
| |
| rm -rf a b c d; mkdir d; (cd d; touch a; ln a b) |
| cp --preserve=links -R -L d c || fail=1 |
| a_inode=$(ls -i c/a|sed 's,c/.*,,') |
| b_inode=$(ls -i c/b|sed 's,c/.*,,') |
| test "$a_inode" = "$b_inode" || fail=1 |
| |
|
|
| |
| rm -rf a b c d; mkdir d; (cd d; touch a; ln a b) |
| cp -dR --no-preserve=links d c || fail=1 |
| a_inode=$(ls -i c/a|sed 's,c/.*,,') |
| b_inode=$(ls -i c/b|sed 's,c/.*,,') |
| test "$a_inode" = "$b_inode" && fail=1 |
| |
|
|
| |
| rm -rf a b c d |
| touch a; ln a b |
| mkdir c |
| cp -d a b c || fail=1 |
| a_inode=$(ls -i c/a|sed 's,c/.*,,') |
| b_inode=$(ls -i c/b|sed 's,c/.*,,') |
| test "$a_inode" = "$b_inode" || fail=1 |
| |
|
|
| |
| rm -rf a b c d |
| touch a; chmod 731 a |
| umask 077 |
| cp -a --no-preserve=mode a b || fail=1 |
| mode=$(ls -l b|cut -b-10) |
| test "$mode" = "-rw-------" || fail=1 |
| umask 022 |
| |
|
|
| Exit $fail |
|
|