mirror of
https://github.com/fail0verflow/switch-coreboot.git
synced 2025-05-04 01:39:18 -04:00
Signed-off-by: Myles Watson <mylesgw@gmail.com> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> git-svn-id: svn://coreboot.org/repository/coreboot-v3@1131 f3766cd6-281f-0410-b1cd-43a5c92072e9 |
||
---|---|---|
.. | ||
bootblock.c | ||
elf.h | ||
example.c | ||
lar.c | ||
lar.h | ||
lib.c | ||
lib.h | ||
Makefile | ||
README | ||
stream.c |
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.