[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The format introduced in November 1990 (v. 1.09) was
designed on top of standard ustar
headers in such an
unfortunate way that some of its fields overwrote fields required by
POSIX.
An old GNU sparse header is designated by type ‘S’
(GNUTYPE_SPARSE
) and has the following layout:
Offset | Size | Name | Data type | Contents |
---|---|---|---|---|
0 | 345 | N/A | Not used. | |
345 | 12 | atime | Number | atime of the file. |
357 | 12 | ctime | Number | ctime of the file . |
369 | 12 | offset | Number | For multivolume archives: the offset of the start of this volume. |
381 | 4 | N/A | Not used. | |
385 | 1 | N/A | Not used. | |
386 | 96 | sp | sparse_header | (4 entries) File map. |
482 | 1 | isextended | Bool | 1 if an
extension sparse header follows, 0 otherwise. |
483 | 12 | realsize | Number | Real size of the file. |
Each of sparse_header
object at offset 386 describes a single
data chunk. It has the following structure:
Offset | Size | Data type | Contents |
---|---|---|---|
0 | 12 | Number | Offset of the beginning of the chunk. |
12 | 12 | Number | Size of the chunk. |
If the member contains more than four chunks, the isextended
field of the header has the value 1
and the main header is
followed by one or more extension headers. Each such header has
the following structure:
Offset | Size | Name | Data type | Contents |
---|---|---|---|---|
0 | 21 | sp | sparse_header | (21 entries) File map. |
504 | 1 | isextended | Bool | 1 if an
extension sparse header follows, or 0 otherwise. |
A header with isextended=0
ends the map.
[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on August 23, 2023 using texi2html 5.0.