cvs commit: src/lib/libarchive archive_read_extract.c

Bruce Evans bde at zeta.org.au
Sun Jun 6 09:56:41 GMT 2004


On Sun, 6 Jun 2004, Tim Kientzle wrote:

> Bruce Evans wrote:
> > On Sat, 5 Jun 2004, Tim Kientzle wrote:
> > In fact, this stuff is quite broken.  After "cd /tmp; ln -s /tmp foo",
> > tarring up foo[/.] gives the following misbehaviours with yesterday's
> > versions of tars:
> >
> > tar cf z foo:
> >     only puts foo in the archive (correct)
> > bsdtar cf z foo:
> >     same, except bsdtar seems to be too smart about padding the output
> >     to a block boundary for regular files, so subsequent piping of the
> >     file might not work
>
> The default padding behavior for bsdtar was changed quite
> a while ago to not pad regular files; are you sure you're up-to-date?

Yes; not padding is a bug and the above says that I have it.

> > tar cf z foo/:
> >     only puts foo in the archive (broken)
> > bsdtar cf z foo/:
> >     same
>
> Here, bsdtar cf z foo/  does follow the symlink, which I
> presume you believe to be the correct behavior?

Yes.  foo/ is not a symlink (the slash forces folling the symlink) in the
kernel, so it should do so in utilities too.  Tab completion in shells
cah cause problems here.  You want the symlink and type foo, but tab
completion may change it to "foo/".

Bruce


More information about the cvs-all mailing list