[ 
https://issues.apache.org/jira/browse/COMPRESS-400?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16050726#comment-16050726
 ] 

Simon Spero commented on COMPRESS-400:
--------------------------------------

If you have xattrs in the file system, and you tar with - - xattrs set,
they get added with that header by Gnu tar. Libarchive uses a different
prefix but reads both. Gnu tar complains if the libarchive headers are set.

There's some Extra Extended magic for names and values that I didn't code
up, because there are two sets of hacks that aren't standardized, and it's
only really important when extracting to the fs, but I left the tech debt.
Also, not sure if I want to handle binary values, but ought to. Annoyed
enough fixing  bugs in the  star mode base256 stuff :)

On Thu, Jun 15, 2017, 12:08 PM Stefan Bodewig (JIRA) <[email protected]>



> It should be possible for users to create and access extra PAX headers to tar 
> archives 
> ---------------------------------------------------------------------------------------
>
>                 Key: COMPRESS-400
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-400
>             Project: Commons Compress
>          Issue Type: Improvement
>          Components: Archivers
>            Reporter: Simon Spero
>            Priority: Minor
>
> It is very useful to be able to add extra PAX headers to tar entries.  For 
> example, a tar file containing maven artifacts could have extra headers 
> carrying the groupid, artifactid, version, classifier, etc.  
> If the appropriate prefixes are used, these headers can be extracted to posix 
> extended attributes by gnu and bsdtar.
> This change requires adding a map to TarArchiveEntry to carry the extra 
> headers, plus modifications to the TarArchive*Stream to save unrecognized 
> headers when reading, and to add any extra headers when writing. 
> I have created a prototype implementation, but have not merged it into my 
> fork of the project.  I don't have full tests written, because I was using 
> gnutar as an oracle.
>  I have also ignored the issue of writing values to standard headers like 
> size, though since the PAX specification states that doing things like 
> setting size=100 (if the real size is not in fact 100) is undefined, so I'm 
> technically in compliance.  The temptation is  to do what was asked, then on 
> close pop up a "Were you sure?" dialog, but that's mean.  I guess I could use 
> this to set the appropriate entry fields if doing so makes sense, but the 
> easiest approach  is to block setting any headers that would be consumed by 
> the tar implementation when reading. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to