[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

D.0.1 Old GNU Format

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 by Sergey Poznyakoff on October, 20 2013 using texi2html 1.78.