switch-coreboot/util/lar/README
Stefan Reinauer 6220b632e7 Now version 3: LinuxBIOS -> coreboot rename.
- I left LB_TAG_ intact because they are used by the payloads
- file renames are still missing. see next commit
- some lb_ renames might be missing. feel free to provide patches.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://coreboot.org/repository/coreboot-v3@564 f3766cd6-281f-0410-b1cd-43a5c92072e9
2008-01-27 18:54:57 +00:00

107 lines
2.5 KiB
Text

Lightweight Archiver: lar
-----------------------
Table of Contents
- Introduction
- Usage
- Archive format
- TODO
- Copyright and License
Introduction
------------
This is a simple archiver, similar to cpio, ar or tar. It was designed and
written for coreboot.
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-2007 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
Note: The files lar.h and example.c are dual-licensed. You can choose between:
- The GNU GPL, version 2, as published by the Free Software Foundation.
- The revised BSD license (without advertising clause). See lar.h.