[tor-commits] [tor/master] Fix even more dead code and resource leaks in the unit tests
nickm at torproject.org
nickm at torproject.org
Mon Feb 11 20:25:09 UTC 2013
commit 52263b0dda85632ea1deb0f05a83a39d4876f3ab
Author: Nick Mathewson <nickm at torproject.org>
Date: Mon Feb 11 15:20:20 2013 -0500
Fix even more dead code and resource leaks in the unit tests
Found by coverity
---
src/test/bench.c | 8 ++++++--
src/test/test_replay.c | 6 ------
src/test/test_util.c | 3 ++-
3 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/src/test/bench.c b/src/test/bench.c
index 18a5154..5a8d21d 100644
--- a/src/test/bench.c
+++ b/src/test/bench.c
@@ -124,8 +124,10 @@ bench_onion_TAP(void)
key = crypto_pk_new();
key2 = crypto_pk_new();
- crypto_pk_generate_key_with_bits(key, 1024);
- crypto_pk_generate_key_with_bits(key2, 1024);
+ if (crypto_pk_generate_key_with_bits(key, 1024) < 0)
+ goto done;
+ if (crypto_pk_generate_key_with_bits(key2, 1024) < 0)
+ goto done;
reset_perftime();
start = perftime();
@@ -171,7 +173,9 @@ bench_onion_TAP(void)
printf("Client-side, part 2: %f usec.\n",
NANOCOUNT(start, end, iters)/1e3);
+ done:
crypto_pk_free(key);
+ crypto_pk_free(key2);
}
#ifdef CURVE25519_ENABLED
diff --git a/src/test/test_replay.c b/src/test/test_replay.c
index be48df1..de841ad 100644
--- a/src/test/test_replay.c
+++ b/src/test/test_replay.c
@@ -24,7 +24,6 @@ test_replaycache_alloc(void)
r = replaycache_new(600, 300);
test_assert(r != NULL);
- if (!r) goto done;
done:
if (r) replaycache_free(r);
@@ -40,7 +39,6 @@ test_replaycache_miss(void)
r = replaycache_new(600, 300);
test_assert(r != NULL);
- if (!r) goto done;
result =
replaycache_add_and_test_internal(1200, r, test_buffer,
@@ -61,7 +59,6 @@ test_replaycache_hit(void)
r = replaycache_new(600, 300);
test_assert(r != NULL);
- if (!r) goto done;
result =
replaycache_add_and_test_internal(1200, r, test_buffer,
@@ -87,7 +84,6 @@ test_replaycache_age(void)
r = replaycache_new(600, 300);
test_assert(r != NULL);
- if (!r) goto done;
result =
replaycache_add_and_test_internal(1200, r, test_buffer,
@@ -119,7 +115,6 @@ test_replaycache_elapsed(void)
r = replaycache_new(600, 300);
test_assert(r != NULL);
- if (!r) goto done;
result =
replaycache_add_and_test_internal(1200, r, test_buffer,
@@ -146,7 +141,6 @@ test_replaycache_noexpire(void)
r = replaycache_new(0, 0);
test_assert(r != NULL);
- if (!r) goto done;
result =
replaycache_add_and_test_internal(1200, r, test_buffer,
diff --git a/src/test/test_util.c b/src/test/test_util.c
index b7a69b2..b17e414 100644
--- a/src/test/test_util.c
+++ b/src/test/test_util.c
@@ -53,7 +53,6 @@ test_util_read_until_eof_impl(const char *fname, size_t file_len,
fd = open(fifo_name, O_RDONLY|O_BINARY);
tt_int_op(fd, >=, 0);
str = read_file_to_str_until_eof(fd, read_limit, &sz);
- close(fd);
tt_assert(str != NULL);
if (read_limit < file_len)
@@ -69,6 +68,8 @@ test_util_read_until_eof_impl(const char *fname, size_t file_len,
tor_free(fifo_name);
tor_free(test_str);
tor_free(str);
+ if (fd >= 0)
+ close(fd);
}
static void
More information about the tor-commits
mailing list