archive_read_set_filter_option
,
archive_read_set_format_option
,
archive_read_set_option
,
archive_read_set_options
—
functions controlling options for reading
archives
Streaming Archive Library (libarchive, -larchive)
int
archive_read_set_filter_option
(struct
archive *, const char *module,
const char *option, const char
*value);
int
archive_read_set_format_option
(struct
archive *, const char *module,
const char *option, const char
*value);
int
archive_read_set_option
(struct archive
*, const char *module, const
char *option, const char *value);
int
archive_read_set_options
(struct
archive *, const char *options);
These functions provide a way for libarchive clients to configure
specific read modules.
archive_read_set_filter_option
(),
archive_read_set_format_option
()
- Specifies an option that will be passed to currently-registered filters
(including decompression filters) or format readers.
If option and
value are both NULL
, these
functions will do nothing and ARCHIVE_OK
will be
returned. If option is
NULL
but value is not,
these functions will do nothing and
ARCHIVE_FAILED
will be returned.
If module is not
NULL
, option and
value will be provided to the filter or reader
named module. The return value will be that of the
module. If there is no such module,
ARCHIVE_FAILED
will be returned.
If module is
NULL
, option and
value will be provided to every registered module.
If any module returns ARCHIVE_FATAL
, this value
will be returned immediately. Otherwise,
ARCHIVE_OK
will be returned if any module
accepts the option, and ARCHIVE_FAILED
in all
other cases.
archive_read_set_option
()
- Calls
archive_read_set_format_option
(),
then archive_read_set_filter_option
(). If either
function returns ARCHIVE_FATAL
,
ARCHIVE_FATAL
will be returned immediately.
Otherwise, greater of the two values will be returned.
archive_read_set_options
()
- options is a comma-separated list of options. If
options is
NULL
or empty,
ARCHIVE_OK
will be returned immediately.
Calls
archive_read_set_option
()
with each option in turn. If any
archive_read_set_option
() call returns
ARCHIVE_FATAL
,
ARCHIVE_FATAL
will be returned immediately.
Individual options have one of the following forms:
- option=value
- The option/value pair will be provided to every module. Modules that
do not accept an option with this name will ignore it.
- option
- The option will be provided to every module with a value of
“1”.
- !option
- The option will be provided to every module with a NULL value.
- module:option=value,
module:option,
module:!option
- As above, but the corresponding option and value will be provided only
to modules whose name matches module.
- Format cab
-
hdrcharset
- The value is used as a character set name that will be used when
translating file names.
- Format cpio
-
compat-2x
- Libarchive 2.x incorrectly encoded Unicode filenames on some
platforms. This option mimics the libarchive 2.x filename handling so
that such archives can be read correctly.
hdrcharset
- The value is used as a character set name that will be used when
translating file names.
pwb
- When reading a binary CPIO archive, assume that it is in the original
PWB cpio format, and handle file mode bits accordingly. The default is
to assume v7 format.
- Format iso9660
-
joliet
- Support Joliet extensions. Defaults to enabled, use
!joliet
to disable.
rockridge
- Support RockRidge extensions. Defaults to enabled, use
!rockridge
to disable.
- Format lha
-
hdrcharset
- The value is used as a character set name that will be used when
translating file names.
- Format mtree
-
checkfs
- Allow reading information missing from the mtree from the file system.
Disabled by default.
- Format rar
-
hdrcharset
- The value is used as a character set name that will be used when
translating file names.
- Format tar
-
compat-2x
- Libarchive 2.x incorrectly encoded Unicode filenames on some
platforms. This option mimics the libarchive 2.x filename handling so
that such archives can be read correctly.
hdrcharset
- The value is used as a character set name that will be used when
translating file names.
mac-ext
- Support Mac OS metadata extension that records data in special files
beginning with a period and underscore. Defaults to enabled on Mac OS,
disabled on other platforms. Use
!mac-ext
to
disable.
read_concatenated_archives
- Ignore zeroed blocks in the archive, which occurs when multiple tar
archives have been concatenated together. Without this option, only
the contents of the first concatenated archive would be read.
- Format zip
-
compat-2x
- Libarchive 2.x incorrectly encoded Unicode filenames on some
platforms. This option mimics the libarchive 2.x filename handling so
that such archives can be read correctly.
hdrcharset
- The value is used as a character set name that will be used when
translating file names.
ignorecrc32
- Skip the CRC32 check. Mostly used for testing.
mac-ext
- Support Mac OS metadata extension that records data in special files
beginning with a period and underscore. Defaults to enabled on Mac OS,
disabled on other platforms. Use
!mac-ext
to
disable.
Detailed error codes and textual descriptions are available from
the archive_errno
() and
archive_error_string
() functions.