zip_source_begin_write, zip_source_begin_write_cloning
prepare zip source for writing

libzip (-lzip)

#include <zip.h>

zip_source_begin_write(zip_source_t *source);

zip_source_begin_write_cloning(zip_source_t *source, zip_uint64_t offset);

The functions zip_source_begin_write() and zip_source_begin_write_cloning() prepare source for writing. Usually this involves creating temporary files or allocating buffers.

zip_source_begin_write_cloning() preserves the first offset bytes of the original file. This is done efficiently, and writes to source won't overwrite the original data until zip_commit_write() is called.

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

libzip(3), zip_source(3), zip_source_commit_write(3), zip_source_rollback_write(3), zip_source_seek_write(3), zip_source_tell_write(3), zip_source_write(3)

zip_source_begin_write() was added in libzip 1.0.

zip_source_begin_write_cloning() was added in libzip 1.4.0.

Dieter Baron <> and Thomas Klausner <>