NAME¶
zip_fdopen - open zip archive using open file descriptor
LIBRARY¶
libzip (-lzip)
SYNOPSIS¶
#include <zip.h>
struct zip *
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_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_to_str(3),
zip_open(3)
AUTHORS¶
Dieter Baron <
dillo@nih.at> and Thomas Klausner <
tk@giga.or.at>