aboutsummaryrefslogtreecommitdiff
path: root/src/common/compress_zstd.c
AgeCommit message (Collapse)Author
2018-06-21Extract compression functions into a new library.Nick Mathewson
2018-06-20Run rectify_include_paths.pyNick Mathewson
2018-06-20Update copyrights to 2018.Nick Mathewson
2018-06-12Merge branch 'maint-0.3.3'Nick Mathewson
2018-06-12Merge branch 'maint-0.3.2' into maint-0.3.3Nick Mathewson
2018-06-12Merge branch 'maint-0.3.1' into maint-0.3.2Nick Mathewson
2018-06-02Silence unused-const-variable warnings in zstd.h on some gcc versionsteor
Fixes bug 26272; bugfix on 0.3.1.1-alpha.
2018-02-18Use autoconf to check for optional zstd functionality.Nick Mathewson
Fixes a bug in our zstd-static code. Bug not in any released version of Tor.
2018-02-16tor_zstd_format_version shouldn't be built when !HAVE_ZSTDNick Mathewson
Fixes bug 25276; bugfix not in any released Tor.
2018-02-06Add configure option to control ZSTD_STATIC_LINKING_ONLYNick Mathewson
2018-02-06Warn on zstd header/library version mismatchNick Mathewson
If we're going to potentially degrade performance in this case, we may as well tell people so.
2018-02-06Use "static-only" zstd functions to estimate memory usage.Nick Mathewson
These should provide better and more accurate results when we can use them; we fall back to the old approach when we can't.
2018-02-06Enable (safe) use of zstd static-only APIsNick Mathewson
We'll only use these when the compile-time version and the run-time version of the zstd library match. Part of ticket 25162.
2017-12-08Convert the rest of src/common's headers to use FREE_AND_NULLNick Mathewson
2017-09-20Merge branch 'maint-0.3.1'Nick Mathewson
2017-09-20in zstd compression, fix 32 bit buildAndreas Stieger
format '%lu' expects argument of type 'long unsigned int', but argument ... has type 'size_t' Closes ticket 23568.
2017-09-15Run our #else/#endif annotator on our source code.Nick Mathewson
2017-08-08Remove some LCOV_EXCL stuff that I think may be testable after all.Nick Mathewson
This is partial revert on 22286. Also, tweak some log messages to be distinct.
2017-08-08Merge remote-tracking branch 'ahf/bugs/22286' into maint-0.3.1Nick Mathewson
2017-07-14Fix zstd 1.3.0 trouble: Be more respectful of its state machineNick Mathewson
In zstd 1.3.0, once you have called ZSTD_endStream and been told that your putput buffer is full, it really doesn't want you to call ZSTD_compressStream again. ZSTD 1.2.0 didn't seem to mind about this. This patch fixes the issue by making sure never to call ZSTD_endStream if there's any more data on the input buffer to process, by flushing even when we're about to call "endStream", and by never calling "compress" or "flush" after "endStream".
2017-06-16Return TOR_COMPRESS_BUFFER_FULL when zstd has additional inputteor
Fixes #22628.
2017-06-16Remove a redundant conditional in tor_zstd_compress_processteor
Part of #22502
2017-06-16Move a comment to the right place in tor_zstd_compress_processteor
Part of #22502
2017-05-17Add coverage markers in Zstd + LZMA compression backends.Alexander Færøy
See: https://bugs.torproject.org/22286
2017-04-27Fix handling of "final" flag in zstd decompressionNick Mathewson
We were returning "DONE" on truncated input streams, which was not what we wanted.
2017-04-26Fix compilation when lzma or zstd is absentNick Mathewson
2017-04-26Avoid a warning from the use of floating-point in zstdNick Mathewson
Replace "(preset - 0.5) * 1mb" with "preset * 1mb - 0.5 mb", to avoid warning about converting double to size_t.
2017-04-26Approximate memory usage needed for the Zstandard backend.Alexander Færøy
This patch adds support for measuring the approximated memory usage by the individual `tor_zstd_compress_state_t` object instances. See: https://bugs.torproject.org/22066
2017-04-26Remove unused header from the Zstandard compression backend.Alexander Færøy
Since we stopped looking at Zstandard error codes there is no need to include the zstd_errors.h header file anymore.
2017-04-25Whitespace fixes.Nick Mathewson
2017-04-25Merge branch 'unified_compress_squashed'Nick Mathewson
2017-04-25Add a "best compression" flag.Nick Mathewson
2017-04-25Combine all *compress/*uncompress backend function into oneNick Mathewson
Since we have a streaming API for each compression backend, we don't need a non-streaming API for each: we can build a common non-streaming API at the front-end.
2017-04-25Use atomic counters for compressor allocation.Nick Mathewson
2017-04-25Remove `tor_compress_memory_level()`.Alexander Færøy
This patch splits up `tor_compress_memory_level()` into static functions in the individual compression backends, which allows us to tune the values per compression backend rather than globally. See: https://bugs.torproject.org/21662
2017-04-25Add API entry-point for getting compression method version numbers.Alexander Færøy
This patch adds `tor_compress_version_str()` and `tor_compress_header_version_str()` to get the version strings of the different compression schema providers. Both functions returns `NULL` in case a given `compress_method_t` is unknown or unsupported. See: https://bugs.torproject.org/21662
2017-04-25Add function to check if a given compression method is supported.Alexander Færøy
This patch adds support for checking if a given `compress_method_t` is supported by the currently running Tor instance using `tor_compress_supports_method()`. See: https://bugs.torproject.org/21662
2017-04-25Add Zstandard support.Alexander Færøy
See: https://bugs.torproject.org/21662