ARCHIVE_READ_FORMAT
Section: C Library Functions (3)
Page Index
BSD mandoc
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 archives
LIBRARY
Streaming Archive Library (libarchive, -larchive)
SYNOPSIS
In archive.h
Ft int
Fn archive_read_support_format_7zip struct archive *
Ft int
Fn archive_read_support_format_all struct archive *
Ft int
Fn archive_read_support_format_ar struct archive *
Ft int
Fn archive_read_support_format_by_code struct archive * int
Ft int
Fn archive_read_support_format_cab struct archive *
Ft int
Fn archive_read_support_format_cpio struct archive *
Ft int
Fn archive_read_support_format_empty struct archive *
Ft int
Fn archive_read_support_format_iso9660 struct archive *
Ft int
Fn archive_read_support_format_lha struct archive *
Ft int
Fn archive_read_support_format_mtree struct archive *
Ft int
Fn archive_read_support_format_rar struct archive *
Ft int
Fn archive_read_support_format_raw struct archive *
Ft int
Fn archive_read_support_format_tar struct archive *
Ft int
Fn archive_read_support_format_xar struct archive *
Ft int
Fn archive_read_support_format_zip struct archive *
DESCRIPTION
-
Fn archive_read_support_format_7zip ,
Fn archive_read_support_format_ar ,
Fn archive_read_support_format_cab ,
Fn archive_read_support_format_cpio ,
Fn archive_read_support_format_iso9660 ,
Fn archive_read_support_format_lha ,
Fn archive_read_support_format_mtree ,
Fn archive_read_support_format_rar ,
Fn archive_read_support_format_raw ,
Fn archive_read_support_format_tar ,
Fn archive_read_support_format_xar ,
Fn archive_read_support_format_zip
-
- Enables support---including auto-detection code---for the
specified archive format.
For example,
Fn archive_read_support_format_tar
enables support for a variety of standard tar formats, old-style tar,
ustar, pax interchange format, and many common variants.
- Fn archive_read_support_format_all
-
Enables support for all available formats except the
``raw''
format (see below).
- Fn 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
Fn 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 support for every format.
If executable size is a concern, you may wish to avoid
using this function.
- Fn archive_read_support_format_empty
-
Enables support for treating empty files as empty archives.
Because empty files are valid for several different formats,
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.
- Fn 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 archive with a single entry.
The pathname of this entry is
``data''
all other entry fields are unset.
This is not enabled by
Fn 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
Fn archive_errno
and
Fn archive_error_string
functions.
SEE ALSO
tar(1),
archive_read_data3,
archive_read_filter3,
archive_read_set_options3,
archive_util3,
libarchive(3),
tar(5)
BUGS
Many traditional archiver programs treat
empty files as valid empty archives.
For example, many implementations of
tar(1)
allow you to append entries to an empty file.
Of course, it is impossible to determine 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.