L

libdeflate

libdeflate is a general purpose data compression library that provides the deflate compression algorithm.

Name Last Update
examples Loading commit data...
.gitignore Loading commit data...
Makefile.in Loading commit data...
README Loading commit data...
configure Loading commit data...
deflate.c Loading commit data...
deflate.h Loading commit data...
deflate.pc.in Loading commit data...
LIBDEFLATE DATA COMPRESSION LIBRARY

libdeflate is a general purpose data compression library that provides the
deflate compression algorithm. Both the zlib container format and raw deflate
streams are provided.

libdeflate provides a well designed API that is simple and safe to use. There
are no hidden caveats with too small data types leading to truncation and
overflow. In addition to a powerful core API, there are many useful utility
functions that make common tasks trivial. This library strives to use a robust
coding style aiming to reduce bugs both inside the library itself, but
importantly also in uses of the library.

This is the transitional edition of libdeflate that uses zlib.h as a backend.

Application code written for the zlib.h API can be adapted to equivalent code
for the deflate.h API. Exercise caution: The zlib.h API uses suboptimal data
types (such as using unsigned int instead of size_t) and a lot of application
code using zlib contains subtle overflow or 64-bit issues, or even failing to
check for error conditions. Please review for any such defects while porting to
libdeflate and think about security considerations. libdeflate is designed to
avoid these issues and you should do right by using libdeflate robustly.

This library is licensed under the ISC license (see deflate.h) and depends on
your system libz, which is probably under the zlib license.

This is Sortix libdeflate: https://sortix.org/libdeflate/

Sortix libz is a modernized zlib fork: https://sortix.org/libz/