archive_read_format - archive_read_support_format_7zip, archive_read_support_format_all, archive_read_support_format_ar, archive_read_support_format_by_code, archive_read_support_format_cab, archive_read_support_format_cpio, archive_read_support_format_empty, archive_read_support_format_iso9660, archive_read_support_format_lha, archive_read_support_format_mtree, archive_read_support_format_rar, archive_read_support_format_raw, archive_read_support_format_tar, archive_read_support_format_xar, chives
#include <archive.h> int archive_read_support_format_7zip(struct archive *); int archive_read_support_format_all(struct archive *); int archive_read_support_format_ar(struct archive *); int archive_read_support_format_by_code(struct archive *, int); int archive_read_support_format_cab(struct archive *); int archive_read_support_format_cpio(struct archive *); int archive_read_support_format_empty(struct archive *); int archive_read_support_format_iso9660(struct archive *); int archive_read_support_format_lha(struct archive *); int archive_read_support_format_mtree(struct archive *); int archive_read_support_format_rar(struct archive *); int archive_read_support_format_raw(struct archive *); int archive_read_support_format_tar(struct archive *); int archive_read_support_format_xar(struct archive *); int archive_read_support_format_zip(struct archive *);
ARCHIVE_READ_FORMAT(3archive)
NAME
archive_read_support_format_7zip, archive_read_support_format_all,
archive_read_support_format_ar, archive_read_support_format_by_code,
archive_read_support_format_cab, archive_read_support_format_cpio,
archive_read_support_format_empty, archive_read_support_format_iso9660,
archive_read_support_format_lha, archive_read_support_format_mtree,
archive_read_support_format_rar, archive_read_support_format_raw,
archive_read_support_format_tar, archive_read_support_format_xar,
archive_read_support_format_zip - functions for reading streaming ar-
chives
LIBRARY
Streaming Archive Library (libarchive, -larchive)
SYNOPSIS
#include <archive.h>
int
archive_read_support_format_7zip(struct archive *);
int
archive_read_support_format_all(struct archive *);
int
archive_read_support_format_ar(struct archive *);
int
archive_read_support_format_by_code(struct archive *, int);
int
archive_read_support_format_cab(struct archive *);
int
archive_read_support_format_cpio(struct archive *);
int
archive_read_support_format_empty(struct archive *);
int
archive_read_support_format_iso9660(struct archive *);
int
archive_read_support_format_lha(struct archive *);
int
archive_read_support_format_mtree(struct archive *);
int
archive_read_support_format_rar(struct archive *);
int
archive_read_support_format_raw(struct archive *);
int
archive_read_support_format_tar(struct archive *);
int
archive_read_support_format_xar(struct archive *);
int
archive_read_support_format_zip(struct archive *);
DESCRIPTION
archive_read_support_format_7zip(),
archive_read_support_format_ar(),
archive_read_support_format_cab(),
archive_read_support_format_cpio(),
archive_read_support_format_iso9660(),
archive_read_support_format_lha(),
archive_read_support_format_mtree(),
archive_read_support_format_rar(),
archive_read_support_format_raw(),
archive_read_support_format_tar(),
archive_read_support_format_xar(),
archive_read_support_format_zip() Enables support---includ-
ing auto-detection code---for the specified archive format.
For example, archive_read_support_format_tar() enables sup-
port for a variety of standard tar formats, old-style tar,
ustar, pax interchange format, and many common variants.
archive_read_support_format_all()
Enables support for all available formats except the
``raw'' format (see below).
archive_read_support_format_by_code()
Enables a single format specified by the format code. This
can be useful when reading a single archive twice; use
archive_format() after reading the first time and pass the
resulting code to this function to selectively enable only
the necessary format support. Note: In statically-linked
executables, this will cause your program to include sup-
port for every format. If executable size is a concern,
you may wish to avoid using this function.
archive_read_support_format_empty()
Enables support for treating empty files as empty archives.
Because empty files are valid for several different for-
mats, it is not possible to accurately determine a format
for an empty file based purely on contents. So empty files
are treated by libarchive as a distinct format.
archive_read_support_format_raw()
The ``raw'' format handler allows libarchive to be used to
read arbitrary data. It treats any data stream as an ar-
chive with a single entry. The pathname of this entry is
``data ;'' all other entry fields are unset. This is not
enabled by archive_read_support_format_all() in order to
avoid erroneous handling of damaged archives.
RETURN VALUES
These functions return ARCHIVE_OK on success, or ARCHIVE_FATAL.
ERRORS
Detailed error codes and textual descriptions are available from the
archive_errno() and archive_error_string() functions.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+--------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+--------------------+
|Availability | library/libarchive |
+---------------+--------------------+
|Stability | Uncommitted |
+---------------+--------------------+
SEE ALSO
tar(1), archive_read_data(3), archive_read_filter(3), ar-
chive_read_set_options(3), archive_util(3), libarchive(3)
BUGS
Many traditional archiver programs treat empty files as valid empty ar-
chives. For example, many implementations of tar(1) allow you to
append entries to an empty file. Of course, it is impossible to deter-
mine the format of an empty file by inspecting the contents, so this
library treats empty files as having a special ``empty'' format.
Using the ``raw'' handler together with any other handler will often
work but can produce surprising results.
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from
https://github.com/libarchive/libarchive/releases/down-
load/v3.6.1/libarchive-3.6.1.tar.gz.
Further information about this software can be found on the open source
community website at http://www.libarchive.org/.
February 2, 2012
ARCHIVE_READ_FORMAT(3archive)