# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([-C in file lists])
-AT_KEYWORDS([files-from T-cd])
+AT_KEYWORDS([files-from T-cd chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
# This is basic test for acl support.
AT_SETUP([acls: work with -C])
-AT_KEYWORDS([xattrs acls acls02])
+AT_KEYWORDS([xattrs acls acls02 chdir])
AT_TAR_CHECK([
AT_XATTRS_UTILS_PREREQ
# http://www.mail-archive.com/bug-tar@gnu.org/msg04355.html
AT_SETUP([acls: default ACLs])
-AT_KEYWORDS([xattrs acls acls03])
+AT_KEYWORDS([xattrs acls acls03 chdir])
m4_define([ACL_LISTDIR], [
cd $1
# http://lists.gnu.org/archive/html/help-tar/2010-06/msg00000.html
AT_SETUP([exclude: long files in pax archives])
-AT_KEYWORDS([exclude exclude06])
+AT_KEYWORDS([exclude exclude06 chdir])
m4_pushdef([test_base_dir],[one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen])
# References: <45475D78.8050708@cs.uu.nl>
AT_SETUP([extracting symlinks to a read-only dir])
-AT_KEYWORDS([extract extract07 read-only symlink])
+AT_KEYWORDS([extract extract07 read-only symlink chdir])
AT_TAR_CHECK([
AT_UNPRIVILEGED_PREREQ
# (See also 'listed03.at'.)
AT_SETUP([extracting even when . and .. are unreadable])
-AT_KEYWORDS([extract extrac09])
+AT_KEYWORDS([extract extrac09 chdir])
AT_TAR_CHECK([
AT_UNPRIVILEGED_PREREQ
# effect when the metadata are later set.
AT_SETUP([-C and delayed setting of metadata])
-AT_KEYWORDS([extract extrac10])
+AT_KEYWORDS([extract extrac10 chdir])
AT_TAR_CHECK([
mkdir d x x/y
# Check that 'tar' works even in a file-descriptor-limited environment.
AT_SETUP([scarce file descriptors])
-AT_KEYWORDS([extract extrac11])
+AT_KEYWORDS([extract extrac11 chdir])
AT_TAR_CHECK([
exec </dev/null
# Check that 'tar' extracts permissions on the working directory last.
AT_SETUP([extract dot permissions])
-AT_KEYWORDS([extract extrac12])
+AT_KEYWORDS([extract extrac12 chdir])
AT_TAR_CHECK([
mkdir src dst
# unless --dereference is specified.
AT_SETUP([extract over symlinks])
-AT_KEYWORDS([extract extrac13])
+AT_KEYWORDS([extract extrac13 chdir])
AT_TAR_CHECK([
mkdir src dst1 dst2 dst3
# Check that 'tar -x -C FOO' follows FOO if FOO is a symbolic link.
AT_SETUP([extract -C symlink])
-AT_KEYWORDS([extract extrac14])
+AT_KEYWORDS([extract extrac14 chdir])
AT_TAR_CHECK([
mkdir dest
# Check diagnostic of 'tar -x a/b/c' when b cannot be created.
AT_SETUP([extract parent mkdir failure])
-AT_KEYWORDS([extract extrac15])
+AT_KEYWORDS([extract extrac15 chdir])
AT_TAR_CHECK([
AT_UNPRIVILEGED_PREREQ
# Check extraction of empty directory with -C.
AT_SETUP([extract empty directory with -C])
-AT_KEYWORDS([extract extrac16])
+AT_KEYWORDS([extract extrac16 chdir])
AT_TAR_CHECK([
mkdir src src/a src/a/b dest
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([name matching/transformation ordering])
-AT_KEYWORDS([extract extrac17])
+AT_KEYWORDS([extract extrac17 chdir])
# Description: Tar 1.24 changed the ordering of name matching and
# name transformation so that the former saw already transformed
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([incremental dumps with -C])
-AT_KEYWORDS([incremental incr05])
+AT_KEYWORDS([incremental incr05 chdir])
AT_TAR_CHECK([
AT_CHECK_TIMESTAMP
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([incremental dumps of nested directories])
-AT_KEYWORDS([incremental incr06])
+AT_KEYWORDS([incremental incr06 chdir])
AT_TAR_CHECK([
AT_CHECK_TIMESTAMP
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([incremental restores with -C])
-AT_KEYWORDS([incremental extract incr07])
+AT_KEYWORDS([incremental extract incr07 chdir])
# Tar 1.26 had problems extracting from incremental restores when given
# the -C option. The code in incremen.c:try_purge_directory and
# http://lists.gnu.org/archive/html/bug-tar/2013-09/msg00034.html
AT_SETUP([filename normalization])
-AT_KEYWORDS([incremental create incr08])
+AT_KEYWORDS([incremental create incr08 chdir])
AT_TAR_CHECK([
AT_CHECK_TIMESTAMP
# previous absolute path.)
AT_SETUP([incremental with alternating -C])
-AT_KEYWORDS([incremental create incr09])
+AT_KEYWORDS([incremental create incr09 chdir])
AT_TAR_CHECK([
AT_CHECK_TIMESTAMP
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([concatenated incremental archives (deletes)])
-AT_KEYWORDS([incremental concat cat incr10])
+AT_KEYWORDS([incremental concat cat incr10 chdir])
# Description: Extraction from concatenated incremental archives
# produced spurious error messages when trying to set file ownership
# http://lists.gnu.org/archive/html/bug-tar/2015-11/msg00033.html
AT_SETUP([concatenated incremental archives (renames)])
-AT_KEYWORDS([incremental concat cat incr11])
+AT_KEYWORDS([incremental concat cat incr11 chdir])
AT_TAR_CHECK([
AT_CHECK_TIMESTAMP
# This testcase is Linux-specific and requires root privileges.
AT_SETUP([--listed-incremental and remounted directories])
-AT_KEYWORDS([listed incremental listed05])
+AT_KEYWORDS([listed incremental listed05 chdir])
AT_TAR_CHECK([
AT_CHECK_TIMESTAMP
# Test multivolume dumps from pipes.
AT_SETUP([multivolume dumps from pipes])
-AT_KEYWORDS([multivolume multiv multiv01])
+AT_KEYWORDS([multivolume multiv multiv01 chdir])
# Fixme: should be configurable
# TRUSS=truss -o /tmp/tr
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
AT_SETUP([tar --one-top-level restoring permissions])
-AT_KEYWORDS([extract onetop onetop05])
+AT_KEYWORDS([extract onetop onetop05 chdir])
# When extracting an archive that contains ./ with the --one-top-level option,
# the mode and ownership of ./ would be incorrectly applied to the current
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([Several options])
-AT_KEYWORDS([options positional positional03])
+AT_KEYWORDS([options positional positional03 chdir])
AT_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:rel in -c/non-incr. mode])
-AT_KEYWORDS([create remove-files remfiles04 remfiles04a])
+AT_KEYWORDS([create remove-files remfiles04 remfiles04a chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
# )
AT_SETUP([remove-files with -C:rel in -c/incr. mode])
-AT_KEYWORDS([create incremental remove-files remfiles04 remfiles04b])
+AT_KEYWORDS([create incremental remove-files remfiles04 remfiles04b chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
# )
AT_SETUP([remove-files with -C:rel in -r mode])
-AT_KEYWORDS([create append remove-files remfiles04 remfiles04c])
+AT_KEYWORDS([create append remove-files remfiles04 remfiles04c chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
# )
AT_SETUP([remove-files with -C:rel,rel in -c/non-incr. mode])
-AT_KEYWORDS([create remove-files remfiles05 remfiles05a])
+AT_KEYWORDS([create remove-files remfiles05 remfiles05a chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:rel,rel in -c/incr. mode])
-AT_KEYWORDS([create incremental remove-files remfiles05 remfiles05b])
+AT_KEYWORDS([create incremental remove-files remfiles05 remfiles05b chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:rel,rel in -r mode])
-AT_KEYWORDS([create append remove-files remfiles05 remfiles05c])
+AT_KEYWORDS([create append remove-files remfiles05 remfiles05c chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:rel,abs in -c/non-incr. mode])
-AT_KEYWORDS([create remove-files remfiles06 remfiles06a])
+AT_KEYWORDS([create remove-files remfiles06 remfiles06a chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:rel,abs in -c/incr. mode])
-AT_KEYWORDS([create incremental remove-files remfiles06 remfiles06b])
+AT_KEYWORDS([create incremental remove-files remfiles06 remfiles06b chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:rel,abs in -r mode])
-AT_KEYWORDS([create append remove-files remfiles06 remfiles06c])
+AT_KEYWORDS([create append remove-files remfiles06 remfiles06c chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:abs,rel in -c/non-incr. mode])
-AT_KEYWORDS([create remove-files remfiles07 remfiles07a])
+AT_KEYWORDS([create remove-files remfiles07 remfiles07a chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:abs,rel in -c/incr. mode])
-AT_KEYWORDS([create incremental remove-files remfiles07 remfiles07b])
+AT_KEYWORDS([create incremental remove-files remfiles07 remfiles07b chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files with -C:abs,rel in -r mode])
-AT_KEYWORDS([create append remove-files remfiles07 remfiles07c])
+AT_KEYWORDS([create append remove-files remfiles07 remfiles07c chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
#
AT_SETUP([remove-files deleting two subdirs in -c/non-incr. mode])
-AT_KEYWORDS([create remove-files remfiles08 remfiles08a])
+AT_KEYWORDS([create remove-files remfiles08 remfiles08a chdir])
AT_TAR_CHECK([
mkdir foo
# mode; see remfiles09b.at for that specific test case.
AT_SETUP([remove-files deleting two subdirs in -c/incr. mode])
-AT_KEYWORDS([create incremental remove-files remfiles08 remfiles08b])
+AT_KEYWORDS([create incremental remove-files remfiles08 remfiles08b chdir])
AT_TAR_CHECK([
mkdir foo
#
AT_SETUP([remove-files deleting two subdirs in -r mode])
-AT_KEYWORDS([create append remove-files remfiles08 remfiles08c])
+AT_KEYWORDS([create append remove-files remfiles08 remfiles08c chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
# http://lists.gnu.org/archive/html/bug-tar/2004-05/msg00008.html
AT_SETUP([working -C with --same-order])
-AT_KEYWORDS([same-order same-order01])
+AT_KEYWORDS([same-order same-order01 chdir])
AT_TAR_CHECK([
AT_SORT_PREREQ
# Test if we did not break the correct behavior.
AT_SETUP([multiple -C options])
-AT_KEYWORDS([same-order same-order02])
+AT_KEYWORDS([same-order same-order02 chdir])
AT_TAR_CHECK([
genfile -l 1024 -f file1
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([storing sparse file using seek method])
-AT_KEYWORDS([sparse sparse06])
+AT_KEYWORDS([sparse sparse06 chdir])
m4_define([check_pattern],[
rm -rf out archive.tar smallsparse && mkdir out
# Cooperation of the '-C' option and storing/restoring extended attributes.
AT_SETUP([xattrs: change directory with -C option])
-AT_KEYWORDS([xattrs xattr02])
+AT_KEYWORDS([xattrs xattr02 chdir])
AT_TAR_CHECK([
AT_XATTRS_PREREQ
# Setup of the trusted.* domain under privileged user.
AT_SETUP([xattrs: trusted.* attributes])
-AT_KEYWORDS([xattrs xattr03])
+AT_KEYWORDS([xattrs xattr03 chdir])
AT_TAR_CHECK([
AT_PRIVILEGED_PREREQ
# Related commit 4bde4f3. See the bug: https://bugzilla.redhat.com/717684
AT_SETUP([xattrs: s/open/openat/ regression])
-AT_KEYWORDS([xattrs xattr04])
+AT_KEYWORDS([xattrs xattr04 chdir])
AT_TAR_CHECK([
AT_XATTRS_PREREQ
# http://lists.gnu.org/archive/html/bug-tar/2012-10/msg00017.html
AT_SETUP([xattrs: keywords with '=' and '%'])
-AT_KEYWORDS([xattrs xattr05])
+AT_KEYWORDS([xattrs xattr05 chdir])
AT_TAR_CHECK([
AT_XATTRS_PREREQ