NAME
zip_source_zip —
create data source
from zip file
LIBRARY
libzip (-lzip)
SYNOPSIS
#include <zip.h>
zip_source_t *
zip_source_zip(
zip_t
*archive,
zip_t
*srcarchive,
zip_uint64_t
srcidx,
zip_flags_t
flags,
zip_uint64_t
start,
zip_int64_t
len);
DESCRIPTION
The function
zip_source_zip() creates a zip source from a file
in a zip archive. The
srcarchive argument is the (open)
zip archive containing the source zip file at index
srcidx.
len bytes from offset
start will be used in the zip_source. If
len is 0 or -1, the rest of the file, starting from
start, is used. If
start is zero
and
len is -1, the whole file will be copied without
decompressing it.
Supported flags are:
-
-
ZIP_FL_UNCHANGED
- Try to get the original data without any changes that may
have been made to srcarchive after opening it.
-
-
ZIP_FL_RECOMPRESS
- When adding the data from srcarchive,
re-compress it using the current settings instead of copying the
compressed data.
RETURN VALUES
Upon successful completion, the created source is returned. Otherwise,
NULL
is returned and the error code in
archive is set to indicate the error.
ERRORS
zip_source_zip() fails if:
-
-
- [
ZIP_ER_CHANGED
]
- Unchanged data was requested, but it is not available.
-
-
- [
ZIP_ER_INVAL
]
- srcarchive,
srcidx, start, or
len are invalid.
-
-
- [
ZIP_ER_MEMORY
]
- Required memory could not be allocated.
Additionally, it can return all error codes from
zip_stat_index() and
zip_fopen_index().
SEE ALSO
libzip(3),
zip_add(3),
zip_replace(3),
zip_source(3)
HISTORY
zip_source_zip() was added in libzip 1.0.
AUTHORS
Dieter Baron
<
dillo@nih.at> and
Thomas Klausner
<
tk@giga.or.at>