deb(-src) http://jeroen.a-eskwadraat.nl/sw/debian/EXPERIMENTAL sid tar
Tested with really-soon-to-be-uploaded lintian, and by dpkg -i'ing with sarge's tar, with sid's, and with this NMU's tar. As intended, only sid's version is broken. My thanks go to: - Ingo Saitz <[EMAIL PROTECTED]>, provided patch - Marc 'HE' Brockschmidt <[EMAIL PROTECTED]>, made and tested checks that are now in lintian - Andreas Barth <[EMAIL PROTECTED]>, for motivating us to fix this --Jeroen diff -ur tar-1.13.92/debian/changelog tar-1.13.92.nmu/debian/changelog --- tar-1.13.92/debian/changelog 2004-02-13 15:57:24.000000000 +0100 +++ tar-1.13.92.nmu/debian/changelog 2004-02-13 14:01:20.000000000 +0100 @@ -1,3 +1,13 @@ +tar (1.13.92-2.1) unstable; urgency=low + + * Non Maintainer Upload to fix critical bug + * Do not create tar files with shortnames of exactly 100 chars, but rather + of 99 at max with a NUL byte after it. Some untar implementations, notably + dpkg's, don't gork the tar correctly otherwise (Closes: #230910) + (Patch by Ingo Saitz <[EMAIL PROTECTED]>) + + -- Jeroen van Wolffelaar <[EMAIL PROTECTED]> Fri, 13 Feb 2004 13:58:21 +0100 + tar (1.13.92-2) unstable; urgency=low * patches from CVS to stop stripping './' prefix from filenames, and to fix diff -ur tar-1.13.92/src/create.c tar-1.13.92.nmu/src/create.c --- tar-1.13.92/src/create.c 2004-02-13 15:57:24.000000000 +0100 +++ tar-1.13.92.nmu/src/create.c 2004-02-13 13:56:42.000000000 +0100 @@ -581,7 +581,7 @@ static union block * write_header_name (struct tar_stat_info *st) { - if (NAME_FIELD_SIZE < strlen (st->file_name)) + if (NAME_FIELD_SIZE <= strlen (st->file_name)) return write_long_name (st); else return write_short_name (st); @@ -1185,7 +1185,7 @@ block_ordinal = current_block_ordinal (); assign_string (&stat->link_name, link_name); - if (NAME_FIELD_SIZE < strlen (link_name)) + if (NAME_FIELD_SIZE <= strlen (link_name)) write_long_link (stat); stat->stat.st_size = 0; @@ -1417,7 +1417,7 @@ } buffer[size] = '\0'; assign_string (&stat->link_name, buffer); - if (size > NAME_FIELD_SIZE) + if (size >= NAME_FIELD_SIZE) write_long_link (stat); block_ordinal = current_block_ordinal (); -- Jeroen van Wolffelaar [EMAIL PROTECTED] (also for Jabber & MSN; ICQ: 33944357) http://Jeroen.A-Eskwadraat.nl
pgpmopvUbnrQs.pgp
Description: PGP signature