Blame doc/man/archive_read_format.3

Packit 08bd4c
.TH ARCHIVE_READ_FORMAT 3 "February 2, 2012" ""
Packit 08bd4c
.SH NAME
Packit 08bd4c
.ad l
Packit 08bd4c
\fB\%archive_read_support_format_7zip\fP,
Packit 08bd4c
\fB\%archive_read_support_format_all\fP,
Packit 08bd4c
\fB\%archive_read_support_format_ar\fP,
Packit 08bd4c
\fB\%archive_read_support_format_by_code\fP,
Packit 08bd4c
\fB\%archive_read_support_format_cab\fP,
Packit 08bd4c
\fB\%archive_read_support_format_cpio\fP,
Packit 08bd4c
\fB\%archive_read_support_format_empty\fP,
Packit 08bd4c
\fB\%archive_read_support_format_iso9660\fP,
Packit 08bd4c
\fB\%archive_read_support_format_lha\fP,
Packit 08bd4c
\fB\%archive_read_support_format_mtree\fP,
Packit 08bd4c
\fB\%archive_read_support_format_rar\fP,
Packit 08bd4c
\fB\%archive_read_support_format_raw\fP,
Packit 08bd4c
\fB\%archive_read_support_format_tar\fP,
Packit 08bd4c
\fB\%archive_read_support_format_xar\fP,
Packit 08bd4c
\fB\%archive_read_support_format_zip\fP
Packit 08bd4c
\- functions for reading streaming archives
Packit 08bd4c
.SH LIBRARY
Packit 08bd4c
.ad l
Packit 08bd4c
Streaming Archive Library (libarchive, -larchive)
Packit 08bd4c
.SH SYNOPSIS
Packit 08bd4c
.ad l
Packit 08bd4c
\fB#include <archive.h>\fP
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_7zip\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_all\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_ar\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_by_code\fP(\fI\%struct\ archive\ *\fP, \fI\%int\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_cab\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_cpio\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_empty\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_iso9660\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_lha\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_mtree\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_rar\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_raw\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_tar\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_xar\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.br
Packit 08bd4c
\fIint\fP
Packit 08bd4c
.br
Packit 08bd4c
\fB\%archive_read_support_format_zip\fP(\fI\%struct\ archive\ *\fP);
Packit 08bd4c
.SH DESCRIPTION
Packit 08bd4c
.ad l
Packit 08bd4c
.RS 5
Packit 08bd4c
.TP
Packit 08bd4c
\fB\%archive_read_support_format_7zip\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_ar\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_cab\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_cpio\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_iso9660\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_lha\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_mtree\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_rar\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_raw\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_tar\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_xar\fP(),
Packit 08bd4c
\fB\%archive_read_support_format_zip\fP()
Packit 08bd4c
Enables support---including auto-detection code---for the
Packit 08bd4c
specified archive format.
Packit 08bd4c
For example,
Packit 08bd4c
\fB\%archive_read_support_format_tar\fP()
Packit 08bd4c
enables support for a variety of standard tar formats, old-style tar,
Packit 08bd4c
ustar, pax interchange format, and many common variants.
Packit 08bd4c
.TP
Packit 08bd4c
\fB\%archive_read_support_format_all\fP()
Packit 08bd4c
Enables support for all available formats except the
Packit 08bd4c
``raw''
Packit 08bd4c
format (see below).
Packit 08bd4c
.TP
Packit 08bd4c
\fB\%archive_read_support_format_by_code\fP()
Packit 08bd4c
Enables a single format specified by the format code.
Packit 08bd4c
This can be useful when reading a single archive twice;
Packit 08bd4c
use
Packit 08bd4c
\fB\%archive_format\fP()
Packit 08bd4c
after reading the first time and pass the resulting code
Packit 08bd4c
to this function to selectively enable only the necessary
Packit 08bd4c
format support.
Packit 08bd4c
Note:  In statically-linked executables, this will cause
Packit 08bd4c
your program to include support for every format.
Packit 08bd4c
If executable size is a concern, you may wish to avoid
Packit 08bd4c
using this function.
Packit 08bd4c
.TP
Packit 08bd4c
\fB\%archive_read_support_format_empty\fP()
Packit 08bd4c
Enables support for treating empty files as empty archives.
Packit 08bd4c
Because empty files are valid for several different formats,
Packit 08bd4c
it is not possible to accurately determine a format for
Packit 08bd4c
an empty file based purely on contents.
Packit 08bd4c
So empty files are treated by libarchive as a distinct
Packit 08bd4c
format.
Packit 08bd4c
.TP
Packit 08bd4c
\fB\%archive_read_support_format_raw\fP()
Packit 08bd4c
The
Packit 08bd4c
``raw''
Packit 08bd4c
format handler allows libarchive to be used to read arbitrary data.
Packit 08bd4c
It treats any data stream as an archive with a single entry.
Packit 08bd4c
The pathname of this entry is
Packit 08bd4c
``data ;''
Packit 08bd4c
all other entry fields are unset.
Packit 08bd4c
This is not enabled by
Packit 08bd4c
\fB\%archive_read_support_format_all\fP()
Packit 08bd4c
in order to avoid erroneous handling of damaged archives.
Packit 08bd4c
.RE
Packit 08bd4c
.SH RETURN VALUES
Packit 08bd4c
.ad l
Packit 08bd4c
These functions return
Packit 08bd4c
\fBARCHIVE_OK\fP
Packit 08bd4c
on success, or
Packit 08bd4c
\fBARCHIVE_FATAL\fP.
Packit 08bd4c
.SH ERRORS
Packit 08bd4c
.ad l
Packit 08bd4c
Detailed error codes and textual descriptions are available from the
Packit 08bd4c
\fB\%archive_errno\fP()
Packit 08bd4c
and
Packit 08bd4c
\fB\%archive_error_string\fP()
Packit 08bd4c
functions.
Packit 08bd4c
.SH SEE ALSO
Packit 08bd4c
.ad l
Packit 08bd4c
\fBtar\fP(1),
Packit 08bd4c
\fBlibarchive\fP(3),
Packit 08bd4c
\fBarchive_read_data\fP(3),
Packit 08bd4c
\fBarchive_read_filter\fP(3),
Packit 08bd4c
\fBarchive_read_set_options\fP(3),
Packit 08bd4c
\fBarchive_util\fP(3),
Packit 08bd4c
\fBtar\fP(5)
Packit 08bd4c
.SH BUGS
Packit 08bd4c
.ad l
Packit 08bd4c
Many traditional archiver programs treat
Packit 08bd4c
empty files as valid empty archives.
Packit 08bd4c
For example, many implementations of
Packit 08bd4c
\fBtar\fP(1)
Packit 08bd4c
allow you to append entries to an empty file.
Packit 08bd4c
Of course, it is impossible to determine the format of an empty file
Packit 08bd4c
by inspecting the contents, so this library treats empty files as
Packit 08bd4c
having a special
Packit 08bd4c
``empty''
Packit 08bd4c
format.
Packit 08bd4c
.PP
Packit 08bd4c
Using the
Packit 08bd4c
``raw''
Packit 08bd4c
handler together with any other handler will often work
Packit 08bd4c
but can produce surprising results.