"Fossies" - the Fresh Open Source Software Archive

Member "libzip-1.6.0/man/zip_set_file_compression.html" (24 Jan 2020, 7375 Bytes) of package /linux/misc/libzip-1.6.0.tar.xz:

Caution: In this restricted "Fossies" environment the current HTML page may not be correctly presentated and may have some non-functional links. You can here alternatively try to browse the pure source code or just view or download the uninterpreted raw source code. If the rendering is insufficient you may try to find and view the page on the libzip-1.6.0.tar.xz project site itself.


set compression method for file in zip

libzip (-lzip)

#include <zip.h>

zip_set_file_compression(zip_t *archive, zip_uint64_t index, zip_int32_t comp, zip_uint32_t comp_flags);

The zip_set_file_compression() function sets the compression method for the file at position index in the zip archive to comp with the compression method specific comp_flags. The comp is the same as returned by zip_stat(3). For the comp argument, currently only the following values are supported:
default compression; currently the same as ZIP_CM_DEFLATE, but flags are ignored.
Store the file uncompressed.
Compress the file using the bzip2(1) algorithm.
Deflate the file with the zlib(3) algorithm and default options.

NOTE: Only the deflate and store methods can be assumed to be universally supported.

The comp_flags argument defines the compression level, 1 being fastest compression and 9 highest. Allowed values are 0 (which uses the default compression for the algorithm) and 1-9, other values are undefined. Further compression method specific flags might be added over time.

The current compression method for a file in a zip archive can be determined using zip_stat(3).

Upon successful completion 0 is returned. Otherwise, -1 is returned and the error information in archive is set to indicate the error.

zip_set_file_compression() fails if:
Unsupported compression method requested.
index is not a valid file index in archive, or the argument combination is invalid.
Read-only zip file, no changes allowed.

libzip(3), zip_stat(3)

zip_set_file_compression() was added in libzip 0.11.

Dieter Baron <dillo@nih.at> and Thomas Klausner <tk@giga.or.at>
December 18, 2017 NetBSD 9.99.41