123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- # Process this file with autom4te to create testsuite. -*- Autotest -*-
- # Test suite for GNU tar.
- # Copyright 2023 Free Software Foundation, Inc.
- # This file is part of GNU tar.
- # GNU tar is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 3 of the License, or
- # (at your option) any later version.
- # GNU tar is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- # You should have received a copy of the GNU General Public License
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
- # When deleting last partially written member from a truncated archive
- # tar 1.34 would miss EOF and spin in a dead loop in delete.c:flush_file.
- # References: https://savannah.gnu.org/bugs/?63823
- AT_SETUP([EOF detection])
- AT_KEYWORDS([delete delete06])
- AT_TAR_CHECK([
- mkdir b
- touch a b/1 c
- tar -cf archive.tar a b/1 c
- case $TEST_TAR_FORMAT in
- gnu) size=1500;;
- pax) size=3072;;
- esac
- dd if=archive.tar of=trunc.tar bs=$size count=1 2>/dev/null
- tar --delete 'b/' -f trunc.tar
- ],
- [2],
- [],
- [tar: lseek: trunc.tar: Value too large for defined data type
- tar: Exiting with failure status due to previous errors
- ],[],[],[gnu, pax])
- AT_CLEANUP
|