]>
Commit | Line | Data |
---|---|---|
d02c81df SP |
1 | # Process this file with autom4te to create testsuite. -*- Autotest -*- |
2 | # Test suite for GNU tar. | |
c6f0ad51 | 3 | # Copyright 2015-2024 Free Software Foundation, Inc. |
d02c81df SP |
4 | # |
5 | # GNU tar is free software; you can redistribute it and/or modify | |
6 | # it under the terms of the GNU General Public License as published by | |
7 | # the Free Software Foundation; either version 3 of the License, or | |
8 | # (at your option) any later version. | |
9 | # | |
10 | # GNU tar is distributed in the hope that it will be useful, | |
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | # GNU General Public License for more details. | |
14 | # | |
15 | # You should have received a copy of the GNU General Public License | |
16 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
17 | ||
18 | # Description: Extraction from concatenated incremental archives | |
19 | # produced spurious error messages when trying to set file ownership | |
20 | # and permissions on renamed directories | |
21 | # Reported by: Alex Efros <powerman@powerman.name> | |
22 | # References: <20151129094003.GD18347@home.power> | |
23 | # http://lists.gnu.org/archive/html/bug-tar/2015-11/msg00033.html | |
24 | ||
25 | AT_SETUP([concatenated incremental archives (renames)]) | |
1d2674ba | 26 | AT_KEYWORDS([incremental concat cat incr11 chdir]) |
d02c81df SP |
27 | |
28 | AT_TAR_CHECK([ | |
143dc63f | 29 | AT_CHECK_TIMESTAMP |
d02c81df SP |
30 | AT_SORT_PREREQ |
31 | AT_TAR_MKHIER([data/dir],[file]) | |
32 | decho Level 0 | |
33 | tar -cvf full.tar -g snap -C data . | |
34 | decho Level 1 | |
35 | mv data/dir data/dir2 | |
36 | tar -cvf incr.tar -g snap -C data . | |
37 | decho Concat | |
38 | cp full.tar full2.tar | |
39 | tar -A -f full2.tar incr.tar | |
40 | decho Extract | |
41 | mkdir out | |
42 | tar -xvf full2.tar -g /dev/null -C out | |
43 | decho List | |
44 | find out | sort | |
45 | ], | |
46 | [0], | |
47 | [Level 0 | |
48 | ./ | |
49 | ./dir/ | |
50 | ./dir/file | |
51 | Level 1 | |
52 | ./ | |
53 | ./dir2/ | |
54 | Concat | |
55 | Extract | |
56 | ./ | |
57 | ./dir/ | |
58 | ./dir/file | |
59 | ./ | |
60 | ./dir2/ | |
61 | List | |
62 | out | |
63 | out/dir2 | |
64 | out/dir2/file | |
65 | ], | |
66 | [Level 0 | |
67 | tar: .: Directory is new | |
68 | tar: ./dir: Directory is new | |
69 | Level 1 | |
70 | tar: ./dir2: Directory has been renamed from './dir' | |
71 | Concat | |
72 | Extract | |
73 | List | |
74 | ],[],[],[gnu]) | |
75 | ||
76 | AT_CLEANUP |