summaryrefslogtreecommitdiffstats
path: root/lib/libarchive
diff options
context:
space:
mode:
authorkientzle <kientzle@FreeBSD.org>2004-08-07 17:24:50 +0000
committerkientzle <kientzle@FreeBSD.org>2004-08-07 17:24:50 +0000
commit1ce8146dd9103f4dd0c4011cd2351aedea143f4a (patch)
tree2ebf388b77d91c64b6c0c96f93d0921cc72026b1 /lib/libarchive
parente9c1fd002b5b9b41f9048032bb08e39247ee99bf (diff)
downloadFreeBSD-src-1ce8146dd9103f4dd0c4011cd2351aedea143f4a.zip
FreeBSD-src-1ce8146dd9103f4dd0c4011cd2351aedea143f4a.tar.gz
Having implemented read support for it, I now know how to document the
GNU sparse file extension.
Diffstat (limited to 'lib/libarchive')
-rw-r--r--lib/libarchive/tar.516
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/libarchive/tar.5 b/lib/libarchive/tar.5
index 913f277..e8aaa37 100644
--- a/lib/libarchive/tar.5
+++ b/lib/libarchive/tar.5
@@ -604,11 +604,21 @@ On extraction, the list of fragments is collected from the
header (including any extension headers), and the data
is then read and written to the file at appropriate offsets.
.It Va isextended
-If this is set to non-zero, the header will be followed by
-additional
+If this is set to non-zero, the header will be followed by additional
.Dq sparse header
records.
-Each such record contains XXX more details needed XXX
+Each such record contains information about as many as 21 additional
+sparse blocks as shown here:
+.Bd -literal -offset indent
+struct gnu_sparse_header {
+ struct {
+ char offset[12];
+ char numbytes[12];
+ } sparse[21];
+ char isextended[1];
+ char padding[7];
+};
+.Ed
.It Va realsize
A binary representation of the file's complete size, with a much larger range
than the POSIX file size.
OpenPOWER on IntegriCloud