summaryrefslogtreecommitdiff
path: root/src/common/compress_zstd.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-08-08 10:03:08 -0400
committerNick Mathewson <nickm@torproject.org>2017-08-08 10:03:08 -0400
commit6121ca16bc83cf74f0c4bc3f71b3150cd18aa43c (patch)
tree00814d8a6981e2765f4b711a70d3e8a0e30b7190 /src/common/compress_zstd.c
parent1168e21b45cb981463fa77a45c2e697bb75d573c (diff)
parentfcf836d239d3545ff02df63d47e1b23b000138e0 (diff)
downloadtor-6121ca16bc83cf74f0c4bc3f71b3150cd18aa43c.tar.gz
tor-6121ca16bc83cf74f0c4bc3f71b3150cd18aa43c.zip
Merge remote-tracking branch 'ahf/bugs/22286' into maint-0.3.1
Diffstat (limited to 'src/common/compress_zstd.c')
-rw-r--r--src/common/compress_zstd.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/common/compress_zstd.c b/src/common/compress_zstd.c
index 94974dec06..5c5026c37d 100644
--- a/src/common/compress_zstd.c
+++ b/src/common/compress_zstd.c
@@ -196,31 +196,39 @@ tor_zstd_compress_new(int compress,
result->u.compress_stream = ZSTD_createCStream();
if (result->u.compress_stream == NULL) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Error while creating Zstandard stream");
goto err;
+ // LCOV_EXCL_STOP
}
retval = ZSTD_initCStream(result->u.compress_stream, preset);
if (ZSTD_isError(retval)) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Zstandard stream initialization error: %s",
ZSTD_getErrorName(retval));
goto err;
+ // LCOV_EXCL_STOP
}
} else {
result->u.decompress_stream = ZSTD_createDStream();
if (result->u.decompress_stream == NULL) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Error while creating Zstandard stream");
goto err;
+ // LCOV_EXCL_STOP
}
retval = ZSTD_initDStream(result->u.decompress_stream);
if (ZSTD_isError(retval)) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Zstandard stream initialization error: %s",
ZSTD_getErrorName(retval));
goto err;
+ // LCOV_EXCL_STOP
}
}
@@ -228,6 +236,7 @@ tor_zstd_compress_new(int compress,
return result;
err:
+ // LCOV_EXCL_START
if (compress) {
ZSTD_freeCStream(result->u.compress_stream);
} else {
@@ -236,6 +245,7 @@ tor_zstd_compress_new(int compress,
tor_free(result);
return NULL;
+ // LCOV_EXCL_STOP
#else // HAVE_ZSTD.
(void)compress;
(void)method;
@@ -303,10 +313,12 @@ tor_zstd_compress_process(tor_zstd_compress_state_t *state,
}
if (ZSTD_isError(retval)) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Zstandard %s didn't finish: %s.",
state->compress ? "compression" : "decompression",
ZSTD_getErrorName(retval));
return TOR_COMPRESS_ERROR;
+ // LCOV_EXCL_STOP
}
if (state->compress && !state->have_called_end) {
@@ -316,9 +328,11 @@ tor_zstd_compress_process(tor_zstd_compress_state_t *state,
*out_len = output.size - output.pos;
if (ZSTD_isError(retval)) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Zstandard compression unable to flush: %s.",
ZSTD_getErrorName(retval));
return TOR_COMPRESS_ERROR;
+ // LCOV_EXCL_STOP
}
// ZSTD_flushStream returns 0 if the frame is done, or >0 if it
@@ -345,10 +359,12 @@ tor_zstd_compress_process(tor_zstd_compress_state_t *state,
*out_len = output.size - output.pos;
if (ZSTD_isError(retval)) {
+ // LCOV_EXCL_START
log_warn(LD_GENERAL, "Zstandard compression unable to write "
"epilogue: %s.",
ZSTD_getErrorName(retval));
return TOR_COMPRESS_ERROR;
+ // LCOV_EXCL_STOP
}
// endStream returns the number of bytes that is needed to write the