ZIP_FDOPEN(3) Introduction to Library Functions ZIP_FDOPEN(3)
NAME
zip_fdopen - open zip archive using open file descriptor
LIBRARY
libzip (-lzip)
SYNOPSIS
#include <zip.h> zip_t * zip_fdopen(
int fd,
int flags,
int *errorp);
DESCRIPTION
The zip archive specified by the open file descriptor
fd is opened and
a pointer to a
struct zip, used to manipulate the archive, is returned.
In contrast to
zip_open(3), using
zip_fdopen the archive can only be
opened in read-only mode. The
fd argument may not be used any longer
after calling
zip_fdopen. The
flags are specified by
or'ing the
following values, or 0 for none of them.
ZIP_CHECKCONS Perform additional stricter consistency checks on
the archive, and error if they fail.
If an error occurs and
errorp is non-NULL, it will be set to the
corresponding error code.
RETURN VALUES
Upon successful completion
zip_fdopen() returns a
struct zip pointer,
and
fd should not be used any longer, nor passed to
close(2).
Otherwise, NULL is returned and
*errorp is set to indicate the error.
In the error case,
fd remains unchanged.
ERRORS
The file specified by
fd is prepared for use by
libzip(3) unless:
[ZIP_ER_INCONS] Inconsistencies were found in the file specified by
path. This error is often caused by specifying
ZIP_CHECKCONS but can also happen without it.
[ZIP_ER_INVAL] The
flags argument is invalid. Not all
zip_open(3) flags are allowed for
zip_fdopen, see
DESCRIPTION.
[ZIP_ER_MEMORY] Required memory could not be allocated.
[ZIP_ER_NOZIP] The file specified by
fd is not a zip archive.
[ZIP_ER_OPEN] The file specified by
fd could not be prepared for
use by
libzip(3).
[ZIP_ER_OPNOTSUPP]
This functionality has been disabled at compile
time.
[ZIP_ER_READ] A read error occurred; see
errno for details.
[ZIP_ER_SEEK] The file specified by
fd does not allow seeks.
SEE ALSO
libzip(3),
zip_close(3),
zip_error_strerror(3),
zip_open(3)HISTORY
zip_fdopen() was added in libzip 1.0.
AUTHORS
Dieter Baron <
dillo@nih.at> and Thomas Klausner <
wiz@gatalith.at>
illumos September 23, 2022 illumos