A C library for reading, creating, and modifying zip archives.
Clone or download
dillof Merge pull request #71 from shahms/double-free
Remove inconsistent zip_source_free for zero-length files
Latest commit 6815be7 Nov 5, 2018
Failed to load latest commit information.
docs Add AES Coding tips from Winzip. Dec 2, 2016
examples Format using clang-format. Jan 15, 2018
lib Remove inconsistent zip_source_free for zero-length files Oct 31, 2018
man regen Sep 29, 2018
regress Use progname variable for the program name. Sep 29, 2018
src Use progname variable for the program name. Sep 29, 2018
vstudio vsbuild: some cleanups Jun 21, 2017
xcode Update for Xcode 9.3. Apr 4, 2018
.clang-format Format using clang-format. Jan 15, 2018
.gitattributes Remove references to removed files. Apr 11, 2018
.gitignore Ignore all directories starting with build. Dec 8, 2017
.travis.yml Configure travis email notifications. Dec 12, 2017
API-CHANGES.md Improve wording. Dec 8, 2017
AUTHORS Update my email address. Apr 4, 2014
CMakeLists.txt win32: handle missing bcrypt for mingw Sep 26, 2018
FindNettle.cmake Rework crypto library abstraction, add GnuTLS support. Feb 14, 2018
INSTALL.md Be consistent in cryptography framework preference. Sep 26, 2018
LICENSE Completely switch to OpenSSL for AES support. Feb 12, 2018
NEWS.md Bump version to 1.5.1. Apr 11, 2018
README.md README.md: list docs on libzip.org first Jun 21, 2018
THANKS Fix some fd/memory leaks in error cases. Sep 30, 2018
TODO.md TODO: + add seek support for AES-encrypted files Jul 30, 2018
appveyor.yml Add appveyor.yml file Mar 5, 2018
cmake-config.h.in Add HAVE_WINDOWS_CRYPTO to cmake-config.h.in. Sep 26, 2018
cmake-zipconf.h.in Simplify generated zipconf.h by moving logic into CMakeLists.txt. Jan 2, 2018
create-cmake-config.h.in.pl Improve cmake infrastructure. Nov 28, 2013
libzip.pc.in pkg-config: Use Libs.private for link dependencies Apr 3, 2018


This is libzip, a C library for reading, creating, and modifying zip archives. Files can be added from data buffers, files, or compressed data copied directly from other zip archives. Changes made without closing the archive can be reverted. Decryption and encryption of Winzip AES and decryption of legacy PKware encrypted files is supported. The API is documented by man pages.

libzip is fully documented via man pages. HTML versions of the man pages are on libzip.org and in the man directory. You can start with libzip(3), which lists all others. Example source code is in the examples and src subdirectories.

If you have developed an application using libzip, you can find out about API changes and how to adapt your code for them in the included file API-CHANGES.md.

See the INSTALL.md file for installation instructions and dependencies.

If you make a binary distribution, please include a pointer to the distribution site:


The latest version can always be found there. The official repository is at github.

There is a mailing list for developers using libzip. You can subscribe to it by sending a mail with the subject "subscribe libzip-discuss" to minimalist at nih.at. List mail should be sent to libzip-discuss at nih.at. Use this for bug reports or questions.

If you want to reach the authors in private, use libzip@nih.at.

Travis Build Status Appveyor Build status Coverity Status