]> git.cworth.org Git - tar/blob - tests/truncate.at
upstream: Fix extraction of device nodes.
[tar] / tests / truncate.at
1 # Process this file with autom4te to create testsuite. -*- Autotest -*-
2
3 # Test suite for GNU tar.
4 # Copyright (C) 2005, 2007 Free Software Foundation, Inc.
5
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3, or (at your option)
9 # any later version.
10
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19 # 02110-1301, USA.
20
21 # Tar 1.15.1 incorrectly padded archive members that were truncated during
22 # archiving.
23 # References: <1115437005.8530.644529@goedel.fjf.gnu.de>
24 # http://lists.gnu.org/archive/html/bug-tar/2005-05/msg00008.html
25 #
26 # The test case is based on the script by Frank Heckenbach <frank@g-n-u.de>
27 # Additionally, the test verifies if tar exits with code 1 (file differs).
28
29 AT_SETUP([truncate])
30 AT_KEYWORDS([truncate filechange])
31
32 AT_TAR_CHECK([
33 genfile --file foo --length 50000k
34 genfile --file baz
35 genfile --run --checkpoint 10 --length 49995k --truncate foo -- tar --checkpoint -vcf bar foo baz
36 echo Exit status: $?
37 echo separator
38 sleep 1
39 genfile --file foo --seek 49995k --length 5k --pattern=zeros
40 tar dvf bar],
41 [1],
42 [foo
43 baz
44 Exit status: 1
45 separator
46 foo
47 foo: Mod time differs
48 baz
49 ],
50 [tar: foo: File shrank by 5120 bytes; padding with zeros
51 ])
52
53 AT_CLEANUP