FreeBSD manual
download PDF document: zip_fdopen.3.pdf
ZIP_FDOPEN(3) FreeBSD Library Functions Manual 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
FreeBSD 14.2-RELEASE September 23, 2022 FreeBSD 14.2-RELEASE