switch-coreboot/util/lar
Uwe Hermann 1a4be55c7f Cosmetic changes (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://coreboot.org/repository/LinuxBIOSv3@152 f3766cd6-281f-0410-b1cd-43a5c92072e9
2007-02-27 21:33:33 +00:00
..
create.c Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
create.h Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
example.c Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
extract.c Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
extract.h Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
lar.c Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
lar.h Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
lib.c Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
lib.h Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
list.c Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
list.h Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
Makefile Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00
README Cosmetic changes (trivial). 2007-02-27 21:33:33 +00:00

LinuxBIOS Archiver: lar
-----------------------

Table of Contents
  - Introduction
  - Usage
  - Archive format
  - TODO
  - Copyright and License
  - ChangeLog


Introduction
------------

This is a simple archiver, similar to cpio, ar or tar.

Design goals were
  - minimum overhead
  - maximum fault tolerance
  - simplicity

For a usage example see example.c.

For questions contact Stefan Reinauer <stepan@coresystems.de>.


Usage
-----

Create archive archive.lar containing files file1 ... fileN:

  $ lar c archive.lar file1 ... fileN

Extract files from archive.lar:

  $ lar x archive.lar [file1 ... fileN]

List files in archive:

  $ lar l archive.lar


Archive format
--------------

The rough format is:

 |--------------|
 | header       |
 |--------------|
 | data         |
 |--------------|
 | header       |
 |--------------|
 | data         |
 |--------------|
  ...

Headers have to be 16 byte aligned.

 |----------------------------|
 | magic (8 bytes)            |
 |----------------------------|
 | length (4 bytes)           |
 |----------------------------|
 | checksum (4 bytes)         |
 |----------------------------|
 | offset to blob (4 bytes)   |
 |----------------------------|
 | "path name"                | <-- null terminated, aligned to 16 bytes
 |----------------------------|
 | blob (aligned to 16 bytes) |
 |----------------------------|


TODO
----

  - Reading flash layouts
  - This does not enforce any alignment yet
  - Alignment enforcing will be optional


Copyright and License
---------------------

Copyright (C) 2006 coresystems GmbH
Written by Stefan Reinauer <stepan@coresystems.de> for coresystems GmbH.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA, 02110-1301 USA


ChangeLog
---------

2006/10/9
  - Initial version