[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [office] RE: Directories in Zip packages
Michael Stahl <michael.x.stahl@oracle.com> wrote on 09/28/2010 08:24:09 AM: > one reason why a ZIP producer would create entries for directories is to > store things like UID/GID and such using various platform specific extensions. > AFAIK Info-Zip can do this. > > of course for an ODF package that kind of thing is completely unnecessary. > But on the other hand using some generic ZIP implementation to modify ODF > packages can be very convenient at times, and if such a generic ZIP > implementation happens to create entires for directories then IMHO that > shouldn't make the ODF package invalid or non-conformant. > > [the extra platform specific stuff shouldn't be in a conformant package of > course, IIRC that is what the conformance clauses say.] I agree that a full, integrated ODF editor is likely to write only the minimum necessary entries, so A/B/C. However, there will continue to ODF consumers and producers that are not full editors. They could be simply programs, say shell scripts that unzip, insert files, re-zip. They could be programs in Perl, Python, Ruby, Java, C, etc. So in many cases the ODF document that you read in your editor might have been created or modified using some other ZIP tool, perhaps one that creates separate directory entries in the ZIP. The reason I bring this up is it makes the signing logic non-trivial if we say we're going to sign some directory entries but not others. For example a ZIP with entries: A/ A/B/ A/B/C A/B/D/ A/B/D/E/ So the A/B/ directory is not empty because it contains file C And clearly A/B/D/E/ is an empty directory because it contains nothing. But what about A/B/D/ ? It contains only the empty subdirectory A/B/C/E/. So it is not empty, but it only contains empty things. So is it signed? -Rob
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]