On Jul 30, 2007, at 1:53 PM, Jeff Johnson wrote:
> My first goal will be to strip 2 items that XAR does not have, the
> rpm lead and
> signature header. The lead will be discarded, the signature tags
> will be
> appended to the metadata header (which is what currently happens now
> when a *.rpm package is read, see headerMergeLegacySigs in lib/
> package.c)
>
> At that point, XAR and RPM have a fundamentally equivalent archive
> format
> consisting of contiguous metadata blob, plus a payload.
>
Achieved, at least the hackery.
rpm's appendix, the lead, is entirely vestigial, and likely headed
for the
slop bucket permanently.
Nuking the signature header will need a bit more thought, but is highly
likely as well, XAR has its own concept(s) of signatures.
> This is likely to break everything on HEAD. You've been warned. ;-)
>
Nothing is broken. Yet.
Next will be a magic dispatcher to get rid of the pugly --nolead/--
nosigh/--newmagic
scaffholding. At the same time, I'll likely try compressed headers as
well as XML
headers, as in rpm -qp --xml foo*.rpm, before starting the detailed
mapping of
rpm <-> xar metadata.
Anyone for encrypted headers and files? It's formally the same
problem as compression,
in fact is a simpler implementation, because symmetric encryption is
length preserving.
73 de Jeff
Received on Tue Jul 31 19:19:53 2007