Blame libarchive/archive_read_filter.3

Packit 08bd4c
.\" Copyright (c) 2003-2011 Tim Kientzle
Packit 08bd4c
.\" All rights reserved.
Packit 08bd4c
.\"
Packit 08bd4c
.\" Redistribution and use in source and binary forms, with or without
Packit 08bd4c
.\" modification, are permitted provided that the following conditions
Packit 08bd4c
.\" are met:
Packit 08bd4c
.\" 1. Redistributions of source code must retain the above copyright
Packit 08bd4c
.\"    notice, this list of conditions and the following disclaimer.
Packit 08bd4c
.\" 2. Redistributions in binary form must reproduce the above copyright
Packit 08bd4c
.\"    notice, this list of conditions and the following disclaimer in the
Packit 08bd4c
.\"    documentation and/or other materials provided with the distribution.
Packit 08bd4c
.\"
Packit 08bd4c
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
Packit 08bd4c
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Packit 08bd4c
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
Packit 08bd4c
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
Packit 08bd4c
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Packit 08bd4c
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
Packit 08bd4c
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
Packit 08bd4c
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
Packit 08bd4c
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
Packit 08bd4c
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
Packit 08bd4c
.\" SUCH DAMAGE.
Packit 08bd4c
.\"
Packit 08bd4c
.\" $FreeBSD$
Packit 08bd4c
.\"
Packit 08bd4c
.Dd August 14, 2014
Packit 08bd4c
.Dt ARCHIVE_READ_FILTER 3
Packit 08bd4c
.Os
Packit 08bd4c
.Sh NAME
Packit 08bd4c
.Nm archive_read_support_filter_all ,
Packit 08bd4c
.Nm archive_read_support_filter_bzip2 ,
Packit 08bd4c
.Nm archive_read_support_filter_compress ,
Packit 08bd4c
.Nm archive_read_support_filter_gzip ,
Packit 08bd4c
.Nm archive_read_support_filter_lz4 ,
Packit 08bd4c
.Nm archive_read_support_filter_lzma ,
Packit 08bd4c
.Nm archive_read_support_filter_none ,
Packit 08bd4c
.Nm archive_read_support_filter_rpm ,
Packit 08bd4c
.Nm archive_read_support_filter_uu ,
Packit 08bd4c
.Nm archive_read_support_filter_xz ,
Packit 08bd4c
.Nm archive_read_support_filter_program ,
Packit 08bd4c
.Nm archive_read_support_filter_program_signature
Packit 08bd4c
.Nd functions for reading streaming archives
Packit 08bd4c
.\"
Packit 08bd4c
.Sh LIBRARY
Packit 08bd4c
Streaming Archive Library (libarchive, -larchive)
Packit 08bd4c
.Sh SYNOPSIS
Packit 08bd4c
.In archive.h
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_all "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_bzip2 "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_compress "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_grzip "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_gzip "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_lrzip "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_lz4 "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_lzma "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_lzop "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_none "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_rpm "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_uu "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fn archive_read_support_filter_xz "struct archive *"
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fo archive_read_support_filter_program
Packit 08bd4c
.Fa "struct archive *"
Packit 08bd4c
.Fa "const char *cmd"
Packit 08bd4c
.Fc
Packit 08bd4c
.Ft int
Packit 08bd4c
.Fo archive_read_support_filter_program_signature
Packit 08bd4c
.Fa "struct archive *"
Packit 08bd4c
.Fa "const char *cmd"
Packit 08bd4c
.Fa "const void *signature"
Packit 08bd4c
.Fa "size_t signature_length"
Packit 08bd4c
.Fc
Packit 08bd4c
.\"
Packit 08bd4c
.Sh DESCRIPTION
Packit 08bd4c
.Bl -tag -compact -width indent
Packit 08bd4c
.It Xo
Packit 08bd4c
.Fn archive_read_support_filter_bzip2 ,
Packit 08bd4c
.Fn archive_read_support_filter_compress ,
Packit 08bd4c
.Fn archive_read_support_filter_grzip ,
Packit 08bd4c
.Fn archive_read_support_filter_gzip ,
Packit 08bd4c
.Fn archive_read_support_filter_lrzip ,
Packit 08bd4c
.Fn archive_read_support_filter_lz4 ,
Packit 08bd4c
.Fn archive_read_support_filter_lzma ,
Packit 08bd4c
.Fn archive_read_support_filter_lzop ,
Packit 08bd4c
.Fn archive_read_support_filter_none ,
Packit 08bd4c
.Fn archive_read_support_filter_rpm ,
Packit 08bd4c
.Fn archive_read_support_filter_uu ,
Packit 08bd4c
.Fn archive_read_support_filter_xz
Packit 08bd4c
.Xc
Packit 08bd4c
Enables auto-detection code and decompression support for the
Packit 08bd4c
specified compression.
Packit 08bd4c
These functions may fall back on external programs if an appropriate
Packit 08bd4c
library was not available at build time.
Packit 08bd4c
Decompression using an external program is usually slower than
Packit 08bd4c
decompression through built-in libraries.
Packit 08bd4c
Note that
Packit 08bd4c
.Dq none
Packit 08bd4c
is always enabled by default.
Packit 08bd4c
.It Fn archive_read_support_filter_all
Packit 08bd4c
Enables all available decompression filters.
Packit 08bd4c
.It Fn archive_read_support_filter_program
Packit 08bd4c
Data is fed through the specified external program before being dearchived.
Packit 08bd4c
Note that this disables automatic detection of the compression format,
Packit 08bd4c
so it makes no sense to specify this in conjunction with any other
Packit 08bd4c
decompression option.
Packit 08bd4c
.It Fn archive_read_support_filter_program_signature
Packit 08bd4c
This feeds data through the specified external program
Packit 08bd4c
but only if the initial bytes of the data match the specified
Packit 08bd4c
signature value.
Packit 08bd4c
.El
Packit 08bd4c
.\"
Packit 08bd4c
.\". Sh EXAMPLE
Packit 08bd4c
.\"
Packit 08bd4c
.Sh RETURN VALUES
Packit 08bd4c
These functions return
Packit 08bd4c
.Cm ARCHIVE_OK
Packit 08bd4c
if the compression is fully supported,
Packit 08bd4c
.Cm ARCHIVE_WARN
Packit 08bd4c
if the compression is supported only through an external program.
Packit 08bd4c
.Pp
Packit 08bd4c
.Fn archive_read_support_filter_none
Packit 08bd4c
always succeeds.
Packit 08bd4c
.\"
Packit 08bd4c
.Sh ERRORS
Packit 08bd4c
Detailed error codes and textual descriptions are available from the
Packit 08bd4c
.Fn archive_errno
Packit 08bd4c
and
Packit 08bd4c
.Fn archive_error_string
Packit 08bd4c
functions.
Packit 08bd4c
.\"
Packit 08bd4c
.Sh SEE ALSO
Packit 08bd4c
.Xr libarchive 3 ,
Packit 08bd4c
.Xr archive_read 3 ,
Packit 08bd4c
.Xr archive_read_data 3 ,
Packit 08bd4c
.Xr archive_read_format 3 ,
Packit 08bd4c
.Xr archive_read_format 3