mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 21:23:58 +01:00
Fix leaks in test_oom.c
This commit is contained in:
parent
97664cfd2a
commit
504e2000ed
@ -6,6 +6,7 @@
|
||||
#define RELAY_PRIVATE
|
||||
#define BUFFERS_PRIVATE
|
||||
#define CIRCUITLIST_PRIVATE
|
||||
#define CONNECTION_PRIVATE
|
||||
#include "or.h"
|
||||
#include "buffers.h"
|
||||
#include "circuitlist.h"
|
||||
@ -216,6 +217,7 @@ test_oom_streambuf(void *arg)
|
||||
struct timeval tv = { 1389641159, 0 };
|
||||
uint32_t tvms;
|
||||
int i;
|
||||
smartlist_t *edgeconns = smartlist_new();
|
||||
|
||||
(void) arg;
|
||||
|
||||
@ -257,17 +259,21 @@ test_oom_streambuf(void *arg)
|
||||
tor_gettimeofday_cache_set(&tv);
|
||||
ec = dummy_edge_conn_new(c1, CONN_TYPE_EXIT, 1000, 1000);
|
||||
tt_assert(ec);
|
||||
smartlist_add(edgeconns, ec);
|
||||
tv.tv_usec += 10*1000;
|
||||
tor_gettimeofday_cache_set(&tv);
|
||||
ec = dummy_edge_conn_new(c2, CONN_TYPE_AP, 1000, 1000);
|
||||
tt_assert(ec);
|
||||
smartlist_add(edgeconns, ec);
|
||||
tv.tv_usec += 10*1000;
|
||||
tor_gettimeofday_cache_set(&tv);
|
||||
ec = dummy_edge_conn_new(c4, CONN_TYPE_EXIT, 1000, 1000); /* Yes, 4 twice*/
|
||||
tt_assert(ec);
|
||||
smartlist_add(edgeconns, ec);
|
||||
tv.tv_usec += 10*1000;
|
||||
tor_gettimeofday_cache_set(&tv);
|
||||
ec = dummy_edge_conn_new(c4, CONN_TYPE_EXIT, 1000, 1000);
|
||||
smartlist_add(edgeconns, ec);
|
||||
tt_assert(ec);
|
||||
}
|
||||
|
||||
@ -302,6 +308,7 @@ test_oom_streambuf(void *arg)
|
||||
tor_gettimeofday_cache_set(&tv);
|
||||
ec = dummy_edge_conn_new(c4, CONN_TYPE_EXIT, 1000, 1000);
|
||||
tt_assert(ec);
|
||||
smartlist_add(edgeconns, ec);
|
||||
}
|
||||
tt_int_op(buf_get_total_allocation(), ==, 4096*17*2);
|
||||
tt_int_op(circuit_max_queued_item_age(c4, tvms), ==, 1000);
|
||||
@ -337,6 +344,10 @@ test_oom_streambuf(void *arg)
|
||||
circuit_free(c4);
|
||||
circuit_free(c5);
|
||||
|
||||
SMARTLIST_FOREACH(edgeconns, edge_connection_t *, ec,
|
||||
connection_free_(TO_CONN(ec)));
|
||||
smartlist_free(edgeconns);
|
||||
|
||||
UNMOCK(circuit_mark_for_close_);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user