bsdtar / libarchive bug?

Brian Fundakowski Feldman green at freebsd.org
Thu Dec 8 14:54:06 PST 2005


On Thu, Dec 08, 2005 at 05:29:06PM -0000, Steven Hartland wrote:
> It seems bsdtar can create files it cant read. i.e. it will happily create
> empty tar.gz files but when it comes to read them the following error
> is output:
> tar: Unrecognized archive format: Inappropriate file type or format
> 
> Having a look at libarchive shows the following code:
>    /* An empty archive is a serious error. */
>    if (bytes_read == 0) {
>        archive_set_error(a, ARCHIVE_ERRNO_FILE_FORMAT,
>            "Empty input file");
>        return (ARCHIVE_FATAL);
>    }
> 
> Which is where I expect the issue is, why would an empty archive
> be fatal? I can see any reason for this, yes its strange but there's
> nothing fatal about it imo.

I don't think it will "happily create empty tar.gz files", even where
by empty you mean the tar itself inside of the gz.

{"/home/green" green at green}$ tar cfv x.tar
tar: no files or directories specified
{"/home/green" green at green}$ tar cfvz x.tar.gz
tar: no files or directories specified
{"/home/green" green at green}$ ls -l x.ta*
ls: x.ta*: No such file or directory

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> green at FreeBSD.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\


More information about the freebsd-stable mailing list