4mARCHIVE_READ_FORMAT24m(3) Library Functions Manual 4mARCHIVE_READ_FORMAT24m(3) 1mNAME0m 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_rar5, archive_read_support_format_raw, archive_read_support_format_tar, archive_read_support_format_warc, archive_read_support_format_xar, archive_read_support_format_zip — functions for reading streaming archives 1mLIBRARY0m Streaming Archive Library (libarchive, -larchive) 1mSYNOPSIS0m 1m#include 0m 4mint0m 1marchive_read_support_format_7zip22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_all22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_ar22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_by_code22m(4mstruct24m 4marchive24m 4m*24m, 4mint24m); 4mint0m 1marchive_read_support_format_cab22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_cpio22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_empty22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_iso966022m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_lha22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_mtree22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_rar22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_rar522m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_raw22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_tar22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_warc22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_xar22m(4mstruct24m 4marchive24m 4m*24m); 4mint0m 1marchive_read_support_format_zip22m(4mstruct24m 4marchive24m 4m*24m); 1mDESCRIPTION0m 1marchive_read_support_format_7zip22m(), 1marchive_read_support_format_ar22m(), 1marchive_read_support_format_cab22m(), 1marchive_read_support_format_cpio22m(), 1marchive_read_support_format_iso966022m(), 1marchive_read_support_format_lha22m(), 1marchive_read_support_format_mtree22m(), 1marchive_read_support_format_rar22m(), 1marchive_read_support_format_rar522m(), 1marchive_read_support_format_raw22m(), 1marchive_read_support_format_tar22m(), 1marchive_read_support_format_warc22m(), 1marchive_read_support_format_xar22m(), 1marchive_read_support_format_zip22m() Enables support---including auto-detection code---for the spec‐ ified archive format. For example, 1marchive_read_support_format_tar22m() enables support for a variety of standard tar formats, old-style tar, ustar, pax interchange format, and many common variants. 1marchive_read_support_format_zip22m() enables support for both the streaming and the seeking zip readers, which can separately be enabled by respectively 1marchive_read_support_format_zip_streamable22m() and 1marchive_read_support_format_zip_seekable22m() 1marchive_read_support_format_all22m() Enables support for all available formats except the “raw” for‐ mat (see below). 1marchive_read_support_format_by_code22m() Enables a single format specified by the format code. This can be useful when reading a single archive twice; use 1marchive_format22m() after reading the first time and pass the re‐ sulting code to this function to selectively enable only the necessary format support. Note: In statically-linked executa‐ bles, 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. 1marchive_read_support_format_empty22m() 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. 1marchive_read_support_format_raw22m() 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 1marchive_read_support_format_all22m() in order to avoid erroneous handling of damaged archives. 1mRETURN VALUES0m These functions return 1mARCHIVE_OK 22mon success, or 1mARCHIVE_FATAL22m. 1mERRORS0m Detailed error codes and textual descriptions are available from the 1marchive_errno22m() and 1marchive_error_string22m() functions. 1mSEE ALSO0m 4mtar24m(1), 4marchive_read_data24m(3), 4marchive_read_filter24m(3), 4marchive_read_set_options24m(3), 4marchive_util24m(3), 4mlibarchive24m(3), 4mtar24m(5) 1mBUGS0m Many traditional archiver programs treat empty files as valid empty archives. For example, many implementations of 4mtar24m(1) allow you to ap‐ pend 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. Debian February 2, 2012 4mARCHIVE_READ_FORMAT24m(3)