On Wed, Sep 30, 2009 at 11:01 PM, Tim Kientzle <[email protected]> wrote:
> Michael D. Adams wrote:
>>
>> Running tar over the exact same file at two different time isn't
>> producing the exact same tar file.
>>
>> I've tracked this down to the mtime field in the header that has
>> typeflag=x.
>>
>> Questions:
>>  (1) Is this behavior in conformance with the POSIX-2001 spec?  I
>> haven't seen anywhere that says what the mtime field should be when
>> there is an mtime extended header, but other tar/pax implementations
>> just fill it with zeros.
>
> I don't think the POSIX spec says anything about this.
> You should be able to avoid it, of course, by using
> "ustar" format, which does not generate the 'x' entries.

Except that I was going to use the extended headers to store ACL
information.  But if push comes to shove I might just use your
suggestion and leave out those ACLs so I can store it in "ustar"
format.

> I'm curious which "other tar/pax" implementations
> you surveyed?

Schilling's star uses the mtime of the file inside the tar (like you
say that bsdtar does), but Schilling's spax uses zeros.  (Version
"1.5a75 (i386-redhat-linux-gnu)" on both.)  Either behavior would be
fine for my purposes.  Only the way gnutar does it causes a problem.

Michael D. Adams
[email protected]


Reply via email to