apply ahf's test_assert_null.cocci

This commit is contained in:
Nick Mathewson 2017-08-24 15:55:27 -04:00
parent 047790a253
commit 011d94fb11
36 changed files with 465 additions and 468 deletions

View File

@ -781,7 +781,7 @@ test_geoip(void *arg)
/* Start testing bridge statistics by making sure that we don't output /* Start testing bridge statistics by making sure that we don't output
* bridge stats without initializing them. */ * bridge stats without initializing them. */
s = geoip_format_bridge_stats(now + 86400); s = geoip_format_bridge_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Initialize stats and generate the bridge-stats history string out of /* Initialize stats and generate the bridge-stats history string out of
* the connecting clients added above. */ * the connecting clients added above. */
@ -795,7 +795,7 @@ test_geoip(void *arg)
* string anymore. */ * string anymore. */
geoip_bridge_stats_term(); geoip_bridge_stats_term();
s = geoip_format_bridge_stats(now + 86400); s = geoip_format_bridge_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Stop being a bridge and start being a directory mirror that gathers /* Stop being a bridge and start being a directory mirror that gathers
* directory request statistics. */ * directory request statistics. */
@ -809,7 +809,7 @@ test_geoip(void *arg)
SET_TEST_ADDRESS(100); SET_TEST_ADDRESS(100);
geoip_note_client_seen(GEOIP_CLIENT_NETWORKSTATUS, &addr, NULL, now); geoip_note_client_seen(GEOIP_CLIENT_NETWORKSTATUS, &addr, NULL, now);
s = geoip_format_dirreq_stats(now + 86400); s = geoip_format_dirreq_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Initialize stats, note one connecting client, and generate the /* Initialize stats, note one connecting client, and generate the
* dirreq-stats history string. */ * dirreq-stats history string. */
@ -826,7 +826,7 @@ test_geoip(void *arg)
SET_TEST_ADDRESS(101); SET_TEST_ADDRESS(101);
geoip_note_client_seen(GEOIP_CLIENT_NETWORKSTATUS, &addr, NULL, now); geoip_note_client_seen(GEOIP_CLIENT_NETWORKSTATUS, &addr, NULL, now);
s = geoip_format_dirreq_stats(now + 86400); s = geoip_format_dirreq_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Re-start stats, add a connecting client, reset stats, and make sure /* Re-start stats, add a connecting client, reset stats, and make sure
* that we get an all empty history string. */ * that we get an all empty history string. */
@ -862,7 +862,7 @@ test_geoip(void *arg)
SET_TEST_ADDRESS(100); SET_TEST_ADDRESS(100);
geoip_note_client_seen(GEOIP_CLIENT_CONNECT, &addr, NULL, now); geoip_note_client_seen(GEOIP_CLIENT_CONNECT, &addr, NULL, now);
s = geoip_format_entry_stats(now + 86400); s = geoip_format_entry_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Initialize stats, note one connecting client, and generate the /* Initialize stats, note one connecting client, and generate the
* entry-stats history string. */ * entry-stats history string. */
@ -879,7 +879,7 @@ test_geoip(void *arg)
SET_TEST_ADDRESS(101); SET_TEST_ADDRESS(101);
geoip_note_client_seen(GEOIP_CLIENT_CONNECT, &addr, NULL, now); geoip_note_client_seen(GEOIP_CLIENT_CONNECT, &addr, NULL, now);
s = geoip_format_entry_stats(now + 86400); s = geoip_format_entry_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Re-start stats, add a connecting client, reset stats, and make sure /* Re-start stats, add a connecting client, reset stats, and make sure
* that we get an all empty history string. */ * that we get an all empty history string. */
@ -990,7 +990,7 @@ test_stats(void *arg)
rep_hist_note_exit_stream_opened(80); rep_hist_note_exit_stream_opened(80);
rep_hist_note_exit_bytes(80, 100, 10000); rep_hist_note_exit_bytes(80, 100, 10000);
s = rep_hist_format_exit_stats(now + 86400); s = rep_hist_format_exit_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Initialize stats, note some streams and bytes, and generate history /* Initialize stats, note some streams and bytes, and generate history
* string. */ * string. */
@ -1028,7 +1028,7 @@ test_stats(void *arg)
rep_hist_exit_stats_term(); rep_hist_exit_stats_term();
rep_hist_note_exit_bytes(80, 100, 10000); rep_hist_note_exit_bytes(80, 100, 10000);
s = rep_hist_format_exit_stats(now + 86400); s = rep_hist_format_exit_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Re-start stats, add some bytes, reset stats, and see what history we /* Re-start stats, add some bytes, reset stats, and see what history we
* get when observing no streams or bytes at all. */ * get when observing no streams or bytes at all. */
@ -1047,7 +1047,7 @@ test_stats(void *arg)
* conn stats without initializing them. */ * conn stats without initializing them. */
rep_hist_note_or_conn_bytes(1, 20, 400, now); rep_hist_note_or_conn_bytes(1, 20, 400, now);
s = rep_hist_format_conn_stats(now + 86400); s = rep_hist_format_conn_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Initialize stats, note bytes, and generate history string. */ /* Initialize stats, note bytes, and generate history string. */
rep_hist_conn_stats_init(now); rep_hist_conn_stats_init(now);
@ -1064,7 +1064,7 @@ test_stats(void *arg)
rep_hist_conn_stats_term(); rep_hist_conn_stats_term();
rep_hist_note_or_conn_bytes(2, 400000, 30000, now + 15); rep_hist_note_or_conn_bytes(2, 400000, 30000, now + 15);
s = rep_hist_format_conn_stats(now + 86400); s = rep_hist_format_conn_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Re-start stats, add some bytes, reset stats, and see what history we /* Re-start stats, add some bytes, reset stats, and see what history we
* get when observing no bytes at all. */ * get when observing no bytes at all. */
@ -1082,7 +1082,7 @@ test_stats(void *arg)
* stats without initializing them. */ * stats without initializing them. */
rep_hist_add_buffer_stats(2.0, 2.0, 20); rep_hist_add_buffer_stats(2.0, 2.0, 20);
s = rep_hist_format_buffer_stats(now + 86400); s = rep_hist_format_buffer_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Initialize stats, add statistics for a single circuit, and generate /* Initialize stats, add statistics for a single circuit, and generate
* the history string. */ * the history string. */
@ -1117,7 +1117,7 @@ test_stats(void *arg)
rep_hist_buffer_stats_term(); rep_hist_buffer_stats_term();
rep_hist_add_buffer_stats(2.0, 2.0, 20); rep_hist_add_buffer_stats(2.0, 2.0, 20);
s = rep_hist_format_buffer_stats(now + 86400); s = rep_hist_format_buffer_stats(now + 86400);
tt_assert(!s); tt_ptr_op(s, OP_EQ, NULL);
/* Re-start stats, add statistics for one circuit, reset stats, and make /* Re-start stats, add statistics for one circuit, reset stats, and make
* sure that the history has all zeros. */ * sure that the history has all zeros. */

View File

@ -745,7 +745,7 @@ test_address_get_if_addrs_list_internal(void *arg)
results = get_interface_address_list(LOG_ERR, 1); results = get_interface_address_list(LOG_ERR, 1);
tt_assert(results != NULL); tt_ptr_op(results, OP_NE, NULL);
/* When the network is down, a system might not have any non-local /* When the network is down, a system might not have any non-local
* non-multicast addresseses, not even internal ones. * non-multicast addresseses, not even internal ones.
* Unit tests shouldn't fail because of this. */ * Unit tests shouldn't fail because of this. */
@ -776,7 +776,7 @@ test_address_get_if_addrs_list_no_internal(void *arg)
results = get_interface_address_list(LOG_ERR, 0); results = get_interface_address_list(LOG_ERR, 0);
tt_assert(results != NULL); tt_ptr_op(results, OP_NE, NULL);
/* Work even on systems with only internal IPv4 addresses */ /* Work even on systems with only internal IPv4 addresses */
tt_int_op(smartlist_len(results),OP_GE,0); tt_int_op(smartlist_len(results),OP_GE,0);
@ -818,7 +818,7 @@ test_address_get_if_addrs6_list_internal(void *arg)
} }
teardown_capture_of_logs(); teardown_capture_of_logs();
tt_assert(results != NULL); tt_ptr_op(results, OP_NE, NULL);
/* Work even on systems without IPv6 interfaces */ /* Work even on systems without IPv6 interfaces */
tt_int_op(smartlist_len(results),OP_GE,0); tt_int_op(smartlist_len(results),OP_GE,0);
@ -861,7 +861,7 @@ test_address_get_if_addrs6_list_no_internal(void *arg)
} }
teardown_capture_of_logs(); teardown_capture_of_logs();
tt_assert(results != NULL); tt_ptr_op(results, OP_NE, NULL);
/* Work even on systems without IPv6 interfaces */ /* Work even on systems without IPv6 interfaces */
tt_int_op(smartlist_len(results),OP_GE,0); tt_int_op(smartlist_len(results),OP_GE,0);
@ -927,11 +927,11 @@ test_address_get_if_addrs_internal_fail(void *arg)
mock_get_interface_address6_via_udp_socket_hack_fail); mock_get_interface_address6_via_udp_socket_hack_fail);
results1 = get_interface_address6_list(LOG_ERR, AF_INET6, 1); results1 = get_interface_address6_list(LOG_ERR, AF_INET6, 1);
tt_assert(results1 != NULL); tt_ptr_op(results1, OP_NE, NULL);
tt_int_op(smartlist_len(results1),OP_EQ,0); tt_int_op(smartlist_len(results1),OP_EQ,0);
results2 = get_interface_address_list(LOG_ERR, 1); results2 = get_interface_address_list(LOG_ERR, 1);
tt_assert(results2 != NULL); tt_ptr_op(results2, OP_NE, NULL);
tt_int_op(smartlist_len(results2),OP_EQ,0); tt_int_op(smartlist_len(results2),OP_EQ,0);
rv = get_interface_address6(LOG_ERR, AF_INET6, &ipv6_addr); rv = get_interface_address6(LOG_ERR, AF_INET6, &ipv6_addr);
@ -961,11 +961,11 @@ test_address_get_if_addrs_no_internal_fail(void *arg)
mock_get_interface_address6_via_udp_socket_hack_fail); mock_get_interface_address6_via_udp_socket_hack_fail);
results1 = get_interface_address6_list(LOG_ERR, AF_INET6, 0); results1 = get_interface_address6_list(LOG_ERR, AF_INET6, 0);
tt_assert(results1 != NULL); tt_ptr_op(results1, OP_NE, NULL);
tt_int_op(smartlist_len(results1),OP_EQ,0); tt_int_op(smartlist_len(results1),OP_EQ,0);
results2 = get_interface_address_list(LOG_ERR, 0); results2 = get_interface_address_list(LOG_ERR, 0);
tt_assert(results2 != NULL); tt_ptr_op(results2, OP_NE, NULL);
tt_int_op(smartlist_len(results2),OP_EQ,0); tt_int_op(smartlist_len(results2),OP_EQ,0);
done: done:

View File

@ -86,7 +86,7 @@ channel_note_destroy_not_pending_mock(channel_t *ch,
static const char * static const char *
chan_test_describe_transport(channel_t *ch) chan_test_describe_transport(channel_t *ch)
{ {
tt_assert(ch != NULL); tt_ptr_op(ch, OP_NE, NULL);
done: done:
return "Fake channel for unit tests"; return "Fake channel for unit tests";
@ -100,7 +100,7 @@ chan_test_describe_transport(channel_t *ch)
static void static void
chan_test_channel_dump_statistics_mock(channel_t *chan, int severity) chan_test_channel_dump_statistics_mock(channel_t *chan, int severity)
{ {
tt_assert(chan != NULL); tt_ptr_op(chan, OP_NE, NULL);
(void)severity; (void)severity;
@ -125,7 +125,7 @@ chan_test_channel_flush_from_first_active_circuit_mock(channel_t *chan,
int result = 0, c = 0; int result = 0, c = 0;
packed_cell_t *cell = NULL; packed_cell_t *cell = NULL;
tt_assert(chan != NULL); tt_ptr_op(chan, OP_NE, NULL);
if (test_target_cmux != NULL && if (test_target_cmux != NULL &&
test_target_cmux == chan->cmux) { test_target_cmux == chan->cmux) {
while (c <= max && test_cmux_cells > 0) { while (c <= max && test_cmux_cells > 0) {
@ -154,7 +154,7 @@ chan_test_circuitmux_num_cells_mock(circuitmux_t *cmux)
{ {
unsigned int result = 0; unsigned int result = 0;
tt_assert(cmux != NULL); tt_ptr_op(cmux, OP_NE, NULL);
if (cmux != NULL) { if (cmux != NULL) {
if (cmux == test_target_cmux) { if (cmux == test_target_cmux) {
result = test_cmux_cells; result = test_cmux_cells;
@ -193,7 +193,7 @@ chan_test_cell_handler(channel_t *ch,
static void static void
chan_test_dumpstats(channel_t *ch, int severity) chan_test_dumpstats(channel_t *ch, int severity)
{ {
tt_assert(ch != NULL); tt_ptr_op(ch, OP_NE, NULL);
(void)severity; (void)severity;
@ -286,7 +286,7 @@ chan_test_get_overhead_estimate(channel_t *ch)
static int static int
chan_test_is_canonical(channel_t *ch, int req) chan_test_is_canonical(channel_t *ch, int req)
{ {
tt_assert(ch != NULL); tt_ptr_op(ch, OP_NE, NULL);
tt_assert(req == 0 || req == 1); tt_assert(req == 0 || req == 1);
done: done:
@ -380,7 +380,7 @@ chan_test_write_var_cell(channel_t *ch, var_cell_t *var_cell)
void void
make_fake_cell(cell_t *c) make_fake_cell(cell_t *c)
{ {
tt_assert(c != NULL); tt_ptr_op(c, OP_NE, NULL);
c->circ_id = 1; c->circ_id = 1;
c->command = CELL_RELAY; c->command = CELL_RELAY;
@ -397,7 +397,7 @@ make_fake_cell(cell_t *c)
void void
make_fake_var_cell(var_cell_t *c) make_fake_var_cell(var_cell_t *c)
{ {
tt_assert(c != NULL); tt_ptr_op(c, OP_NE, NULL);
c->circ_id = 1; c->circ_id = 1;
c->command = CELL_VERSIONS; c->command = CELL_VERSIONS;
@ -1822,7 +1822,7 @@ test_channel_id_map(void *arg)
ch = channel_next_with_rsa_identity(ch); ch = channel_next_with_rsa_identity(ch);
tt_assert(ch == chan[2] || ch == chan[4] || ch == chan[5]); tt_assert(ch == chan[2] || ch == chan[4] || ch == chan[5]);
ch = channel_next_with_rsa_identity(ch); ch = channel_next_with_rsa_identity(ch);
tt_assert(ch == NULL); tt_ptr_op(ch, OP_EQ, NULL);
/* As above, but with zero Ed25519 ID (meaning "any ID") */ /* As above, but with zero Ed25519 ID (meaning "any ID") */
tt_ptr_op(chan[0], OP_EQ, tt_ptr_op(chan[0], OP_EQ,
@ -1838,7 +1838,7 @@ test_channel_id_map(void *arg)
ch = channel_next_with_rsa_identity(ch); ch = channel_next_with_rsa_identity(ch);
tt_assert(ch == chan[2] || ch == chan[4] || ch == chan[5]); tt_assert(ch == chan[2] || ch == chan[4] || ch == chan[5]);
ch = channel_next_with_rsa_identity(ch); ch = channel_next_with_rsa_identity(ch);
tt_assert(ch == NULL); tt_ptr_op(ch, OP_EQ, NULL);
/* Lookup nonexistent RSA identity */ /* Lookup nonexistent RSA identity */
tt_ptr_op(NULL, OP_EQ, tt_ptr_op(NULL, OP_EQ,

View File

@ -72,7 +72,7 @@ test_channeltls_create(void *arg)
/* Try connecting */ /* Try connecting */
ch = channel_tls_connect(&test_addr, 567, test_digest, NULL); ch = channel_tls_connect(&test_addr, 567, test_digest, NULL);
tt_assert(ch != NULL); tt_ptr_op(ch, OP_NE, NULL);
done: done:
if (ch) { if (ch) {
@ -121,7 +121,7 @@ test_channeltls_num_bytes_queued(void *arg)
/* Try connecting */ /* Try connecting */
ch = channel_tls_connect(&test_addr, 567, test_digest, NULL); ch = channel_tls_connect(&test_addr, 567, test_digest, NULL);
tt_assert(ch != NULL); tt_ptr_op(ch, OP_NE, NULL);
/* /*
* Next, we have to test ch->num_bytes_queued, which is * Next, we have to test ch->num_bytes_queued, which is
@ -132,7 +132,7 @@ test_channeltls_num_bytes_queued(void *arg)
tt_assert(ch->num_bytes_queued != NULL); tt_assert(ch->num_bytes_queued != NULL);
tlschan = BASE_CHAN_TO_TLS(ch); tlschan = BASE_CHAN_TO_TLS(ch);
tt_assert(tlschan != NULL); tt_ptr_op(tlschan, OP_NE, NULL);
if (TO_CONN(tlschan->conn)->outbuf == NULL) { if (TO_CONN(tlschan->conn)->outbuf == NULL) {
/* We need an outbuf to make sure buf_datalen() gets called */ /* We need an outbuf to make sure buf_datalen() gets called */
fake_outbuf = 1; fake_outbuf = 1;
@ -206,11 +206,11 @@ test_channeltls_overhead_estimate(void *arg)
/* Try connecting */ /* Try connecting */
ch = channel_tls_connect(&test_addr, 567, test_digest, NULL); ch = channel_tls_connect(&test_addr, 567, test_digest, NULL);
tt_assert(ch != NULL); tt_ptr_op(ch, OP_NE, NULL);
/* First case: silly low ratios should get clamped to 1.0 */ /* First case: silly low ratios should get clamped to 1.0 */
tlschan = BASE_CHAN_TO_TLS(ch); tlschan = BASE_CHAN_TO_TLS(ch);
tt_assert(tlschan != NULL); tt_ptr_op(tlschan, OP_NE, NULL);
tlschan->conn->bytes_xmitted = 128; tlschan->conn->bytes_xmitted = 128;
tlschan->conn->bytes_xmitted_by_tls = 64; tlschan->conn->bytes_xmitted_by_tls = 64;
r = ch->get_overhead_estimate(ch); r = ch->get_overhead_estimate(ch);
@ -273,10 +273,10 @@ tlschan_connection_or_connect_mock(const tor_addr_t *addr,
or_connection_t *result = NULL; or_connection_t *result = NULL;
(void) ed_id; // XXXX Not yet used. (void) ed_id; // XXXX Not yet used.
tt_assert(addr != NULL); tt_ptr_op(addr, OP_NE, NULL);
tt_uint_op(port, OP_NE, 0); tt_uint_op(port, OP_NE, 0);
tt_assert(digest != NULL); tt_ptr_op(digest, OP_NE, NULL);
tt_assert(tlschan != NULL); tt_ptr_op(tlschan, OP_NE, NULL);
/* Make a fake orconn */ /* Make a fake orconn */
result = tor_malloc_zero(sizeof(*result)); result = tor_malloc_zero(sizeof(*result));
@ -301,11 +301,11 @@ tlschan_fake_close_method(channel_t *chan)
{ {
channel_tls_t *tlschan = NULL; channel_tls_t *tlschan = NULL;
tt_assert(chan != NULL); tt_ptr_op(chan, OP_NE, NULL);
tt_int_op(chan->magic, OP_EQ, TLS_CHAN_MAGIC); tt_int_op(chan->magic, OP_EQ, TLS_CHAN_MAGIC);
tlschan = BASE_CHAN_TO_TLS(chan); tlschan = BASE_CHAN_TO_TLS(chan);
tt_assert(tlschan != NULL); tt_ptr_op(tlschan, OP_NE, NULL);
/* Just free the fake orconn */ /* Just free the fake orconn */
tor_free(tlschan->conn->base_.address); tor_free(tlschan->conn->base_.address);
@ -320,7 +320,7 @@ tlschan_fake_close_method(channel_t *chan)
static int static int
tlschan_is_local_addr_mock(const tor_addr_t *addr) tlschan_is_local_addr_mock(const tor_addr_t *addr)
{ {
tt_assert(addr != NULL); tt_ptr_op(addr, OP_NE, NULL);
done: done:
return tlschan_local; return tlschan_local;

View File

@ -48,8 +48,8 @@ test_cmux_destroy_cell_queue(void *arg)
ch->wide_circ_ids = 1; ch->wide_circ_ids = 1;
circ = circuitmux_get_first_active_circuit(cmux, &cq); circ = circuitmux_get_first_active_circuit(cmux, &cq);
tt_assert(!circ); tt_ptr_op(circ, OP_EQ, NULL);
tt_assert(!cq); tt_ptr_op(cq, OP_EQ, NULL);
circuitmux_append_destroy_cell(ch, cmux, 100, 10); circuitmux_append_destroy_cell(ch, cmux, 100, 10);
circuitmux_append_destroy_cell(ch, cmux, 190, 6); circuitmux_append_destroy_cell(ch, cmux, 190, 6);
@ -58,7 +58,7 @@ test_cmux_destroy_cell_queue(void *arg)
tt_int_op(circuitmux_num_cells(cmux), OP_EQ, 3); tt_int_op(circuitmux_num_cells(cmux), OP_EQ, 3);
circ = circuitmux_get_first_active_circuit(cmux, &cq); circ = circuitmux_get_first_active_circuit(cmux, &cq);
tt_assert(!circ); tt_ptr_op(circ, OP_EQ, NULL);
tt_assert(cq); tt_assert(cq);
tt_int_op(cq->n, OP_EQ, 3); tt_int_op(cq->n, OP_EQ, 3);

View File

@ -415,7 +415,7 @@ bad_bridge_line_test(const char *string)
bridge_line_t *bridge_line = parse_bridge_line(string); bridge_line_t *bridge_line = parse_bridge_line(string);
if (bridge_line) if (bridge_line)
TT_FAIL(("%s was supposed to fail, but it didn't.", string)); TT_FAIL(("%s was supposed to fail, but it didn't.", string));
tt_assert(!bridge_line); tt_ptr_op(bridge_line, OP_EQ, NULL);
done: done:
bridge_line_free(bridge_line); bridge_line_free(bridge_line);
@ -523,18 +523,18 @@ test_config_parse_transport_options_line(void *arg)
{ /* too small line */ { /* too small line */
options_sl = get_options_from_transport_options_line("valley", NULL); options_sl = get_options_from_transport_options_line("valley", NULL);
tt_assert(!options_sl); tt_ptr_op(options_sl, OP_EQ, NULL);
} }
{ /* no k=v values */ { /* no k=v values */
options_sl = get_options_from_transport_options_line("hit it!", NULL); options_sl = get_options_from_transport_options_line("hit it!", NULL);
tt_assert(!options_sl); tt_ptr_op(options_sl, OP_EQ, NULL);
} }
{ /* correct line, but wrong transport specified */ { /* correct line, but wrong transport specified */
options_sl = options_sl =
get_options_from_transport_options_line("trebuchet k=v", "rook"); get_options_from_transport_options_line("trebuchet k=v", "rook");
tt_assert(!options_sl); tt_ptr_op(options_sl, OP_EQ, NULL);
} }
{ /* correct -- no transport specified */ { /* correct -- no transport specified */
@ -1420,7 +1420,7 @@ test_config_resolve_my_address(void *arg)
tt_want(n_get_interface_address6 == prev_n_get_interface_address6 + 1); tt_want(n_get_interface_address6 == prev_n_get_interface_address6 + 1);
tt_str_op(method_used,OP_EQ,"INTERFACE"); tt_str_op(method_used,OP_EQ,"INTERFACE");
tt_assert(!hostname_out); tt_ptr_op(hostname_out, OP_EQ, NULL);
tt_int_op(retval, OP_EQ, 0); tt_int_op(retval, OP_EQ, 0);
/* /*

View File

@ -366,12 +366,13 @@ test_conn_get_basic(void *arg)
* its attributes, but get NULL when we supply a different value. */ * its attributes, but get NULL when we supply a different value. */
tt_assert(connection_get_by_global_id(conn->global_identifier) == conn); tt_assert(connection_get_by_global_id(conn->global_identifier) == conn);
tt_assert(connection_get_by_global_id(!conn->global_identifier) == NULL); tt_ptr_op(connection_get_by_global_id(!conn->global_identifier), OP_EQ,
NULL);
tt_assert(connection_get_by_type(conn->type) == conn); tt_assert(connection_get_by_type(conn->type) == conn);
tt_assert(connection_get_by_type(TEST_CONN_TYPE) == conn); tt_assert(connection_get_by_type(TEST_CONN_TYPE) == conn);
tt_assert(connection_get_by_type(!conn->type) == NULL); tt_ptr_op(connection_get_by_type(!conn->type), OP_EQ, NULL);
tt_assert(connection_get_by_type(!TEST_CONN_TYPE) == NULL); tt_ptr_op(connection_get_by_type(!TEST_CONN_TYPE), OP_EQ, NULL);
tt_assert(connection_get_by_type_state(conn->type, conn->state) tt_assert(connection_get_by_type_state(conn->type, conn->state)
== conn); == conn);

View File

@ -200,7 +200,7 @@ test_conscache_cleanup(void *arg)
tt_assert(e_tmp); tt_assert(e_tmp);
tt_assert(consensus_cache_entry_is_mapped(e_tmp)); tt_assert(consensus_cache_entry_is_mapped(e_tmp));
e_tmp = consensus_cache_find_first(cache, "index", "7"); e_tmp = consensus_cache_find_first(cache, "index", "7");
tt_assert(e_tmp == NULL); // not found because pending deletion. tt_ptr_op(e_tmp, OP_EQ, NULL); // not found because pending deletion.
/* Delete the pending-deletion items. */ /* Delete the pending-deletion items. */
consensus_cache_delete_pending(cache, 0); consensus_cache_delete_pending(cache, 0);
@ -212,9 +212,9 @@ test_conscache_cleanup(void *arg)
tt_int_op(n, OP_EQ, 20 - 2); /* 1 entry was deleted; 1 is not-found. */ tt_int_op(n, OP_EQ, 20 - 2); /* 1 entry was deleted; 1 is not-found. */
} }
e_tmp = consensus_cache_find_first(cache, "index", "7"); // refcnt == 1... e_tmp = consensus_cache_find_first(cache, "index", "7"); // refcnt == 1...
tt_assert(e_tmp == NULL); // so deleted. tt_ptr_op(e_tmp, OP_EQ, NULL); // so deleted.
e_tmp = consensus_cache_find_first(cache, "index", "14"); // refcnt == 2 e_tmp = consensus_cache_find_first(cache, "index", "14"); // refcnt == 2
tt_assert(e_tmp == NULL); // not deleted; but not found. tt_ptr_op(e_tmp, OP_EQ, NULL); // not deleted; but not found.
/* Now do lazy unmapping. */ /* Now do lazy unmapping. */
// should do nothing. // should do nothing.

View File

@ -325,8 +325,8 @@ test_consdiffmgr_add(void *arg)
tt_mem_op(body, OP_EQ, "quux", 4); tt_mem_op(body, OP_EQ, "quux", 4);
/* Try looking up another entry, but fail */ /* Try looking up another entry, but fail */
tt_assert(NULL == cdm_cache_lookup_consensus(FLAV_MICRODESC, now-60)); tt_ptr_op(cdm_cache_lookup_consensus(FLAV_MICRODESC, now - 60), OP_EQ, NULL);
tt_assert(NULL == cdm_cache_lookup_consensus(FLAV_NS, now-61)); tt_ptr_op(cdm_cache_lookup_consensus(FLAV_NS, now - 61), OP_EQ, NULL);
done: done:
networkstatus_vote_free(ns_tmp); networkstatus_vote_free(ns_tmp);

View File

@ -31,7 +31,7 @@ test_add_onion_helper_keyarg(void *arg)
tt_assert(pk); tt_assert(pk);
tt_str_op(key_new_alg, OP_EQ, "RSA1024"); tt_str_op(key_new_alg, OP_EQ, "RSA1024");
tt_assert(key_new_blob); tt_assert(key_new_blob);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
/* Test "BEST" key generation (Assumes BEST = RSA1024). */ /* Test "BEST" key generation (Assumes BEST = RSA1024). */
crypto_pk_free(pk); crypto_pk_free(pk);
@ -41,7 +41,7 @@ test_add_onion_helper_keyarg(void *arg)
tt_assert(pk); tt_assert(pk);
tt_str_op(key_new_alg, OP_EQ, "RSA1024"); tt_str_op(key_new_alg, OP_EQ, "RSA1024");
tt_assert(key_new_blob); tt_assert(key_new_blob);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
/* Test discarding the private key. */ /* Test discarding the private key. */
crypto_pk_free(pk); crypto_pk_free(pk);
@ -49,17 +49,17 @@ test_add_onion_helper_keyarg(void *arg)
pk = add_onion_helper_keyarg("NEW:BEST", 1, &key_new_alg, &key_new_blob, pk = add_onion_helper_keyarg("NEW:BEST", 1, &key_new_alg, &key_new_blob,
&err_msg); &err_msg);
tt_assert(pk); tt_assert(pk);
tt_assert(!key_new_alg); tt_ptr_op(key_new_alg, OP_EQ, NULL);
tt_assert(!key_new_blob); tt_ptr_op(key_new_blob, OP_EQ, NULL);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
/* Test generating a invalid key type. */ /* Test generating a invalid key type. */
crypto_pk_free(pk); crypto_pk_free(pk);
pk = add_onion_helper_keyarg("NEW:RSA512", 0, &key_new_alg, &key_new_blob, pk = add_onion_helper_keyarg("NEW:RSA512", 0, &key_new_alg, &key_new_blob,
&err_msg); &err_msg);
tt_assert(!pk); tt_ptr_op(pk, OP_EQ, NULL);
tt_assert(!key_new_alg); tt_ptr_op(key_new_alg, OP_EQ, NULL);
tt_assert(!key_new_blob); tt_ptr_op(key_new_blob, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
/* Test loading a RSA1024 key. */ /* Test loading a RSA1024 key. */
@ -70,9 +70,9 @@ test_add_onion_helper_keyarg(void *arg)
pk2 = add_onion_helper_keyarg(arg_str, 0, &key_new_alg, &key_new_blob, pk2 = add_onion_helper_keyarg(arg_str, 0, &key_new_alg, &key_new_blob,
&err_msg); &err_msg);
tt_assert(pk2); tt_assert(pk2);
tt_assert(!key_new_alg); tt_ptr_op(key_new_alg, OP_EQ, NULL);
tt_assert(!key_new_blob); tt_ptr_op(key_new_blob, OP_EQ, NULL);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_int_op(crypto_pk_cmp_keys(pk, pk2), OP_EQ, 0); tt_int_op(crypto_pk_cmp_keys(pk, pk2), OP_EQ, 0);
/* Test loading a invalid key type. */ /* Test loading a invalid key type. */
@ -81,9 +81,9 @@ test_add_onion_helper_keyarg(void *arg)
tor_asprintf(&arg_str, "RSA512:%s", encoded); tor_asprintf(&arg_str, "RSA512:%s", encoded);
pk = add_onion_helper_keyarg(arg_str, 0, &key_new_alg, &key_new_blob, pk = add_onion_helper_keyarg(arg_str, 0, &key_new_alg, &key_new_blob,
&err_msg); &err_msg);
tt_assert(!pk); tt_ptr_op(pk, OP_EQ, NULL);
tt_assert(!key_new_alg); tt_ptr_op(key_new_alg, OP_EQ, NULL);
tt_assert(!key_new_blob); tt_ptr_op(key_new_blob, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
/* Test loading a invalid key. */ /* Test loading a invalid key. */
@ -94,9 +94,9 @@ test_add_onion_helper_keyarg(void *arg)
tor_asprintf(&arg_str, "RSA1024:%s", encoded); tor_asprintf(&arg_str, "RSA1024:%s", encoded);
pk = add_onion_helper_keyarg(arg_str, 0, &key_new_alg, &key_new_blob, pk = add_onion_helper_keyarg(arg_str, 0, &key_new_alg, &key_new_blob,
&err_msg); &err_msg);
tt_assert(!pk); tt_ptr_op(pk, OP_EQ, NULL);
tt_assert(!key_new_alg); tt_ptr_op(key_new_alg, OP_EQ, NULL);
tt_assert(!key_new_blob); tt_ptr_op(key_new_blob, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
done: done:
@ -159,25 +159,25 @@ test_rend_service_parse_port_config(void *arg)
/* Test "VIRTPORT" only. */ /* Test "VIRTPORT" only. */
cfg = rend_service_parse_port_config("80", sep, &err_msg); cfg = rend_service_parse_port_config("80", sep, &err_msg);
tt_assert(cfg); tt_assert(cfg);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
/* Test "VIRTPORT,TARGET" (Target is port). */ /* Test "VIRTPORT,TARGET" (Target is port). */
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = rend_service_parse_port_config("80,8080", sep, &err_msg); cfg = rend_service_parse_port_config("80,8080", sep, &err_msg);
tt_assert(cfg); tt_assert(cfg);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
/* Test "VIRTPORT,TARGET" (Target is IPv4:port). */ /* Test "VIRTPORT,TARGET" (Target is IPv4:port). */
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = rend_service_parse_port_config("80,192.0.2.1:8080", sep, &err_msg); cfg = rend_service_parse_port_config("80,192.0.2.1:8080", sep, &err_msg);
tt_assert(cfg); tt_assert(cfg);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
/* Test "VIRTPORT,TARGET" (Target is IPv6:port). */ /* Test "VIRTPORT,TARGET" (Target is IPv6:port). */
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = rend_service_parse_port_config("80,[2001:db8::1]:8080", sep, &err_msg); cfg = rend_service_parse_port_config("80,[2001:db8::1]:8080", sep, &err_msg);
tt_assert(cfg); tt_assert(cfg);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = NULL; cfg = NULL;
@ -186,13 +186,13 @@ test_rend_service_parse_port_config(void *arg)
/* Test empty config. */ /* Test empty config. */
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = rend_service_parse_port_config("", sep, &err_msg); cfg = rend_service_parse_port_config("", sep, &err_msg);
tt_assert(!cfg); tt_ptr_op(cfg, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
/* Test invalid port. */ /* Test invalid port. */
tor_free(err_msg); tor_free(err_msg);
cfg = rend_service_parse_port_config("90001", sep, &err_msg); cfg = rend_service_parse_port_config("90001", sep, &err_msg);
tt_assert(!cfg); tt_ptr_op(cfg, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
tor_free(err_msg); tor_free(err_msg);
@ -204,7 +204,7 @@ test_rend_service_parse_port_config(void *arg)
cfg = rend_service_parse_port_config("100 unix:\"/tmp/foo bar\"", cfg = rend_service_parse_port_config("100 unix:\"/tmp/foo bar\"",
" ", &err_msg); " ", &err_msg);
tt_assert(cfg); tt_assert(cfg);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = NULL; cfg = NULL;
@ -213,14 +213,14 @@ test_rend_service_parse_port_config(void *arg)
cfg = rend_service_parse_port_config("100 unix:\"/tmp/foo bar\"", cfg = rend_service_parse_port_config("100 unix:\"/tmp/foo bar\"",
" ", &err_msg); " ", &err_msg);
tt_assert(cfg); tt_assert(cfg);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
rend_service_port_config_free(cfg); rend_service_port_config_free(cfg);
cfg = NULL; cfg = NULL;
/* quoted unix port, missing end quote */ /* quoted unix port, missing end quote */
cfg = rend_service_parse_port_config("100 unix:\"/tmp/foo bar", cfg = rend_service_parse_port_config("100 unix:\"/tmp/foo bar",
" ", &err_msg); " ", &err_msg);
tt_assert(!cfg); tt_ptr_op(cfg, OP_EQ, NULL);
tt_str_op(err_msg, OP_EQ, "Couldn't process address <unix:\"/tmp/foo bar> " tt_str_op(err_msg, OP_EQ, "Couldn't process address <unix:\"/tmp/foo bar> "
"from hidden service configuration"); "from hidden service configuration");
tor_free(err_msg); tor_free(err_msg);
@ -230,7 +230,7 @@ test_rend_service_parse_port_config(void *arg)
cfg = rend_service_parse_port_config("100 foo!!.example.com:9000", cfg = rend_service_parse_port_config("100 foo!!.example.com:9000",
" ", &err_msg); " ", &err_msg);
UNMOCK(tor_addr_lookup); UNMOCK(tor_addr_lookup);
tt_assert(!cfg); tt_ptr_op(cfg, OP_EQ, NULL);
tt_str_op(err_msg, OP_EQ, "Unparseable address in hidden service port " tt_str_op(err_msg, OP_EQ, "Unparseable address in hidden service port "
"configuration."); "configuration.");
tor_free(err_msg); tor_free(err_msg);
@ -238,7 +238,7 @@ test_rend_service_parse_port_config(void *arg)
/* bogus port port */ /* bogus port port */
cfg = rend_service_parse_port_config("100 99999", cfg = rend_service_parse_port_config("100 99999",
" ", &err_msg); " ", &err_msg);
tt_assert(!cfg); tt_ptr_op(cfg, OP_EQ, NULL);
tt_str_op(err_msg, OP_EQ, "Unparseable or out-of-range port \"99999\" " tt_str_op(err_msg, OP_EQ, "Unparseable or out-of-range port \"99999\" "
"in hidden service port configuration."); "in hidden service port configuration.");
tor_free(err_msg); tor_free(err_msg);
@ -261,7 +261,7 @@ test_add_onion_helper_clientauth(void *arg)
client = add_onion_helper_clientauth("alice", &created, &err_msg); client = add_onion_helper_clientauth("alice", &created, &err_msg);
tt_assert(client); tt_assert(client);
tt_assert(created); tt_assert(created);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
rend_authorized_client_free(client); rend_authorized_client_free(client);
/* Test "ClientName:Blob" */ /* Test "ClientName:Blob" */
@ -269,26 +269,26 @@ test_add_onion_helper_clientauth(void *arg)
&created, &err_msg); &created, &err_msg);
tt_assert(client); tt_assert(client);
tt_assert(!created); tt_assert(!created);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
rend_authorized_client_free(client); rend_authorized_client_free(client);
/* Test invalid client names */ /* Test invalid client names */
client = add_onion_helper_clientauth("no*asterisks*allowed", &created, client = add_onion_helper_clientauth("no*asterisks*allowed", &created,
&err_msg); &err_msg);
tt_assert(!client); tt_ptr_op(client, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
tor_free(err_msg); tor_free(err_msg);
/* Test invalid auth cookie */ /* Test invalid auth cookie */
client = add_onion_helper_clientauth("alice:12345", &created, &err_msg); client = add_onion_helper_clientauth("alice:12345", &created, &err_msg);
tt_assert(!client); tt_ptr_op(client, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
tor_free(err_msg); tor_free(err_msg);
/* Test invalid syntax */ /* Test invalid syntax */
client = add_onion_helper_clientauth(":475hGBHPlq7Mc0cRZitK/B", &created, client = add_onion_helper_clientauth(":475hGBHPlq7Mc0cRZitK/B", &created,
&err_msg); &err_msg);
tt_assert(!client); tt_ptr_op(client, OP_EQ, NULL);
tt_assert(err_msg); tt_assert(err_msg);
tor_free(err_msg); tor_free(err_msg);
@ -544,7 +544,7 @@ cert_dl_status_def_for_auth_mock(const char *digest)
download_status_t *dl = NULL; download_status_t *dl = NULL;
char digest_str[HEX_DIGEST_LEN+1]; char digest_str[HEX_DIGEST_LEN+1];
tt_assert(digest != NULL); tt_ptr_op(digest, OP_NE, NULL);
base16_encode(digest_str, HEX_DIGEST_LEN + 1, base16_encode(digest_str, HEX_DIGEST_LEN + 1,
digest, DIGEST_LEN); digest, DIGEST_LEN);
digest_str[HEX_DIGEST_LEN] = '\0'; digest_str[HEX_DIGEST_LEN] = '\0';
@ -568,7 +568,7 @@ cert_dl_status_sks_for_auth_id_mock(const char *digest)
char *tmp; char *tmp;
int len; int len;
tt_assert(digest != NULL); tt_ptr_op(digest, OP_NE, NULL);
base16_encode(digest_str, HEX_DIGEST_LEN + 1, base16_encode(digest_str, HEX_DIGEST_LEN + 1,
digest, DIGEST_LEN); digest, DIGEST_LEN);
digest_str[HEX_DIGEST_LEN] = '\0'; digest_str[HEX_DIGEST_LEN] = '\0';
@ -622,11 +622,11 @@ cert_dl_status_fp_sk_mock(const char *fp_digest, const char *sk_digest)
* dl status we want. * dl status we want.
*/ */
tt_assert(fp_digest != NULL); tt_ptr_op(fp_digest, OP_NE, NULL);
base16_encode(fp_digest_str, HEX_DIGEST_LEN + 1, base16_encode(fp_digest_str, HEX_DIGEST_LEN + 1,
fp_digest, DIGEST_LEN); fp_digest, DIGEST_LEN);
fp_digest_str[HEX_DIGEST_LEN] = '\0'; fp_digest_str[HEX_DIGEST_LEN] = '\0';
tt_assert(sk_digest != NULL); tt_ptr_op(sk_digest, OP_NE, NULL);
base16_encode(sk_digest_str, HEX_DIGEST_LEN + 1, base16_encode(sk_digest_str, HEX_DIGEST_LEN + 1,
sk_digest, DIGEST_LEN); sk_digest, DIGEST_LEN);
sk_digest_str[HEX_DIGEST_LEN] = '\0'; sk_digest_str[HEX_DIGEST_LEN] = '\0';
@ -706,7 +706,7 @@ descbr_get_dl_by_digest_mock(const char *digest)
char digest_str[HEX_DIGEST_LEN+1]; char digest_str[HEX_DIGEST_LEN+1];
if (!disable_descbr) { if (!disable_descbr) {
tt_assert(digest != NULL); tt_ptr_op(digest, OP_NE, NULL);
base16_encode(digest_str, HEX_DIGEST_LEN + 1, base16_encode(digest_str, HEX_DIGEST_LEN + 1,
digest, DIGEST_LEN); digest, DIGEST_LEN);
digest_str[HEX_DIGEST_LEN] = '\0'; digest_str[HEX_DIGEST_LEN] = '\0';
@ -773,7 +773,7 @@ test_download_status_consensus(void *arg)
/* Check that the unknown prefix case works; no mocks needed yet */ /* Check that the unknown prefix case works; no mocks needed yet */
getinfo_helper_downloads(&dummy, "downloads/foo", &answer, &errmsg); getinfo_helper_downloads(&dummy, "downloads/foo", &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_str_op(errmsg, OP_EQ, "Unknown download status query"); tt_str_op(errmsg, OP_EQ, "Unknown download status query");
setup_ns_mocks(); setup_ns_mocks();
@ -788,8 +788,8 @@ test_download_status_consensus(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
getinfo_helper_downloads(&dummy, "downloads/networkstatus/ns", getinfo_helper_downloads(&dummy, "downloads/networkstatus/ns",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_1_str); tt_str_op(answer, OP_EQ, dls_sample_1_str);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -799,8 +799,8 @@ test_download_status_consensus(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
getinfo_helper_downloads(&dummy, "downloads/networkstatus/microdesc", getinfo_helper_downloads(&dummy, "downloads/networkstatus/microdesc",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_2_str); tt_str_op(answer, OP_EQ, dls_sample_2_str);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -810,8 +810,8 @@ test_download_status_consensus(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
getinfo_helper_downloads(&dummy, "downloads/networkstatus/ns/bootstrap", getinfo_helper_downloads(&dummy, "downloads/networkstatus/ns/bootstrap",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_3_str); tt_str_op(answer, OP_EQ, dls_sample_3_str);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -822,8 +822,8 @@ test_download_status_consensus(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/networkstatus/microdesc/bootstrap", "downloads/networkstatus/microdesc/bootstrap",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_4_str); tt_str_op(answer, OP_EQ, dls_sample_4_str);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -834,8 +834,8 @@ test_download_status_consensus(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/networkstatus/ns/running", "downloads/networkstatus/ns/running",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_5_str); tt_str_op(answer, OP_EQ, dls_sample_5_str);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -846,8 +846,8 @@ test_download_status_consensus(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/networkstatus/microdesc/running", "downloads/networkstatus/microdesc/running",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_6_str); tt_str_op(answer, OP_EQ, dls_sample_6_str);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -855,8 +855,8 @@ test_download_status_consensus(void *arg)
/* Now check the error case */ /* Now check the error case */
getinfo_helper_downloads(&dummy, "downloads/networkstatus/foo", getinfo_helper_downloads(&dummy, "downloads/networkstatus/foo",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "Unknown flavor"); tt_str_op(errmsg, OP_EQ, "Unknown flavor");
errmsg = NULL; errmsg = NULL;
@ -890,8 +890,8 @@ test_download_status_cert(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/cert/fps", "downloads/cert/fps",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, auth_id_digest_expected_list); tt_str_op(answer, OP_EQ, auth_id_digest_expected_list);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -900,10 +900,10 @@ test_download_status_cert(void *arg)
memcpy(&auth_def_cert_download_status_1, &dls_sample_1, memcpy(&auth_def_cert_download_status_1, &dls_sample_1,
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/cert/fp/%s", auth_id_digest_1_str); tor_asprintf(&question, "downloads/cert/fp/%s", auth_id_digest_1_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_1_str); tt_str_op(answer, OP_EQ, dls_sample_1_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -913,10 +913,10 @@ test_download_status_cert(void *arg)
memcpy(&auth_def_cert_download_status_2, &dls_sample_2, memcpy(&auth_def_cert_download_status_2, &dls_sample_2,
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/cert/fp/%s", auth_id_digest_2_str); tor_asprintf(&question, "downloads/cert/fp/%s", auth_id_digest_2_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_2_str); tt_str_op(answer, OP_EQ, dls_sample_2_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -924,10 +924,10 @@ test_download_status_cert(void *arg)
/* Case 4 - list of signing key digests for 1st auth id */ /* Case 4 - list of signing key digests for 1st auth id */
tor_asprintf(&question, "downloads/cert/fp/%s/sks", auth_id_digest_1_str); tor_asprintf(&question, "downloads/cert/fp/%s/sks", auth_id_digest_1_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, auth_1_sk_digest_expected_list); tt_str_op(answer, OP_EQ, auth_1_sk_digest_expected_list);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -935,10 +935,10 @@ test_download_status_cert(void *arg)
/* Case 5 - list of signing key digests for 2nd auth id */ /* Case 5 - list of signing key digests for 2nd auth id */
tor_asprintf(&question, "downloads/cert/fp/%s/sks", auth_id_digest_2_str); tor_asprintf(&question, "downloads/cert/fp/%s/sks", auth_id_digest_2_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, auth_2_sk_digest_expected_list); tt_str_op(answer, OP_EQ, auth_2_sk_digest_expected_list);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -949,10 +949,10 @@ test_download_status_cert(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/cert/fp/%s/%s", tor_asprintf(&question, "downloads/cert/fp/%s/%s",
auth_id_digest_1_str, auth_1_sk_1_str); auth_id_digest_1_str, auth_1_sk_1_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_3_str); tt_str_op(answer, OP_EQ, dls_sample_3_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -963,10 +963,10 @@ test_download_status_cert(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/cert/fp/%s/%s", tor_asprintf(&question, "downloads/cert/fp/%s/%s",
auth_id_digest_1_str, auth_1_sk_2_str); auth_id_digest_1_str, auth_1_sk_2_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_4_str); tt_str_op(answer, OP_EQ, dls_sample_4_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -977,10 +977,10 @@ test_download_status_cert(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/cert/fp/%s/%s", tor_asprintf(&question, "downloads/cert/fp/%s/%s",
auth_id_digest_2_str, auth_2_sk_1_str); auth_id_digest_2_str, auth_2_sk_1_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_5_str); tt_str_op(answer, OP_EQ, dls_sample_5_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -991,10 +991,10 @@ test_download_status_cert(void *arg)
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/cert/fp/%s/%s", tor_asprintf(&question, "downloads/cert/fp/%s/%s",
auth_id_digest_2_str, auth_2_sk_2_str); auth_id_digest_2_str, auth_2_sk_2_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_6_str); tt_str_op(answer, OP_EQ, dls_sample_6_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -1005,8 +1005,8 @@ test_download_status_cert(void *arg)
/* Case 1 - query is garbage after downloads/cert/ part */ /* Case 1 - query is garbage after downloads/cert/ part */
getinfo_helper_downloads(&dummy, "downloads/cert/blahdeblah", getinfo_helper_downloads(&dummy, "downloads/cert/blahdeblah",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "Unknown certificate download status query"); tt_str_op(errmsg, OP_EQ, "Unknown certificate download status query");
errmsg = NULL; errmsg = NULL;
@ -1016,8 +1016,8 @@ test_download_status_cert(void *arg)
*/ */
getinfo_helper_downloads(&dummy, "downloads/cert/fp/2B1D36D32B2942406", getinfo_helper_downloads(&dummy, "downloads/cert/fp/2B1D36D32B2942406",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like a digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like a digest");
errmsg = NULL; errmsg = NULL;
@ -1028,8 +1028,8 @@ test_download_status_cert(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/cert/fp/82F52AF55D250115FE44D3GC81D49643241D56A1", "downloads/cert/fp/82F52AF55D250115FE44D3GC81D49643241D56A1",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like a digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like a digest");
errmsg = NULL; errmsg = NULL;
@ -1040,8 +1040,8 @@ test_download_status_cert(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61", "downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, tt_str_op(errmsg, OP_EQ,
"Failed to get download status for this authority identity digest"); "Failed to get download status for this authority identity digest");
errmsg = NULL; errmsg = NULL;
@ -1053,8 +1053,8 @@ test_download_status_cert(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/cert/fp/82F52AF55D250115FE44D3GC81D49643241D56A1/blah", "downloads/cert/fp/82F52AF55D250115FE44D3GC81D49643241D56A1/blah",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like an identity digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like an identity digest");
errmsg = NULL; errmsg = NULL;
@ -1065,8 +1065,8 @@ test_download_status_cert(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/cert/fp/82F52AF55D25/blah", "downloads/cert/fp/82F52AF55D25/blah",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like an identity digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like an identity digest");
errmsg = NULL; errmsg = NULL;
@ -1077,8 +1077,8 @@ test_download_status_cert(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61/sks", "downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61/sks",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, tt_str_op(errmsg, OP_EQ,
"Failed to get list of signing key digests for this authority " "Failed to get list of signing key digests for this authority "
"identity digest"); "identity digest");
@ -1092,8 +1092,8 @@ test_download_status_cert(void *arg)
"downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61/" "downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61/"
"82F52AF55D250115FE44D3GC81D49643241D56A1", "82F52AF55D250115FE44D3GC81D49643241D56A1",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like a signing key digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like a signing key digest");
errmsg = NULL; errmsg = NULL;
@ -1105,8 +1105,8 @@ test_download_status_cert(void *arg)
"downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61/" "downloads/cert/fp/AC4F23B5745BDD2A77997B85B1FD85D05C2E0F61/"
"82F52AF55D250115FE44D", "82F52AF55D250115FE44D",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like a signing key digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like a signing key digest");
errmsg = NULL; errmsg = NULL;
@ -1118,8 +1118,8 @@ test_download_status_cert(void *arg)
"downloads/cert/fp/C6B05DF332F74DB9A13498EE3BBC7AA2F69FCB45/" "downloads/cert/fp/C6B05DF332F74DB9A13498EE3BBC7AA2F69FCB45/"
"3A214FC21AE25B012C2ECCB5F4EC8A3602D0545D", "3A214FC21AE25B012C2ECCB5F4EC8A3602D0545D",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, tt_str_op(errmsg, OP_EQ,
"Failed to get download status for this identity/" "Failed to get download status for this identity/"
"signing key digest pair"); "signing key digest pair");
@ -1133,8 +1133,8 @@ test_download_status_cert(void *arg)
"downloads/cert/fp/63CDD326DFEF0CA020BDD3FEB45A3286FE13A061/" "downloads/cert/fp/63CDD326DFEF0CA020BDD3FEB45A3286FE13A061/"
"3A214FC21AE25B012C2ECCB5F4EC8A3602D0545D", "3A214FC21AE25B012C2ECCB5F4EC8A3602D0545D",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, tt_str_op(errmsg, OP_EQ,
"Failed to get download status for this identity/" "Failed to get download status for this identity/"
"signing key digest pair"); "signing key digest pair");
@ -1148,8 +1148,8 @@ test_download_status_cert(void *arg)
"downloads/cert/fp/63CDD326DFEF0CA020BDD3FEB45A3286FE13A061/" "downloads/cert/fp/63CDD326DFEF0CA020BDD3FEB45A3286FE13A061/"
"9451B8F1B10952384EB58B5F230C0BB701626C9B", "9451B8F1B10952384EB58B5F230C0BB701626C9B",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, tt_str_op(errmsg, OP_EQ,
"Failed to get download status for this identity/" "Failed to get download status for this identity/"
"signing key digest pair"); "signing key digest pair");
@ -1185,8 +1185,8 @@ test_download_status_desc(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/desc/descs", "downloads/desc/descs",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, descbr_expected_list); tt_str_op(answer, OP_EQ, descbr_expected_list);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -1195,10 +1195,10 @@ test_download_status_desc(void *arg)
memcpy(&descbr_digest_1_dl, &dls_sample_1, memcpy(&descbr_digest_1_dl, &dls_sample_1,
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/desc/%s", descbr_digest_1_str); tor_asprintf(&question, "downloads/desc/%s", descbr_digest_1_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_1_str); tt_str_op(answer, OP_EQ, dls_sample_1_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -1208,10 +1208,10 @@ test_download_status_desc(void *arg)
memcpy(&descbr_digest_2_dl, &dls_sample_2, memcpy(&descbr_digest_2_dl, &dls_sample_2,
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/desc/%s", descbr_digest_2_str); tor_asprintf(&question, "downloads/desc/%s", descbr_digest_2_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_2_str); tt_str_op(answer, OP_EQ, dls_sample_2_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -1222,8 +1222,8 @@ test_download_status_desc(void *arg)
/* Case 1 - non-digest-length garbage after downloads/desc */ /* Case 1 - non-digest-length garbage after downloads/desc */
getinfo_helper_downloads(&dummy, "downloads/desc/blahdeblah", getinfo_helper_downloads(&dummy, "downloads/desc/blahdeblah",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "Unknown router descriptor download status query"); tt_str_op(errmsg, OP_EQ, "Unknown router descriptor download status query");
errmsg = NULL; errmsg = NULL;
@ -1232,8 +1232,8 @@ test_download_status_desc(void *arg)
&dummy, &dummy,
"downloads/desc/774EC52FD9A5B80A6FACZE536616E8022E3470AG", "downloads/desc/774EC52FD9A5B80A6FACZE536616E8022E3470AG",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like a digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like a digest");
errmsg = NULL; errmsg = NULL;
@ -1242,8 +1242,8 @@ test_download_status_desc(void *arg)
&dummy, &dummy,
"downloads/desc/B05B46135B0B2C04EBE1DD6A6AE4B12D7CD2226A", "downloads/desc/B05B46135B0B2C04EBE1DD6A6AE4B12D7CD2226A",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "No such descriptor digest found"); tt_str_op(errmsg, OP_EQ, "No such descriptor digest found");
errmsg = NULL; errmsg = NULL;
@ -1252,8 +1252,8 @@ test_download_status_desc(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/desc/descs", "downloads/desc/descs",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, tt_str_op(errmsg, OP_EQ,
"We don't seem to have a networkstatus-flavored consensus"); "We don't seem to have a networkstatus-flavored consensus");
errmsg = NULL; errmsg = NULL;
@ -1289,8 +1289,8 @@ test_download_status_bridge(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/bridge/bridges", "downloads/bridge/bridges",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, descbr_expected_list); tt_str_op(answer, OP_EQ, descbr_expected_list);
tor_free(answer); tor_free(answer);
errmsg = NULL; errmsg = NULL;
@ -1299,10 +1299,10 @@ test_download_status_bridge(void *arg)
memcpy(&descbr_digest_1_dl, &dls_sample_3, memcpy(&descbr_digest_1_dl, &dls_sample_3,
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/bridge/%s", descbr_digest_1_str); tor_asprintf(&question, "downloads/bridge/%s", descbr_digest_1_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_3_str); tt_str_op(answer, OP_EQ, dls_sample_3_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -1312,10 +1312,10 @@ test_download_status_bridge(void *arg)
memcpy(&descbr_digest_2_dl, &dls_sample_4, memcpy(&descbr_digest_2_dl, &dls_sample_4,
sizeof(download_status_t)); sizeof(download_status_t));
tor_asprintf(&question, "downloads/bridge/%s", descbr_digest_2_str); tor_asprintf(&question, "downloads/bridge/%s", descbr_digest_2_str);
tt_assert(question != NULL); tt_ptr_op(question, OP_NE, NULL);
getinfo_helper_downloads(&dummy, question, &answer, &errmsg); getinfo_helper_downloads(&dummy, question, &answer, &errmsg);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(errmsg == NULL); tt_ptr_op(errmsg, OP_EQ, NULL);
tt_str_op(answer, OP_EQ, dls_sample_4_str); tt_str_op(answer, OP_EQ, dls_sample_4_str);
tor_free(question); tor_free(question);
tor_free(answer); tor_free(answer);
@ -1326,8 +1326,8 @@ test_download_status_bridge(void *arg)
/* Case 1 - non-digest-length garbage after downloads/bridge */ /* Case 1 - non-digest-length garbage after downloads/bridge */
getinfo_helper_downloads(&dummy, "downloads/bridge/blahdeblah", getinfo_helper_downloads(&dummy, "downloads/bridge/blahdeblah",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "Unknown bridge descriptor download status query"); tt_str_op(errmsg, OP_EQ, "Unknown bridge descriptor download status query");
errmsg = NULL; errmsg = NULL;
@ -1336,8 +1336,8 @@ test_download_status_bridge(void *arg)
&dummy, &dummy,
"downloads/bridge/774EC52FD9A5B80A6FACZE536616E8022E3470AG", "downloads/bridge/774EC52FD9A5B80A6FACZE536616E8022E3470AG",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "That didn't look like a digest"); tt_str_op(errmsg, OP_EQ, "That didn't look like a digest");
errmsg = NULL; errmsg = NULL;
@ -1346,8 +1346,8 @@ test_download_status_bridge(void *arg)
&dummy, &dummy,
"downloads/bridge/B05B46135B0B2C04EBE1DD6A6AE4B12D7CD2226A", "downloads/bridge/B05B46135B0B2C04EBE1DD6A6AE4B12D7CD2226A",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "No such bridge identity digest found"); tt_str_op(errmsg, OP_EQ, "No such bridge identity digest found");
errmsg = NULL; errmsg = NULL;
@ -1356,8 +1356,8 @@ test_download_status_bridge(void *arg)
getinfo_helper_downloads(&dummy, getinfo_helper_downloads(&dummy,
"downloads/bridge/bridges", "downloads/bridge/bridges",
&answer, &errmsg); &answer, &errmsg);
tt_assert(answer == NULL); tt_ptr_op(answer, OP_EQ, NULL);
tt_assert(errmsg != NULL); tt_ptr_op(errmsg, OP_NE, NULL);
tt_str_op(errmsg, OP_EQ, "We don't seem to be using bridges"); tt_str_op(errmsg, OP_EQ, "We don't seem to be using bridges");
errmsg = NULL; errmsg = NULL;
disable_descbr = 0; disable_descbr = 0;

View File

@ -1264,7 +1264,7 @@ test_crypto_pk(void *arg)
/* Try copy_full */ /* Try copy_full */
crypto_pk_free(pk2); crypto_pk_free(pk2);
pk2 = crypto_pk_copy_full(pk1); pk2 = crypto_pk_copy_full(pk1);
tt_assert(pk2 != NULL); tt_ptr_op(pk2, OP_NE, NULL);
tt_ptr_op(pk1, OP_NE, pk2); tt_ptr_op(pk1, OP_NE, pk2);
tt_int_op(crypto_pk_cmp_keys(pk1, pk2), OP_EQ, 0); tt_int_op(crypto_pk_cmp_keys(pk1, pk2), OP_EQ, 0);
@ -1350,11 +1350,11 @@ test_crypto_pk_base64(void *arg)
/* Test decoding a invalid key (not Base64). */ /* Test decoding a invalid key (not Base64). */
static const char *invalid_b64 = "The key is in another castle!"; static const char *invalid_b64 = "The key is in another castle!";
pk2 = crypto_pk_base64_decode(invalid_b64, strlen(invalid_b64)); pk2 = crypto_pk_base64_decode(invalid_b64, strlen(invalid_b64));
tt_assert(!pk2); tt_ptr_op(pk2, OP_EQ, NULL);
/* Test decoding a truncated Base64 blob. */ /* Test decoding a truncated Base64 blob. */
pk2 = crypto_pk_base64_decode(encoded, strlen(encoded)/2); pk2 = crypto_pk_base64_decode(encoded, strlen(encoded)/2);
tt_assert(!pk2); tt_ptr_op(pk2, OP_EQ, NULL);
done: done:
crypto_pk_free(pk1); crypto_pk_free(pk1);

View File

@ -477,34 +477,34 @@ test_dir_routerinfo_parsing(void *arg)
routerinfo_free(ri); routerinfo_free(ri);
ri = router_parse_entry_from_string(EX_RI_MINIMAL, NULL, 0, 0, ri = router_parse_entry_from_string(EX_RI_MINIMAL, NULL, 0, 0,
"@purpose bridge\n", NULL); "@purpose bridge\n", NULL);
tt_assert(ri != NULL); tt_ptr_op(ri, OP_NE, NULL);
tt_assert(ri->purpose == ROUTER_PURPOSE_BRIDGE); tt_assert(ri->purpose == ROUTER_PURPOSE_BRIDGE);
routerinfo_free(ri); routerinfo_free(ri);
/* bad annotations prepended. */ /* bad annotations prepended. */
ri = router_parse_entry_from_string(EX_RI_MINIMAL, ri = router_parse_entry_from_string(EX_RI_MINIMAL,
NULL, 0, 0, "@purpose\n", NULL); NULL, 0, 0, "@purpose\n", NULL);
tt_assert(ri == NULL); tt_ptr_op(ri, OP_EQ, NULL);
/* bad annotations on router. */ /* bad annotations on router. */
ri = router_parse_entry_from_string("@purpose\nrouter x\n", NULL, 0, 1, ri = router_parse_entry_from_string("@purpose\nrouter x\n", NULL, 0, 1,
NULL, NULL); NULL, NULL);
tt_assert(ri == NULL); tt_ptr_op(ri, OP_EQ, NULL);
/* unwanted annotations on router. */ /* unwanted annotations on router. */
ri = router_parse_entry_from_string("@purpose foo\nrouter x\n", NULL, 0, 0, ri = router_parse_entry_from_string("@purpose foo\nrouter x\n", NULL, 0, 0,
NULL, NULL); NULL, NULL);
tt_assert(ri == NULL); tt_ptr_op(ri, OP_EQ, NULL);
/* No signature. */ /* No signature. */
ri = router_parse_entry_from_string("router x\n", NULL, 0, 0, ri = router_parse_entry_from_string("router x\n", NULL, 0, 0,
NULL, NULL); NULL, NULL);
tt_assert(ri == NULL); tt_ptr_op(ri, OP_EQ, NULL);
/* Not a router */ /* Not a router */
routerinfo_free(ri); routerinfo_free(ri);
ri = router_parse_entry_from_string("hello\n", NULL, 0, 0, NULL, NULL); ri = router_parse_entry_from_string("hello\n", NULL, 0, 0, NULL, NULL);
tt_assert(ri == NULL); tt_ptr_op(ri, OP_EQ, NULL);
CHECK_FAIL(EX_RI_BAD_SIG1, 1); CHECK_FAIL(EX_RI_BAD_SIG1, 1);
CHECK_FAIL(EX_RI_BAD_SIG2, 1); CHECK_FAIL(EX_RI_BAD_SIG2, 1);
@ -631,11 +631,11 @@ test_dir_extrainfo_parsing(void *arg)
ADD(EX_EI_ED_MISPLACED_SIG); ADD(EX_EI_ED_MISPLACED_SIG);
CHECK_OK(EX_EI_MINIMAL); CHECK_OK(EX_EI_MINIMAL);
tt_assert(!ei->pending_sig); tt_ptr_op(ei->pending_sig, OP_EQ, NULL);
CHECK_OK(EX_EI_MAXIMAL); CHECK_OK(EX_EI_MAXIMAL);
tt_assert(!ei->pending_sig); tt_ptr_op(ei->pending_sig, OP_EQ, NULL);
CHECK_OK(EX_EI_GOOD_ED_EI); CHECK_OK(EX_EI_GOOD_ED_EI);
tt_assert(!ei->pending_sig); tt_ptr_op(ei->pending_sig, OP_EQ, NULL);
CHECK_FAIL(EX_EI_BAD_SIG1,1); CHECK_FAIL(EX_EI_BAD_SIG1,1);
CHECK_FAIL(EX_EI_BAD_SIG2,1); CHECK_FAIL(EX_EI_BAD_SIG2,1);
@ -1988,7 +1988,7 @@ test_consensus_for_v3ns(networkstatus_t *con, time_t now)
(void)now; (void)now;
tt_assert(con); tt_assert(con);
tt_assert(!con->cert); tt_ptr_op(con->cert, OP_EQ, NULL);
tt_int_op(2,OP_EQ, smartlist_len(con->routerstatus_list)); tt_int_op(2,OP_EQ, smartlist_len(con->routerstatus_list));
/* There should be two listed routers: one with identity 3, one with /* There should be two listed routers: one with identity 3, one with
* identity 5. */ * identity 5. */
@ -3158,7 +3158,7 @@ test_consensus_for_umbw(networkstatus_t *con, time_t now)
(void)now; (void)now;
tt_assert(con); tt_assert(con);
tt_assert(!con->cert); tt_ptr_op(con->cert, OP_EQ, NULL);
// tt_assert(con->consensus_method >= MIN_METHOD_TO_CLIP_UNMEASURED_BW_KB); // tt_assert(con->consensus_method >= MIN_METHOD_TO_CLIP_UNMEASURED_BW_KB);
tt_int_op(con->consensus_method, OP_GE, 16); tt_int_op(con->consensus_method, OP_GE, 16);
tt_int_op(4,OP_EQ, smartlist_len(con->routerstatus_list)); tt_int_op(4,OP_EQ, smartlist_len(con->routerstatus_list));
@ -3658,7 +3658,7 @@ test_dir_http_handling(void *args)
"User-Agent: Mozilla/5.0 (Windows;" "User-Agent: Mozilla/5.0 (Windows;"
" U; Windows NT 6.1; en-US; rv:1.9.1.5)\r\n", " U; Windows NT 6.1; en-US; rv:1.9.1.5)\r\n",
&url),OP_EQ, -1); &url),OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
/* Bad headers */ /* Bad headers */
tt_int_op(parse_http_url("GET /a/b/c.txt\r\n" tt_int_op(parse_http_url("GET /a/b/c.txt\r\n"
@ -3666,23 +3666,23 @@ test_dir_http_handling(void *args)
"User-Agent: Mozilla/5.0 (Windows;" "User-Agent: Mozilla/5.0 (Windows;"
" U; Windows NT 6.1; en-US; rv:1.9.1.5)\r\n", " U; Windows NT 6.1; en-US; rv:1.9.1.5)\r\n",
&url),OP_EQ, -1); &url),OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
tt_int_op(parse_http_url("GET /tor/a/b/c.txt", &url),OP_EQ, -1); tt_int_op(parse_http_url("GET /tor/a/b/c.txt", &url),OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.1", &url),OP_EQ, -1); tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.1", &url),OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.1x\r\n", &url), tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.1x\r\n", &url),
OP_EQ, -1); OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.", &url),OP_EQ, -1); tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.", &url),OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.\r", &url),OP_EQ, -1); tt_int_op(parse_http_url("GET /tor/a/b/c.txt HTTP/1.\r", &url),OP_EQ, -1);
tt_assert(!url); tt_ptr_op(url, OP_EQ, NULL);
done: done:
tor_free(url); tor_free(url);
@ -4850,13 +4850,13 @@ mock_get_datadir_fname(const or_options_t *options,
* Assert we were called like get_datadir_fname2() or get_datadir_fname(), * Assert we were called like get_datadir_fname2() or get_datadir_fname(),
* since that's all we implement here. * since that's all we implement here.
*/ */
tt_assert(options != NULL); tt_ptr_op(options, OP_NE, NULL);
tt_assert(sub1 != NULL); tt_ptr_op(sub1, OP_NE, NULL);
/* /*
* No particular assertions about sub2, since we could be in the * No particular assertions about sub2, since we could be in the
* get_datadir_fname() or get_datadir_fname2() case. * get_datadir_fname() or get_datadir_fname2() case.
*/ */
tt_assert(suffix == NULL); tt_ptr_op(suffix, OP_EQ, NULL);
/* Just duplicate the basename and return it for this mock */ /* Just duplicate the basename and return it for this mock */
if (sub2) { if (sub2) {
@ -4883,7 +4883,7 @@ mock_unlink_reset(void)
static int static int
mock_unlink(const char *path) mock_unlink(const char *path)
{ {
tt_assert(path != NULL); tt_ptr_op(path, OP_NE, NULL);
tor_free(last_unlinked_path); tor_free(last_unlinked_path);
last_unlinked_path = tor_strdup(path); last_unlinked_path = tor_strdup(path);
@ -4912,8 +4912,8 @@ mock_write_str_to_file(const char *path, const char *str, int bin)
(void)bin; (void)bin;
tt_assert(path != NULL); tt_ptr_op(path, OP_NE, NULL);
tt_assert(str != NULL); tt_ptr_op(str, OP_NE, NULL);
len = strlen(str); len = strlen(str);
crypto_digest256((char *)hash, str, len, DIGEST_SHA256); crypto_digest256((char *)hash, str, len, DIGEST_SHA256);
@ -5540,7 +5540,7 @@ read_file_to_str_mock(const char *filename, int flags,
char *result = NULL; char *result = NULL;
/* Insist we got a filename */ /* Insist we got a filename */
tt_assert(filename != NULL); tt_ptr_op(filename, OP_NE, NULL);
/* We ignore flags */ /* We ignore flags */
(void)flags; (void)flags;
@ -5607,19 +5607,19 @@ test_dir_populate_dump_desc_fifo(void *data)
/* Some cases that should fail before trying to read the file */ /* Some cases that should fail before trying to read the file */
ent = dump_desc_populate_one_file(dirname, "bar"); ent = dump_desc_populate_one_file(dirname, "bar");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 1); tt_int_op(unlinked_count, OP_EQ, 1);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 0); tt_int_op(read_call_count, OP_EQ, 0);
ent = dump_desc_populate_one_file(dirname, "unparseable-desc"); ent = dump_desc_populate_one_file(dirname, "unparseable-desc");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 2); tt_int_op(unlinked_count, OP_EQ, 2);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 0); tt_int_op(read_call_count, OP_EQ, 0);
ent = dump_desc_populate_one_file(dirname, "unparseable-desc.baz"); ent = dump_desc_populate_one_file(dirname, "unparseable-desc.baz");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 3); tt_int_op(unlinked_count, OP_EQ, 3);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 0); tt_int_op(read_call_count, OP_EQ, 0);
@ -5627,7 +5627,7 @@ test_dir_populate_dump_desc_fifo(void *data)
ent = dump_desc_populate_one_file( ent = dump_desc_populate_one_file(
dirname, dirname,
"unparseable-desc.08AE85E90461F59E"); "unparseable-desc.08AE85E90461F59E");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 4); tt_int_op(unlinked_count, OP_EQ, 4);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 0); tt_int_op(read_call_count, OP_EQ, 0);
@ -5636,7 +5636,7 @@ test_dir_populate_dump_desc_fifo(void *data)
dirname, dirname,
"unparseable-desc.08AE85E90461F59EDF0981323F3A70D02B55AB54B44B04F" "unparseable-desc.08AE85E90461F59EDF0981323F3A70D02B55AB54B44B04F"
"287D72F7B72F242E85C8CB0EDA8854A99"); "287D72F7B72F242E85C8CB0EDA8854A99");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 5); tt_int_op(unlinked_count, OP_EQ, 5);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 0); tt_int_op(read_call_count, OP_EQ, 0);
@ -5646,7 +5646,7 @@ test_dir_populate_dump_desc_fifo(void *data)
dirname, dirname,
"unparseable-desc.68219B8BGE64B705A6FFC728C069DC596216D60A7D7520C" "unparseable-desc.68219B8BGE64B705A6FFC728C069DC596216D60A7D7520C"
"D5ECE250D912E686B"); "D5ECE250D912E686B");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 6); tt_int_op(unlinked_count, OP_EQ, 6);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 0); tt_int_op(read_call_count, OP_EQ, 0);
@ -5658,7 +5658,7 @@ test_dir_populate_dump_desc_fifo(void *data)
dirname, dirname,
"unparseable-desc.DF0981323F3A70D02B55AB54B44B04F287D72F7B72F242E" "unparseable-desc.DF0981323F3A70D02B55AB54B44B04F287D72F7B72F242E"
"85C8CB0EDA8854A99"); "85C8CB0EDA8854A99");
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 7); tt_int_op(unlinked_count, OP_EQ, 7);
tt_int_op(read_count, OP_EQ, 0); tt_int_op(read_count, OP_EQ, 0);
tt_int_op(read_call_count, OP_EQ, 1); tt_int_op(read_call_count, OP_EQ, 1);
@ -5674,7 +5674,7 @@ test_dir_populate_dump_desc_fifo(void *data)
file_stat.st_mtime = 123456; file_stat.st_mtime = 123456;
ent = dump_desc_populate_one_file(dirname, fname); ent = dump_desc_populate_one_file(dirname, fname);
enforce_expected_filename = 0; enforce_expected_filename = 0;
tt_assert(ent == NULL); tt_ptr_op(ent, OP_EQ, NULL);
tt_int_op(unlinked_count, OP_EQ, 8); tt_int_op(unlinked_count, OP_EQ, 8);
tt_int_op(read_count, OP_EQ, 1); tt_int_op(read_count, OP_EQ, 1);
tt_int_op(read_call_count, OP_EQ, 2); tt_int_op(read_call_count, OP_EQ, 2);
@ -5690,7 +5690,7 @@ test_dir_populate_dump_desc_fifo(void *data)
file_content_len = strlen(file_content); file_content_len = strlen(file_content);
file_stat.st_mtime = 789012; file_stat.st_mtime = 789012;
ent = dump_desc_populate_one_file(dirname, fname); ent = dump_desc_populate_one_file(dirname, fname);
tt_assert(ent != NULL); tt_ptr_op(ent, OP_NE, NULL);
tt_int_op(unlinked_count, OP_EQ, 8); tt_int_op(unlinked_count, OP_EQ, 8);
tt_int_op(read_count, OP_EQ, 2); tt_int_op(read_count, OP_EQ, 2);
tt_int_op(read_call_count, OP_EQ, 3); tt_int_op(read_call_count, OP_EQ, 3);

View File

@ -455,29 +455,29 @@ test_entry_guard_parse_from_state_failure(void *arg)
/* no selection */ /* no selection */
eg = entry_guard_parse_from_state( eg = entry_guard_parse_from_state(
"rsa_id=596f75206d6179206e656564206120686f626270"); "rsa_id=596f75206d6179206e656564206120686f626270");
tt_assert(! eg); tt_ptr_op(eg, OP_EQ, NULL);
/* no RSA ID. */ /* no RSA ID. */
eg = entry_guard_parse_from_state("in=default nickname=Fred"); eg = entry_guard_parse_from_state("in=default nickname=Fred");
tt_assert(! eg); tt_ptr_op(eg, OP_EQ, NULL);
/* Bad RSA ID: bad character. */ /* Bad RSA ID: bad character. */
eg = entry_guard_parse_from_state( eg = entry_guard_parse_from_state(
"in=default " "in=default "
"rsa_id=596f75206d6179206e656564206120686f62627q"); "rsa_id=596f75206d6179206e656564206120686f62627q");
tt_assert(! eg); tt_ptr_op(eg, OP_EQ, NULL);
/* Bad RSA ID: too long.*/ /* Bad RSA ID: too long.*/
eg = entry_guard_parse_from_state( eg = entry_guard_parse_from_state(
"in=default " "in=default "
"rsa_id=596f75206d6179206e656564206120686f6262703"); "rsa_id=596f75206d6179206e656564206120686f6262703");
tt_assert(! eg); tt_ptr_op(eg, OP_EQ, NULL);
/* Bad RSA ID: too short.*/ /* Bad RSA ID: too short.*/
eg = entry_guard_parse_from_state( eg = entry_guard_parse_from_state(
"in=default " "in=default "
"rsa_id=596f75206d6179206e65656420612"); "rsa_id=596f75206d6179206e65656420612");
tt_assert(! eg); tt_ptr_op(eg, OP_EQ, NULL);
done: done:
entry_guard_free(eg); entry_guard_free(eg);
@ -605,7 +605,7 @@ test_entry_guard_parse_from_state_full(void *arg)
tt_int_op(r, OP_EQ, 0); tt_int_op(r, OP_EQ, 0);
guard_selection_t *gs_br = guard_selection_t *gs_br =
get_guard_selection_by_name("bridges", GS_TYPE_BRIDGE, 0); get_guard_selection_by_name("bridges", GS_TYPE_BRIDGE, 0);
tt_assert(!gs_br); tt_ptr_op(gs_br, OP_EQ, NULL);
r = entry_guards_parse_state(state, 1, &msg); r = entry_guards_parse_state(state, 1, &msg);
tt_int_op(r, OP_EQ, 0); tt_int_op(r, OP_EQ, 0);
@ -742,7 +742,7 @@ test_entry_guard_parse_from_state_broken(void *arg)
/* And we shouldn't have made anything. */ /* And we shouldn't have made anything. */
guard_selection_t *gs_df = guard_selection_t *gs_df =
get_guard_selection_by_name("default", GS_TYPE_NORMAL, 0); get_guard_selection_by_name("default", GS_TYPE_NORMAL, 0);
tt_assert(gs_df == NULL); tt_ptr_op(gs_df, OP_EQ, NULL);
tor_free(msg); tor_free(msg);
/* Now see about the set case (which shouldn't happen IRL) */ /* Now see about the set case (which shouldn't happen IRL) */
@ -750,7 +750,7 @@ test_entry_guard_parse_from_state_broken(void *arg)
tt_int_op(r, OP_LT, 0); tt_int_op(r, OP_LT, 0);
tt_ptr_op(msg, OP_NE, NULL); tt_ptr_op(msg, OP_NE, NULL);
gs_df = get_guard_selection_by_name("default", GS_TYPE_NORMAL, 0); gs_df = get_guard_selection_by_name("default", GS_TYPE_NORMAL, 0);
tt_assert(gs_df != NULL); tt_ptr_op(gs_df, OP_NE, NULL);
tt_int_op(smartlist_len(gs_df->sampled_entry_guards), OP_EQ, 1); tt_int_op(smartlist_len(gs_df->sampled_entry_guards), OP_EQ, 1);
done: done:
@ -767,26 +767,26 @@ test_entry_guard_get_guard_selection_by_name(void *arg)
guard_selection_t *gs1, *gs2, *gs3; guard_selection_t *gs1, *gs2, *gs3;
gs1 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 0); gs1 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 0);
tt_assert(gs1 == NULL); tt_ptr_op(gs1, OP_EQ, NULL);
gs1 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 1); gs1 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 1);
tt_assert(gs1 != NULL); tt_ptr_op(gs1, OP_NE, NULL);
gs2 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 1); gs2 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 1);
tt_assert(gs2 == gs1); tt_assert(gs2 == gs1);
gs2 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 0); gs2 = get_guard_selection_by_name("unlikely", GS_TYPE_NORMAL, 0);
tt_assert(gs2 == gs1); tt_assert(gs2 == gs1);
gs2 = get_guard_selection_by_name("implausible", GS_TYPE_NORMAL, 0); gs2 = get_guard_selection_by_name("implausible", GS_TYPE_NORMAL, 0);
tt_assert(gs2 == NULL); tt_ptr_op(gs2, OP_EQ, NULL);
gs2 = get_guard_selection_by_name("implausible", GS_TYPE_NORMAL, 1); gs2 = get_guard_selection_by_name("implausible", GS_TYPE_NORMAL, 1);
tt_assert(gs2 != NULL); tt_ptr_op(gs2, OP_NE, NULL);
tt_assert(gs2 != gs1); tt_assert(gs2 != gs1);
gs3 = get_guard_selection_by_name("implausible", GS_TYPE_NORMAL, 0); gs3 = get_guard_selection_by_name("implausible", GS_TYPE_NORMAL, 0);
tt_assert(gs3 == gs2); tt_assert(gs3 == gs2);
gs3 = get_guard_selection_by_name("default", GS_TYPE_NORMAL, 0); gs3 = get_guard_selection_by_name("default", GS_TYPE_NORMAL, 0);
tt_assert(gs3 == NULL); tt_ptr_op(gs3, OP_EQ, NULL);
gs3 = get_guard_selection_by_name("default", GS_TYPE_NORMAL, 1); gs3 = get_guard_selection_by_name("default", GS_TYPE_NORMAL, 1);
tt_assert(gs3 != NULL); tt_ptr_op(gs3, OP_NE, NULL);
tt_assert(gs3 != gs2); tt_assert(gs3 != gs2);
tt_assert(gs3 != gs1); tt_assert(gs3 != gs1);
tt_assert(gs3 == get_guard_selection_info()); tt_assert(gs3 == get_guard_selection_info());
@ -856,7 +856,7 @@ test_entry_guard_add_single_guard(void *arg)
tt_uint_op(g1->is_filtered_guard, OP_EQ, 1); tt_uint_op(g1->is_filtered_guard, OP_EQ, 1);
tt_uint_op(g1->is_usable_filtered_guard, OP_EQ, 1); tt_uint_op(g1->is_usable_filtered_guard, OP_EQ, 1);
tt_uint_op(g1->is_primary, OP_EQ, 0); tt_uint_op(g1->is_primary, OP_EQ, 0);
tt_assert(g1->extra_state_fields == NULL); tt_ptr_op(g1->extra_state_fields, OP_EQ, NULL);
/* Make sure it got added. */ /* Make sure it got added. */
tt_int_op(1, OP_EQ, smartlist_len(gs->sampled_entry_guards)); tt_int_op(1, OP_EQ, smartlist_len(gs->sampled_entry_guards));
@ -992,7 +992,7 @@ test_entry_guard_expand_sample(void *arg)
// Nothing became unusable/unfiltered, so a subsequent expand should // Nothing became unusable/unfiltered, so a subsequent expand should
// make no changes. // make no changes.
guard = entry_guards_expand_sample(gs); guard = entry_guards_expand_sample(gs);
tt_assert(! guard); // no guard was added. tt_ptr_op(guard, OP_EQ, NULL); // no guard was added.
tt_int_op(DFLT_MIN_FILTERED_SAMPLE_SIZE, OP_EQ, tt_int_op(DFLT_MIN_FILTERED_SAMPLE_SIZE, OP_EQ,
num_reachable_filtered_guards(gs, NULL)); num_reachable_filtered_guards(gs, NULL));
@ -1016,7 +1016,7 @@ test_entry_guard_expand_sample(void *arg)
// Still idempotent. // Still idempotent.
guard = entry_guards_expand_sample(gs); guard = entry_guards_expand_sample(gs);
tt_assert(! guard); // no guard was added. tt_ptr_op(guard, OP_EQ, NULL); // no guard was added.
tt_int_op(DFLT_MIN_FILTERED_SAMPLE_SIZE, OP_EQ, tt_int_op(DFLT_MIN_FILTERED_SAMPLE_SIZE, OP_EQ,
num_reachable_filtered_guards(gs, NULL)); num_reachable_filtered_guards(gs, NULL));
@ -2202,7 +2202,7 @@ test_entry_guard_select_and_cancel(void *arg)
/* Whoops! We should never have asked for this guard. Cancel the request! */ /* Whoops! We should never have asked for this guard. Cancel the request! */
entry_guard_cancel(&guard); entry_guard_cancel(&guard);
tt_assert(guard == NULL); tt_ptr_op(guard, OP_EQ, NULL);
tt_int_op(g->is_primary, OP_EQ, 0); tt_int_op(g->is_primary, OP_EQ, 0);
tt_int_op(g->is_pending, OP_EQ, 0); tt_int_op(g->is_pending, OP_EQ, 0);

View File

@ -404,7 +404,7 @@ test_pick_bad_tor2web_rendezvous_node(void *arg)
dummy value, we shouldn't find any eligible RPs. */ dummy value, we shouldn't find any eligible RPs. */
for (i = 0; i < 50 ; i++) { for (i = 0; i < 50 ; i++) {
chosen_rp = pick_tor2web_rendezvous_node(flags, options); chosen_rp = pick_tor2web_rendezvous_node(flags, options);
tt_assert(!chosen_rp); tt_ptr_op(chosen_rp, OP_EQ, NULL);
} }
done: done:
@ -586,7 +586,7 @@ test_hs_auth_cookies(void *arg)
re = rend_auth_decode_cookie(TEST_COOKIE_ENCODED, raw_cookie, &auth_type, re = rend_auth_decode_cookie(TEST_COOKIE_ENCODED, raw_cookie, &auth_type,
&err_msg); &err_msg);
tt_assert(!re); tt_assert(!re);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_mem_op(raw_cookie, OP_EQ, TEST_COOKIE_RAW, REND_DESC_COOKIE_LEN); tt_mem_op(raw_cookie, OP_EQ, TEST_COOKIE_RAW, REND_DESC_COOKIE_LEN);
tt_int_op(auth_type, OP_EQ, REND_BASIC_AUTH); tt_int_op(auth_type, OP_EQ, REND_BASIC_AUTH);
memset(raw_cookie, 0, sizeof(raw_cookie)); memset(raw_cookie, 0, sizeof(raw_cookie));
@ -594,7 +594,7 @@ test_hs_auth_cookies(void *arg)
re = rend_auth_decode_cookie(TEST_COOKIE_ENCODED_STEALTH, raw_cookie, re = rend_auth_decode_cookie(TEST_COOKIE_ENCODED_STEALTH, raw_cookie,
&auth_type, &err_msg); &auth_type, &err_msg);
tt_assert(!re); tt_assert(!re);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_mem_op(raw_cookie, OP_EQ, TEST_COOKIE_RAW, REND_DESC_COOKIE_LEN); tt_mem_op(raw_cookie, OP_EQ, TEST_COOKIE_RAW, REND_DESC_COOKIE_LEN);
tt_int_op(auth_type, OP_EQ, REND_STEALTH_AUTH); tt_int_op(auth_type, OP_EQ, REND_STEALTH_AUTH);
memset(raw_cookie, 0, sizeof(raw_cookie)); memset(raw_cookie, 0, sizeof(raw_cookie));
@ -603,7 +603,7 @@ test_hs_auth_cookies(void *arg)
re = rend_auth_decode_cookie(TEST_COOKIE_ENCODED "==", raw_cookie, NULL, re = rend_auth_decode_cookie(TEST_COOKIE_ENCODED "==", raw_cookie, NULL,
&err_msg); &err_msg);
tt_assert(!re); tt_assert(!re);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_mem_op(raw_cookie, OP_EQ, TEST_COOKIE_RAW, REND_DESC_COOKIE_LEN); tt_mem_op(raw_cookie, OP_EQ, TEST_COOKIE_RAW, REND_DESC_COOKIE_LEN);
/* Decoding with an unknown type should fail */ /* Decoding with an unknown type should fail */
@ -691,14 +691,14 @@ test_single_onion_poisoning(void *arg)
rend_service_port_config_t *port1 = rend_service_parse_port_config("80", " ", rend_service_port_config_t *port1 = rend_service_parse_port_config("80", " ",
&err_msg); &err_msg);
tt_assert(port1); tt_assert(port1);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
smartlist_add(service_1->ports, port1); smartlist_add(service_1->ports, port1);
rend_service_port_config_t *port2 = rend_service_parse_port_config("90", " ", rend_service_port_config_t *port2 = rend_service_parse_port_config("90", " ",
&err_msg); &err_msg);
/* Add port to service 2 */ /* Add port to service 2 */
tt_assert(port2); tt_assert(port2);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
smartlist_add(service_2->ports, port2); smartlist_add(service_2->ports, port2);
/* No services, a service to verify, no problem! */ /* No services, a service to verify, no problem! */

View File

@ -157,7 +157,7 @@ test_e2e_rend_circuit_setup_legacy(void *arg)
tt_int_op(retval, OP_EQ, 0); tt_int_op(retval, OP_EQ, 0);
/* Check that our stream is not attached on any circuits */ /* Check that our stream is not attached on any circuits */
tt_assert(!TO_EDGE_CONN(conn)->on_circuit); tt_ptr_op(TO_EDGE_CONN(conn)->on_circuit, OP_EQ, NULL);
/********************************************** */ /********************************************** */
@ -237,10 +237,10 @@ test_e2e_rend_circuit_setup(void *arg)
/* Check number of hops: There should be no hops yet to this circ */ /* Check number of hops: There should be no hops yet to this circ */
retval = cpath_get_n_hops(&or_circ->cpath); retval = cpath_get_n_hops(&or_circ->cpath);
tt_int_op(retval, OP_EQ, 0); tt_int_op(retval, OP_EQ, 0);
tt_assert(!or_circ->cpath); tt_ptr_op(or_circ->cpath, OP_EQ, NULL);
/* Check that our stream is not attached on any circuits */ /* Check that our stream is not attached on any circuits */
tt_assert(!TO_EDGE_CONN(conn)->on_circuit); tt_ptr_op(TO_EDGE_CONN(conn)->on_circuit, OP_EQ, NULL);
/**********************************************/ /**********************************************/

View File

@ -440,7 +440,7 @@ test_decode_invalid_intro_point(void *arg)
desc = hs_helper_build_hs_desc_with_ip(&signing_kp); desc = hs_helper_build_hs_desc_with_ip(&signing_kp);
const char *junk = "this is not a descriptor"; const char *junk = "this is not a descriptor";
ip = decode_introduction_point(desc, junk); ip = decode_introduction_point(desc, junk);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
hs_desc_intro_point_free(ip); hs_desc_intro_point_free(ip);
ip = NULL; ip = NULL;
} }
@ -456,7 +456,7 @@ test_decode_invalid_intro_point(void *arg)
encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out); encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out);
tt_assert(encoded_ip); tt_assert(encoded_ip);
ip = decode_introduction_point(desc, encoded_ip); ip = decode_introduction_point(desc, encoded_ip);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
tor_free(encoded_ip); tor_free(encoded_ip);
smartlist_free(lines); smartlist_free(lines);
hs_desc_intro_point_free(ip); hs_desc_intro_point_free(ip);
@ -483,7 +483,7 @@ test_decode_invalid_intro_point(void *arg)
encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out); encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out);
tt_assert(encoded_ip); tt_assert(encoded_ip);
ip = decode_introduction_point(desc, encoded_ip); ip = decode_introduction_point(desc, encoded_ip);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
tor_free(encoded_ip); tor_free(encoded_ip);
smartlist_free(lines); smartlist_free(lines);
} }
@ -501,7 +501,7 @@ test_decode_invalid_intro_point(void *arg)
encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out); encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out);
tt_assert(encoded_ip); tt_assert(encoded_ip);
ip = decode_introduction_point(desc, encoded_ip); ip = decode_introduction_point(desc, encoded_ip);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
tor_free(encoded_ip); tor_free(encoded_ip);
smartlist_free(lines); smartlist_free(lines);
} }
@ -518,7 +518,7 @@ test_decode_invalid_intro_point(void *arg)
encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out); encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out);
tt_assert(encoded_ip); tt_assert(encoded_ip);
ip = decode_introduction_point(desc, encoded_ip); ip = decode_introduction_point(desc, encoded_ip);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
tor_free(encoded_ip); tor_free(encoded_ip);
smartlist_free(lines); smartlist_free(lines);
} }
@ -535,7 +535,7 @@ test_decode_invalid_intro_point(void *arg)
encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out); encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out);
tt_assert(encoded_ip); tt_assert(encoded_ip);
ip = decode_introduction_point(desc, encoded_ip); ip = decode_introduction_point(desc, encoded_ip);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
tor_free(encoded_ip); tor_free(encoded_ip);
smartlist_free(lines); smartlist_free(lines);
} }
@ -552,7 +552,7 @@ test_decode_invalid_intro_point(void *arg)
encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out); encoded_ip = smartlist_join_strings(lines, "\n", 0, &len_out);
tt_assert(encoded_ip); tt_assert(encoded_ip);
ip = decode_introduction_point(desc, encoded_ip); ip = decode_introduction_point(desc, encoded_ip);
tt_assert(!ip); tt_ptr_op(ip, OP_EQ, NULL);
tor_free(encoded_ip); tor_free(encoded_ip);
smartlist_free(lines); smartlist_free(lines);
} }
@ -812,7 +812,7 @@ test_parse_hs_desc_superencrypted(void *arg)
strlen(bad_superencrypted_text1), strlen(bad_superencrypted_text1),
&encrypted_out); &encrypted_out);
tt_u64_op(retval, OP_EQ, 0); tt_u64_op(retval, OP_EQ, 0);
tt_assert(!encrypted_out); tt_ptr_op(encrypted_out, OP_EQ, NULL);
expect_log_msg_containing("Unrecognized desc auth type"); expect_log_msg_containing("Unrecognized desc auth type");
teardown_capture_of_logs(); teardown_capture_of_logs();
} }
@ -823,7 +823,7 @@ test_parse_hs_desc_superencrypted(void *arg)
strlen(bad_superencrypted_text2), strlen(bad_superencrypted_text2),
&encrypted_out); &encrypted_out);
tt_u64_op(retval, OP_EQ, 0); tt_u64_op(retval, OP_EQ, 0);
tt_assert(!encrypted_out); tt_ptr_op(encrypted_out, OP_EQ, NULL);
expect_log_msg_containing("Bogus desc auth key in HS desc"); expect_log_msg_containing("Bogus desc auth key in HS desc");
teardown_capture_of_logs(); teardown_capture_of_logs();
} }
@ -834,7 +834,7 @@ test_parse_hs_desc_superencrypted(void *arg)
strlen(bad_superencrypted_text3), strlen(bad_superencrypted_text3),
&encrypted_out); &encrypted_out);
tt_u64_op(retval, OP_EQ, 0); tt_u64_op(retval, OP_EQ, 0);
tt_assert(!encrypted_out); tt_ptr_op(encrypted_out, OP_EQ, NULL);
expect_log_msg_containing("Length of descriptor\'s encrypted data " expect_log_msg_containing("Length of descriptor\'s encrypted data "
"is too small."); "is too small.");
teardown_capture_of_logs(); teardown_capture_of_logs();

View File

@ -547,7 +547,7 @@ test_circuitmap_free_all(void)
tt_assert(the_hs_circuitmap); tt_assert(the_hs_circuitmap);
hs_circuitmap_free_all(); hs_circuitmap_free_all();
the_hs_circuitmap = get_hs_circuitmap(); the_hs_circuitmap = get_hs_circuitmap();
tt_assert(!the_hs_circuitmap); tt_ptr_op(the_hs_circuitmap, OP_EQ, NULL);
done: done:
; ;
} }

View File

@ -371,7 +371,7 @@ test_access_service(void *arg)
remove_service(global_map, s); remove_service(global_map, s);
tt_int_op(get_hs_service_map_size(), OP_EQ, 0); tt_int_op(get_hs_service_map_size(), OP_EQ, 0);
query = find_service(global_map, &s->keys.identity_pk); query = find_service(global_map, &s->keys.identity_pk);
tt_assert(!query); tt_ptr_op(query, OP_EQ, NULL);
/* Register back the service in the map. */ /* Register back the service in the map. */
ret = register_service(global_map, s); ret = register_service(global_map, s);
@ -384,7 +384,7 @@ test_access_service(void *arg)
remove_service(global_map, s); remove_service(global_map, s);
tt_int_op(get_hs_service_map_size(), OP_EQ, 0); tt_int_op(get_hs_service_map_size(), OP_EQ, 0);
query = find_service(global_map, &s->keys.identity_pk); query = find_service(global_map, &s->keys.identity_pk);
tt_assert(!query); tt_ptr_op(query, OP_EQ, NULL);
/* Let's try to remove twice for fun. */ /* Let's try to remove twice for fun. */
setup_full_capture_of_logs(LOG_WARN); setup_full_capture_of_logs(LOG_WARN);
remove_service(global_map, s); remove_service(global_map, s);
@ -448,7 +448,7 @@ test_service_intro_point(void *arg)
tt_mem_op(query, OP_EQ, ip, sizeof(hs_service_intro_point_t)); tt_mem_op(query, OP_EQ, ip, sizeof(hs_service_intro_point_t));
query = service_intro_point_find(service, query = service_intro_point_find(service,
(const ed25519_public_key_t *) garbage); (const ed25519_public_key_t *) garbage);
tt_assert(query == NULL); tt_ptr_op(query, OP_EQ, NULL);
/* While at it, can I find the descriptor with the intro point? */ /* While at it, can I find the descriptor with the intro point? */
hs_service_descriptor_t *desc_lookup = hs_service_descriptor_t *desc_lookup =
@ -459,7 +459,7 @@ test_service_intro_point(void *arg)
/* Remove object from service descriptor and make sure it is out. */ /* Remove object from service descriptor and make sure it is out. */
service_intro_point_remove(service, ip); service_intro_point_remove(service, ip);
query = service_intro_point_find(service, &ip->auth_key_kp.pubkey); query = service_intro_point_find(service, &ip->auth_key_kp.pubkey);
tt_assert(query == NULL); tt_ptr_op(query, OP_EQ, NULL);
} }
done: done:
@ -533,9 +533,9 @@ test_helper_functions(void *arg)
/* Break the ident and we should find nothing. */ /* Break the ident and we should find nothing. */
memset(&ident, 0, sizeof(ident)); memset(&ident, 0, sizeof(ident));
get_objects_from_ident(&ident, &s_lookup, &ip_lookup, &desc_lookup); get_objects_from_ident(&ident, &s_lookup, &ip_lookup, &desc_lookup);
tt_assert(s_lookup == NULL); tt_ptr_op(s_lookup, OP_EQ, NULL);
tt_assert(ip_lookup == NULL); tt_ptr_op(ip_lookup, OP_EQ, NULL);
tt_assert(desc_lookup == NULL); tt_ptr_op(desc_lookup, OP_EQ, NULL);
} }
/* Testing get_node_from_intro_point() */ /* Testing get_node_from_intro_point() */
@ -550,7 +550,7 @@ test_helper_functions(void *arg)
} }
} SMARTLIST_FOREACH_END(ls); } SMARTLIST_FOREACH_END(ls);
node = get_node_from_intro_point(ip); node = get_node_from_intro_point(ip);
tt_assert(node == NULL); tt_ptr_op(node, OP_EQ, NULL);
} }
/* Testing can_service_launch_intro_circuit() */ /* Testing can_service_launch_intro_circuit() */

View File

@ -307,7 +307,7 @@ do_parse_test(uint8_t *plaintext, size_t plaintext_len, int phase)
/* Do early parsing */ /* Do early parsing */
parsed_req = rend_service_begin_parse_intro(cell, cell_len, 2, &err_msg); parsed_req = rend_service_begin_parse_intro(cell, cell_len, 2, &err_msg);
tt_assert(parsed_req); tt_assert(parsed_req);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_mem_op(parsed_req->pk,OP_EQ, digest, DIGEST_LEN); tt_mem_op(parsed_req->pk,OP_EQ, digest, DIGEST_LEN);
tt_assert(parsed_req->ciphertext); tt_assert(parsed_req->ciphertext);
tt_assert(parsed_req->ciphertext_len > 0); tt_assert(parsed_req->ciphertext_len > 0);
@ -318,7 +318,7 @@ do_parse_test(uint8_t *plaintext, size_t plaintext_len, int phase)
/* Do decryption */ /* Do decryption */
r = rend_service_decrypt_intro(parsed_req, k, &err_msg); r = rend_service_decrypt_intro(parsed_req, k, &err_msg);
tt_assert(!r); tt_assert(!r);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_assert(parsed_req->plaintext); tt_assert(parsed_req->plaintext);
tt_assert(parsed_req->plaintext_len > 0); tt_assert(parsed_req->plaintext_len > 0);
@ -328,7 +328,7 @@ do_parse_test(uint8_t *plaintext, size_t plaintext_len, int phase)
/* Do late parsing */ /* Do late parsing */
r = rend_service_parse_intro_plaintext(parsed_req, &err_msg); r = rend_service_parse_intro_plaintext(parsed_req, &err_msg);
tt_assert(!r); tt_assert(!r);
tt_assert(!err_msg); tt_ptr_op(err_msg, OP_EQ, NULL);
tt_assert(parsed_req->parsed); tt_assert(parsed_req->parsed);
done: done:

View File

@ -37,19 +37,19 @@ test_keypin_parse_line(void *arg)
ent = keypin_parse_journal_line( ent = keypin_parse_journal_line(
"aGVyZSBpcyBhIGdvb2Qgc2hhMSE?" "aGVyZSBpcyBhIGdvb2Qgc2hhMSE?"
"VGhpcyBlZDI1NTE5IHNjb2ZmcyBhdCB0aGUgc2hhMS4"); "VGhpcyBlZDI1NTE5IHNjb2ZmcyBhdCB0aGUgc2hhMS4");
tt_assert(! ent); tt_ptr_op(ent, OP_EQ, NULL);
/* Bad line: bad base64 in RSA ID */ /* Bad line: bad base64 in RSA ID */
ent = keypin_parse_journal_line( ent = keypin_parse_journal_line(
"aGVyZSBpcyBhIGdv!2Qgc2hhMSE " "aGVyZSBpcyBhIGdv!2Qgc2hhMSE "
"VGhpcyBlZDI1NTE5IHNjb2ZmcyBhdCB0aGUgc2hhMS4"); "VGhpcyBlZDI1NTE5IHNjb2ZmcyBhdCB0aGUgc2hhMS4");
tt_assert(! ent); tt_ptr_op(ent, OP_EQ, NULL);
/* Bad line: bad base64 in Ed25519 */ /* Bad line: bad base64 in Ed25519 */
ent = keypin_parse_journal_line( ent = keypin_parse_journal_line(
"aGVyZSBpcyBhIGdvb2Qgc2hhMSE " "aGVyZSBpcyBhIGdvb2Qgc2hhMSE "
"VGhpcyBlZDI1NTE5IHNjb2ZmcyB!dCB0aGUgc2hhMS4"); "VGhpcyBlZDI1NTE5IHNjb2ZmcyB!dCB0aGUgc2hhMS4");
tt_assert(! ent); tt_ptr_op(ent, OP_EQ, NULL);
done: done:
tor_free(ent); tor_free(ent);

View File

@ -240,8 +240,8 @@ test_link_handshake_certs_ok(void *arg)
tor_assert(c1->handshake_state->authenticated); tor_assert(c1->handshake_state->authenticated);
tt_assert(c1->handshake_state->received_certs_cell); tt_assert(c1->handshake_state->received_certs_cell);
tt_assert(c1->handshake_state->certs->auth_cert == NULL); tt_ptr_op(c1->handshake_state->certs->auth_cert, OP_EQ, NULL);
tt_assert(c1->handshake_state->certs->ed_sign_auth == NULL); tt_ptr_op(c1->handshake_state->certs->ed_sign_auth, OP_EQ, NULL);
tt_assert(c1->handshake_state->certs->id_cert); tt_assert(c1->handshake_state->certs->id_cert);
if (with_ed) { if (with_ed) {
tt_assert(c1->handshake_state->certs->ed_sign_link); tt_assert(c1->handshake_state->certs->ed_sign_link);
@ -250,9 +250,9 @@ test_link_handshake_certs_ok(void *arg)
tt_assert(c1->handshake_state->authenticated_rsa); tt_assert(c1->handshake_state->authenticated_rsa);
tt_assert(c1->handshake_state->authenticated_ed25519); tt_assert(c1->handshake_state->authenticated_ed25519);
} else { } else {
tt_assert(c1->handshake_state->certs->ed_sign_link == NULL); tt_ptr_op(c1->handshake_state->certs->ed_sign_link, OP_EQ, NULL);
tt_assert(c1->handshake_state->certs->ed_rsa_crosscert == NULL); tt_ptr_op(c1->handshake_state->certs->ed_rsa_crosscert, OP_EQ, NULL);
tt_assert(c1->handshake_state->certs->ed_id_sign == NULL); tt_ptr_op(c1->handshake_state->certs->ed_id_sign, OP_EQ, NULL);
tt_assert(c1->handshake_state->authenticated_rsa); tt_assert(c1->handshake_state->authenticated_rsa);
tt_assert(! c1->handshake_state->authenticated_ed25519); tt_assert(! c1->handshake_state->authenticated_ed25519);
} }
@ -278,9 +278,9 @@ test_link_handshake_certs_ok(void *arg)
tt_assert(c2->handshake_state->certs->ed_id_sign); tt_assert(c2->handshake_state->certs->ed_id_sign);
} else { } else {
tt_assert(c2->handshake_state->certs->auth_cert); tt_assert(c2->handshake_state->certs->auth_cert);
tt_assert(c2->handshake_state->certs->ed_sign_auth == NULL); tt_ptr_op(c2->handshake_state->certs->ed_sign_auth, OP_EQ, NULL);
tt_assert(c2->handshake_state->certs->ed_rsa_crosscert == NULL); tt_ptr_op(c2->handshake_state->certs->ed_rsa_crosscert, OP_EQ, NULL);
tt_assert(c2->handshake_state->certs->ed_id_sign == NULL); tt_ptr_op(c2->handshake_state->certs->ed_id_sign, OP_EQ, NULL);
} }
tt_assert(c2->handshake_state->certs->id_cert); tt_assert(c2->handshake_state->certs->id_cert);
tt_assert(tor_mem_is_zero( tt_assert(tor_mem_is_zero(
@ -489,20 +489,20 @@ test_link_handshake_recv_certs_ok(void *arg)
tt_int_op(d->c->handshake_state->authenticated, OP_EQ, 1); tt_int_op(d->c->handshake_state->authenticated, OP_EQ, 1);
tt_int_op(d->c->handshake_state->authenticated_rsa, OP_EQ, 1); tt_int_op(d->c->handshake_state->authenticated_rsa, OP_EQ, 1);
tt_int_op(d->c->handshake_state->received_certs_cell, OP_EQ, 1); tt_int_op(d->c->handshake_state->received_certs_cell, OP_EQ, 1);
tt_assert(d->c->handshake_state->certs->id_cert != NULL); tt_ptr_op(d->c->handshake_state->certs->id_cert, OP_NE, NULL);
tt_assert(d->c->handshake_state->certs->auth_cert == NULL); tt_ptr_op(d->c->handshake_state->certs->auth_cert, OP_EQ, NULL);
if (d->is_ed) { if (d->is_ed) {
tt_assert(d->c->handshake_state->certs->ed_id_sign != NULL); tt_ptr_op(d->c->handshake_state->certs->ed_id_sign, OP_NE, NULL);
tt_assert(d->c->handshake_state->certs->ed_sign_link != NULL); tt_ptr_op(d->c->handshake_state->certs->ed_sign_link, OP_NE, NULL);
tt_assert(d->c->handshake_state->certs->ed_sign_auth == NULL); tt_ptr_op(d->c->handshake_state->certs->ed_sign_auth, OP_EQ, NULL);
tt_assert(d->c->handshake_state->certs->ed_rsa_crosscert != NULL); tt_ptr_op(d->c->handshake_state->certs->ed_rsa_crosscert, OP_NE, NULL);
tt_int_op(d->c->handshake_state->authenticated_ed25519, OP_EQ, 1); tt_int_op(d->c->handshake_state->authenticated_ed25519, OP_EQ, 1);
} else { } else {
tt_assert(d->c->handshake_state->certs->ed_id_sign == NULL); tt_ptr_op(d->c->handshake_state->certs->ed_id_sign, OP_EQ, NULL);
tt_assert(d->c->handshake_state->certs->ed_sign_link == NULL); tt_ptr_op(d->c->handshake_state->certs->ed_sign_link, OP_EQ, NULL);
tt_assert(d->c->handshake_state->certs->ed_sign_auth == NULL); tt_ptr_op(d->c->handshake_state->certs->ed_sign_auth, OP_EQ, NULL);
tt_assert(d->c->handshake_state->certs->ed_rsa_crosscert == NULL); tt_ptr_op(d->c->handshake_state->certs->ed_rsa_crosscert, OP_EQ, NULL);
tt_int_op(d->c->handshake_state->authenticated_ed25519, OP_EQ, 0); tt_int_op(d->c->handshake_state->authenticated_ed25519, OP_EQ, 0);
} }
@ -520,14 +520,14 @@ test_link_handshake_recv_certs_ok_server(void *arg)
tt_int_op(0, OP_EQ, mock_close_called); tt_int_op(0, OP_EQ, mock_close_called);
tt_int_op(d->c->handshake_state->authenticated, OP_EQ, 0); tt_int_op(d->c->handshake_state->authenticated, OP_EQ, 0);
tt_int_op(d->c->handshake_state->received_certs_cell, OP_EQ, 1); tt_int_op(d->c->handshake_state->received_certs_cell, OP_EQ, 1);
tt_assert(d->c->handshake_state->certs->id_cert != NULL); tt_ptr_op(d->c->handshake_state->certs->id_cert, OP_NE, NULL);
tt_assert(d->c->handshake_state->certs->link_cert == NULL); tt_ptr_op(d->c->handshake_state->certs->link_cert, OP_EQ, NULL);
if (d->is_ed) { if (d->is_ed) {
tt_assert(d->c->handshake_state->certs->ed_sign_auth != NULL); tt_ptr_op(d->c->handshake_state->certs->ed_sign_auth, OP_NE, NULL);
tt_assert(d->c->handshake_state->certs->auth_cert == NULL); tt_ptr_op(d->c->handshake_state->certs->auth_cert, OP_EQ, NULL);
} else { } else {
tt_assert(d->c->handshake_state->certs->ed_sign_auth == NULL); tt_ptr_op(d->c->handshake_state->certs->ed_sign_auth, OP_EQ, NULL);
tt_assert(d->c->handshake_state->certs->auth_cert != NULL); tt_ptr_op(d->c->handshake_state->certs->auth_cert, OP_NE, NULL);
} }
done: done:
@ -912,7 +912,7 @@ test_link_handshake_send_authchallenge(void *arg)
tt_int_op(connection_init_or_handshake_state(c1, 0), OP_EQ, 0); tt_int_op(connection_init_or_handshake_state(c1, 0), OP_EQ, 0);
c1->base_.state = OR_CONN_STATE_OR_HANDSHAKING_V3; c1->base_.state = OR_CONN_STATE_OR_HANDSHAKING_V3;
tt_assert(! mock_got_var_cell); tt_ptr_op(mock_got_var_cell, OP_EQ, NULL);
tt_int_op(0, OP_EQ, connection_or_send_auth_challenge_cell(c1)); tt_int_op(0, OP_EQ, connection_or_send_auth_challenge_cell(c1));
cell1 = mock_got_var_cell; cell1 = mock_got_var_cell;
tt_int_op(0, OP_EQ, connection_or_send_auth_challenge_cell(c1)); tt_int_op(0, OP_EQ, connection_or_send_auth_challenge_cell(c1));

View File

@ -107,7 +107,7 @@ test_sigsafe_err(void *arg)
close(STDERR_FILENO); close(STDERR_FILENO);
content = read_file_to_str(fn, 0, NULL); content = read_file_to_str(fn, 0, NULL);
tt_assert(content != NULL); tt_ptr_op(content, OP_NE, NULL);
tor_split_lines(lines, content, (int)strlen(content)); tor_split_lines(lines, content, (int)strlen(content));
tt_int_op(smartlist_len(lines), OP_GE, 5); tt_int_op(smartlist_len(lines), OP_GE, 5);
@ -140,7 +140,7 @@ test_ratelim(void *arg)
char *msg = NULL; char *msg = NULL;
msg = rate_limit_log(&ten_min, now); msg = rate_limit_log(&ten_min, now);
tt_assert(msg != NULL); tt_ptr_op(msg, OP_NE, NULL);
tt_str_op(msg, OP_EQ, ""); /* nothing was suppressed. */ tt_str_op(msg, OP_EQ, ""); /* nothing was suppressed. */
tt_int_op(ten_min.last_allowed, OP_EQ, now); tt_int_op(ten_min.last_allowed, OP_EQ, now);
@ -150,14 +150,14 @@ test_ratelim(void *arg)
for (i = 0; i < 9; ++i) { for (i = 0; i < 9; ++i) {
now += 60; /* one minute has passed. */ now += 60; /* one minute has passed. */
msg = rate_limit_log(&ten_min, now); msg = rate_limit_log(&ten_min, now);
tt_assert(msg == NULL); tt_ptr_op(msg, OP_EQ, NULL);
tt_int_op(ten_min.last_allowed, OP_EQ, start); tt_int_op(ten_min.last_allowed, OP_EQ, start);
tt_int_op(ten_min.n_calls_since_last_time, OP_EQ, i + 1); tt_int_op(ten_min.n_calls_since_last_time, OP_EQ, i + 1);
} }
now += 240; /* Okay, we can be done. */ now += 240; /* Okay, we can be done. */
msg = rate_limit_log(&ten_min, now); msg = rate_limit_log(&ten_min, now);
tt_assert(msg != NULL); tt_ptr_op(msg, OP_NE, NULL);
tt_str_op(msg, OP_EQ, tt_str_op(msg, OP_EQ,
" [9 similar message(s) suppressed in last 600 seconds]"); " [9 similar message(s) suppressed in last 600 seconds]");
done: done:

View File

@ -52,7 +52,7 @@ kill_conn_list_mock(smartlist_t *conns)
{ {
++kill_conn_list_calls; ++kill_conn_list_calls;
tt_assert(conns != NULL); tt_ptr_op(conns, OP_NE, NULL);
kill_conn_list_killed += smartlist_len(conns); kill_conn_list_killed += smartlist_len(conns);
@ -248,7 +248,7 @@ close_for_error_mock(or_connection_t *orconn, int flush)
{ {
(void)flush; (void)flush;
tt_assert(orconn != NULL); tt_ptr_op(orconn, OP_NE, NULL);
++cfe_calls; ++cfe_calls;
done: done:
@ -264,7 +264,7 @@ mark_for_close_oos_mock(connection_t *conn,
(void)line; (void)line;
(void)file; (void)file;
tt_assert(conn != NULL); tt_ptr_op(conn, OP_NE, NULL);
++mark_calls; ++mark_calls;
done: done:
@ -298,8 +298,8 @@ test_oos_kill_conn_list(void *arg)
dir_c2->base_.purpose = DIR_PURPOSE_MIN_; dir_c2->base_.purpose = DIR_PURPOSE_MIN_;
c2 = TO_CONN(dir_c2); c2 = TO_CONN(dir_c2);
tt_assert(c1 != NULL); tt_ptr_op(c1, OP_NE, NULL);
tt_assert(c2 != NULL); tt_ptr_op(c2, OP_NE, NULL);
/* Make list */ /* Make list */
l = smartlist_new(); l = smartlist_new();
@ -345,7 +345,7 @@ get_num_circuits_mock(or_connection_t *conn)
{ {
int circs = 0; int circs = 0;
tt_assert(conn != NULL); tt_ptr_op(conn, OP_NE, NULL);
if (conns_with_circs && if (conns_with_circs &&
smartlist_contains(conns_with_circs, TO_CONN(conn))) { smartlist_contains(conns_with_circs, TO_CONN(conn))) {
@ -397,7 +397,7 @@ test_oos_pick_oos_victims(void *arg)
/* Try picking one */ /* Try picking one */
picked = pick_oos_victims(1); picked = pick_oos_victims(1);
/* It should be the one with circuits */ /* It should be the one with circuits */
tt_assert(picked != NULL); tt_ptr_op(picked, OP_NE, NULL);
tt_int_op(smartlist_len(picked), OP_EQ, 1); tt_int_op(smartlist_len(picked), OP_EQ, 1);
tt_assert(smartlist_contains(picked, smartlist_get(conns_for_mock, 0))); tt_assert(smartlist_contains(picked, smartlist_get(conns_for_mock, 0)));
smartlist_free(picked); smartlist_free(picked);
@ -405,14 +405,14 @@ test_oos_pick_oos_victims(void *arg)
/* Try picking none */ /* Try picking none */
picked = pick_oos_victims(0); picked = pick_oos_victims(0);
/* We should get an empty list */ /* We should get an empty list */
tt_assert(picked != NULL); tt_ptr_op(picked, OP_NE, NULL);
tt_int_op(smartlist_len(picked), OP_EQ, 0); tt_int_op(smartlist_len(picked), OP_EQ, 0);
smartlist_free(picked); smartlist_free(picked);
/* Try picking two */ /* Try picking two */
picked = pick_oos_victims(2); picked = pick_oos_victims(2);
/* We should get both active orconns */ /* We should get both active orconns */
tt_assert(picked != NULL); tt_ptr_op(picked, OP_NE, NULL);
tt_int_op(smartlist_len(picked), OP_EQ, 2); tt_int_op(smartlist_len(picked), OP_EQ, 2);
tt_assert(smartlist_contains(picked, smartlist_get(conns_for_mock, 0))); tt_assert(smartlist_contains(picked, smartlist_get(conns_for_mock, 0)));
tt_assert(smartlist_contains(picked, smartlist_get(conns_for_mock, 1))); tt_assert(smartlist_contains(picked, smartlist_get(conns_for_mock, 1)));

View File

@ -299,7 +299,7 @@ test_have_enough_mem_for_dircache(void *arg)
/* 300 MB RAM available, DirCache enabled */ /* 300 MB RAM available, DirCache enabled */
r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(300), &msg); r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(300), &msg);
tt_int_op(r, OP_EQ, 0); tt_int_op(r, OP_EQ, 0);
tt_assert(!msg); tt_ptr_op(msg, OP_EQ, NULL);
/* 200 MB RAM available, DirCache enabled */ /* 200 MB RAM available, DirCache enabled */
r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(200), &msg); r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(200), &msg);
@ -322,7 +322,7 @@ test_have_enough_mem_for_dircache(void *arg)
/* 300 MB RAM available, DirCache enabled, Bridge */ /* 300 MB RAM available, DirCache enabled, Bridge */
r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(300), &msg); r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(300), &msg);
tt_int_op(r, OP_EQ, 0); tt_int_op(r, OP_EQ, 0);
tt_assert(!msg); tt_ptr_op(msg, OP_EQ, NULL);
/* 200 MB RAM available, DirCache enabled, Bridge */ /* 200 MB RAM available, DirCache enabled, Bridge */
r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(200), &msg); r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(200), &msg);
@ -345,7 +345,7 @@ test_have_enough_mem_for_dircache(void *arg)
/* 200 MB RAM available, DirCache disabled */ /* 200 MB RAM available, DirCache disabled */
r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(200), &msg); r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(200), &msg);
tt_int_op(r, OP_EQ, 0); tt_int_op(r, OP_EQ, 0);
tt_assert(!msg); tt_ptr_op(msg, OP_EQ, NULL);
/* 300 MB RAM available, DirCache disabled */ /* 300 MB RAM available, DirCache disabled */
r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(300), &msg); r = have_enough_mem_for_dircache(opt, MEGABYTEIFY(300), &msg);

View File

@ -59,7 +59,7 @@ test_policy_summary_helper_family_flags(const char *policy_str,
summary = policy_summarize(policy, family); summary = policy_summarize(policy, family);
tt_assert(summary != NULL); tt_ptr_op(summary, OP_NE, NULL);
tt_str_op(summary,OP_EQ, expected_summary); tt_str_op(summary,OP_EQ, expected_summary);
short_policy = parse_short_policy(summary); short_policy = parse_short_policy(summary);
@ -147,7 +147,7 @@ test_policies_general(void *arg)
p = router_parse_addr_policy_item_from_string("reject 192.168.0.0/16:*", -1, p = router_parse_addr_policy_item_from_string("reject 192.168.0.0/16:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
tt_int_op(ADDR_POLICY_REJECT,OP_EQ, p->policy_type); tt_int_op(ADDR_POLICY_REJECT,OP_EQ, p->policy_type);
tor_addr_from_ipv4h(&tar, 0xc0a80000u); tor_addr_from_ipv4h(&tar, 0xc0a80000u);
tt_int_op(0,OP_EQ, tor_addr_compare(&p->addr, &tar, CMP_EXACT)); tt_int_op(0,OP_EQ, tor_addr_compare(&p->addr, &tar, CMP_EXACT));
@ -192,75 +192,75 @@ test_policies_general(void *arg)
policy3 = smartlist_new(); policy3 = smartlist_new();
p = router_parse_addr_policy_item_from_string("reject *:*", -1, p = router_parse_addr_policy_item_from_string("reject *:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy3, p); smartlist_add(policy3, p);
p = router_parse_addr_policy_item_from_string("accept *:*", -1, p = router_parse_addr_policy_item_from_string("accept *:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy3, p); smartlist_add(policy3, p);
policy4 = smartlist_new(); policy4 = smartlist_new();
p = router_parse_addr_policy_item_from_string("accept *:443", -1, p = router_parse_addr_policy_item_from_string("accept *:443", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy4, p); smartlist_add(policy4, p);
p = router_parse_addr_policy_item_from_string("accept *:443", -1, p = router_parse_addr_policy_item_from_string("accept *:443", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy4, p); smartlist_add(policy4, p);
policy5 = smartlist_new(); policy5 = smartlist_new();
p = router_parse_addr_policy_item_from_string("reject 0.0.0.0/8:*", -1, p = router_parse_addr_policy_item_from_string("reject 0.0.0.0/8:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject 169.254.0.0/16:*", -1, p = router_parse_addr_policy_item_from_string("reject 169.254.0.0/16:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject 127.0.0.0/8:*", -1, p = router_parse_addr_policy_item_from_string("reject 127.0.0.0/8:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject 192.168.0.0/16:*", p = router_parse_addr_policy_item_from_string("reject 192.168.0.0/16:*",
-1, &malformed_list); -1, &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject 10.0.0.0/8:*", -1, p = router_parse_addr_policy_item_from_string("reject 10.0.0.0/8:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject 172.16.0.0/12:*", -1, p = router_parse_addr_policy_item_from_string("reject 172.16.0.0/12:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject 80.190.250.90:*", -1, p = router_parse_addr_policy_item_from_string("reject 80.190.250.90:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject *:1-65534", -1, p = router_parse_addr_policy_item_from_string("reject *:1-65534", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("reject *:65535", -1, p = router_parse_addr_policy_item_from_string("reject *:65535", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
p = router_parse_addr_policy_item_from_string("accept *:1-65535", -1, p = router_parse_addr_policy_item_from_string("accept *:1-65535", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy5, p); smartlist_add(policy5, p);
policy6 = smartlist_new(); policy6 = smartlist_new();
p = router_parse_addr_policy_item_from_string("accept 43.3.0.0/9:*", -1, p = router_parse_addr_policy_item_from_string("accept 43.3.0.0/9:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy6, p); smartlist_add(policy6, p);
policy7 = smartlist_new(); policy7 = smartlist_new();
p = router_parse_addr_policy_item_from_string("accept 0.0.0.0/8:*", -1, p = router_parse_addr_policy_item_from_string("accept 0.0.0.0/8:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy7, p); smartlist_add(policy7, p);
tt_int_op(0, OP_EQ, policies_parse_exit_policy(NULL, &policy8, tt_int_op(0, OP_EQ, policies_parse_exit_policy(NULL, &policy8,
@ -282,13 +282,13 @@ test_policies_general(void *arg)
policy10 = smartlist_new(); policy10 = smartlist_new();
p = router_parse_addr_policy_item_from_string("accept6 *:*", -1, p = router_parse_addr_policy_item_from_string("accept6 *:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy10, p); smartlist_add(policy10, p);
policy11 = smartlist_new(); policy11 = smartlist_new();
p = router_parse_addr_policy_item_from_string("reject6 *:*", -1, p = router_parse_addr_policy_item_from_string("reject6 *:*", -1,
&malformed_list); &malformed_list);
tt_assert(p != NULL); tt_ptr_op(p, OP_NE, NULL);
smartlist_add(policy11, p); smartlist_add(policy11, p);
tt_assert(!exit_policy_is_general_exit(policy)); tt_assert(!exit_policy_is_general_exit(policy));
@ -392,21 +392,21 @@ test_policies_general(void *arg)
p = router_parse_addr_policy_item_from_string("acce::abcd", p = router_parse_addr_policy_item_from_string("acce::abcd",
ADDR_POLICY_ACCEPT, ADDR_POLICY_ACCEPT,
&malformed_list); &malformed_list);
tt_assert(!p); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
malformed_list = 0; malformed_list = 0;
p = router_parse_addr_policy_item_from_string("7:1234", p = router_parse_addr_policy_item_from_string("7:1234",
ADDR_POLICY_ACCEPT, ADDR_POLICY_ACCEPT,
&malformed_list); &malformed_list);
tt_assert(!p); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
malformed_list = 0; malformed_list = 0;
p = router_parse_addr_policy_item_from_string("::", p = router_parse_addr_policy_item_from_string("::",
ADDR_POLICY_ACCEPT, ADDR_POLICY_ACCEPT,
&malformed_list); &malformed_list);
tt_assert(!p); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
malformed_list = 0; malformed_list = 0;
@ -968,63 +968,63 @@ test_policies_general(void *arg)
/* Make sure that IPv4 addresses are ignored in accept6/reject6 lines. */ /* Make sure that IPv4 addresses are ignored in accept6/reject6 lines. */
p = router_parse_addr_policy_item_from_string("accept6 1.2.3.4:*", -1, p = router_parse_addr_policy_item_from_string("accept6 1.2.3.4:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(!malformed_list); tt_assert(!malformed_list);
p = router_parse_addr_policy_item_from_string("reject6 2.4.6.0/24:*", -1, p = router_parse_addr_policy_item_from_string("reject6 2.4.6.0/24:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(!malformed_list); tt_assert(!malformed_list);
p = router_parse_addr_policy_item_from_string("accept6 *4:*", -1, p = router_parse_addr_policy_item_from_string("accept6 *4:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(!malformed_list); tt_assert(!malformed_list);
/* Make sure malformed policies are detected as such. */ /* Make sure malformed policies are detected as such. */
p = router_parse_addr_policy_item_from_string("bad_token *4:*", -1, p = router_parse_addr_policy_item_from_string("bad_token *4:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("accept6 **:*", -1, p = router_parse_addr_policy_item_from_string("accept6 **:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("accept */15:*", -1, p = router_parse_addr_policy_item_from_string("accept */15:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("reject6 */:*", -1, p = router_parse_addr_policy_item_from_string("reject6 */:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("accept 127.0.0.1/33:*", -1, p = router_parse_addr_policy_item_from_string("accept 127.0.0.1/33:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("accept6 [::1]/129:*", -1, p = router_parse_addr_policy_item_from_string("accept6 [::1]/129:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("reject 8.8.8.8/-1:*", -1, p = router_parse_addr_policy_item_from_string("reject 8.8.8.8/-1:*", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("reject 8.8.4.4:10-5", -1, p = router_parse_addr_policy_item_from_string("reject 8.8.4.4:10-5", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
p = router_parse_addr_policy_item_from_string("reject 1.2.3.4:-1", -1, p = router_parse_addr_policy_item_from_string("reject 1.2.3.4:-1", -1,
&malformed_list); &malformed_list);
tt_assert(p == NULL); tt_ptr_op(p, OP_EQ, NULL);
tt_assert(malformed_list); tt_assert(malformed_list);
/* Test a too-long policy. */ /* Test a too-long policy. */
@ -1158,7 +1158,7 @@ test_policies_reject_exit_address(void *arg)
* on IPv4-only exits, so policies_parse_exit_policy_reject_private doesn't * on IPv4-only exits, so policies_parse_exit_policy_reject_private doesn't
* need to do anything) */ * need to do anything) */
policies_parse_exit_policy_reject_private(&policy, 0, ipv6_list, 0, 0); policies_parse_exit_policy_reject_private(&policy, 0, ipv6_list, 0, 0);
tt_assert(policy == NULL); tt_ptr_op(policy, OP_EQ, NULL);
/* test that only IPv4 addresses are rejected on an IPv4-only exit */ /* test that only IPv4 addresses are rejected on an IPv4-only exit */
policies_parse_exit_policy_reject_private(&policy, 0, both_list, 0, 0); policies_parse_exit_policy_reject_private(&policy, 0, both_list, 0, 0);
@ -1337,7 +1337,7 @@ test_policies_reject_interface_address(void *arg)
/* test that no addresses are rejected when none are supplied/requested */ /* test that no addresses are rejected when none are supplied/requested */
policies_parse_exit_policy_reject_private(&policy, 0, NULL, 0, 0); policies_parse_exit_policy_reject_private(&policy, 0, NULL, 0, 0);
tt_assert(policy == NULL); tt_ptr_op(policy, OP_EQ, NULL);
/* test that only IPv4 interface addresses are rejected on an IPv4-only exit /* test that only IPv4 interface addresses are rejected on an IPv4-only exit
* (and allow for duplicates) * (and allow for duplicates)
@ -1372,7 +1372,7 @@ test_policies_reject_interface_address(void *arg)
/* test that no addresses are rejected when none are supplied/requested */ /* test that no addresses are rejected when none are supplied/requested */
policies_parse_exit_policy_reject_private(&policy, 0, NULL, 0, 0); policies_parse_exit_policy_reject_private(&policy, 0, NULL, 0, 0);
tt_assert(policy == NULL); tt_ptr_op(policy, OP_EQ, NULL);
/* test that only IPv4 interface addresses are rejected on an IPv4-only exit /* test that only IPv4 interface addresses are rejected on an IPv4-only exit
*/ */
@ -1529,14 +1529,14 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/default", &answer, &errmsg); rv = getinfo_helper_policies(NULL, "exit-policy/default", &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) > 0); tt_assert(strlen(answer) > 0);
tor_free(answer); tor_free(answer);
rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/default", rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/default",
&answer, &errmsg); &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) > 0); tt_assert(strlen(answer) > 0);
tor_free(answer); tor_free(answer);
@ -1551,14 +1551,14 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay", rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay",
&answer, &errmsg); &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) == 0); tt_assert(strlen(answer) == 0);
tor_free(answer); tor_free(answer);
rv = getinfo_helper_policies(NULL, "exit-policy/ipv4", &answer, rv = getinfo_helper_policies(NULL, "exit-policy/ipv4", &answer,
&errmsg); &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
ipv4_len = strlen(answer); ipv4_len = strlen(answer);
tt_assert(ipv4_len == 0 || ipv4_len == strlen(DEFAULT_POLICY_STRING)); tt_assert(ipv4_len == 0 || ipv4_len == strlen(DEFAULT_POLICY_STRING));
tt_assert(ipv4_len == 0 || !strcasecmp(answer, DEFAULT_POLICY_STRING)); tt_assert(ipv4_len == 0 || !strcasecmp(answer, DEFAULT_POLICY_STRING));
@ -1567,7 +1567,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/ipv6", &answer, rv = getinfo_helper_policies(NULL, "exit-policy/ipv6", &answer,
&errmsg); &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
ipv6_len = strlen(answer); ipv6_len = strlen(answer);
tt_assert(ipv6_len == 0 || ipv6_len == strlen(DEFAULT_POLICY_STRING)); tt_assert(ipv6_len == 0 || ipv6_len == strlen(DEFAULT_POLICY_STRING));
tt_assert(ipv6_len == 0 || !strcasecmp(answer, DEFAULT_POLICY_STRING)); tt_assert(ipv6_len == 0 || !strcasecmp(answer, DEFAULT_POLICY_STRING));
@ -1576,7 +1576,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/full", &answer, rv = getinfo_helper_policies(NULL, "exit-policy/full", &answer,
&errmsg); &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
/* It's either empty or it's the default */ /* It's either empty or it's the default */
tt_assert(strlen(answer) == 0 || !strcasecmp(answer, DEFAULT_POLICY_STRING)); tt_assert(strlen(answer) == 0 || !strcasecmp(answer, DEFAULT_POLICY_STRING));
tor_free(answer); tor_free(answer);
@ -1600,7 +1600,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay", rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay",
&answer, &errmsg); &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) > 0); tt_assert(strlen(answer) > 0);
tor_free(answer); tor_free(answer);
@ -1610,7 +1610,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay", rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay",
&answer, &errmsg); &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) > 0); tt_assert(strlen(answer) > 0);
tor_free(answer); tor_free(answer);
@ -1620,7 +1620,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay", rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay",
&answer, &errmsg); &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) > 0); tt_assert(strlen(answer) > 0);
tor_free(answer); tor_free(answer);
@ -1630,14 +1630,14 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay", rv = getinfo_helper_policies(NULL, "exit-policy/reject-private/relay",
&answer, &errmsg); &answer, &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) == 0); tt_assert(strlen(answer) == 0);
tor_free(answer); tor_free(answer);
rv = getinfo_helper_policies(NULL, "exit-policy/ipv4", &answer, rv = getinfo_helper_policies(NULL, "exit-policy/ipv4", &answer,
&errmsg); &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
ipv4_len = strlen(answer); ipv4_len = strlen(answer);
tt_assert(ipv4_len > 0); tt_assert(ipv4_len > 0);
tor_free(answer); tor_free(answer);
@ -1645,7 +1645,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/ipv6", &answer, rv = getinfo_helper_policies(NULL, "exit-policy/ipv6", &answer,
&errmsg); &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
ipv6_len = strlen(answer); ipv6_len = strlen(answer);
tt_assert(ipv6_len > 0); tt_assert(ipv6_len > 0);
tor_free(answer); tor_free(answer);
@ -1653,7 +1653,7 @@ test_policies_getinfo_helper_policies(void *arg)
rv = getinfo_helper_policies(NULL, "exit-policy/full", &answer, rv = getinfo_helper_policies(NULL, "exit-policy/full", &answer,
&errmsg); &errmsg);
tt_int_op(rv, OP_EQ, 0); tt_int_op(rv, OP_EQ, 0);
tt_assert(answer != NULL); tt_ptr_op(answer, OP_NE, NULL);
tt_assert(strlen(answer) > 0); tt_assert(strlen(answer) > 0);
tt_assert(strlen(answer) == ipv4_len + ipv6_len + 1); tt_assert(strlen(answer) == ipv4_len + ipv6_len + 1);
tor_free(answer); tor_free(answer);
@ -2033,12 +2033,10 @@ test_policies_fascist_firewall_choose_address(void *arg)
== &ipv6_or_ap); == &ipv6_or_ap);
/* null both OR addresses */ /* null both OR addresses */
tt_assert(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 0, tt_ptr_op(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 0, FIREWALL_OR_CONNECTION, 0, 1),
FIREWALL_OR_CONNECTION, 0, 1) OP_EQ, NULL);
== NULL); tt_ptr_op(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 1, FIREWALL_OR_CONNECTION, 0, 0),
tt_assert(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 1, OP_EQ, NULL);
FIREWALL_OR_CONNECTION, 0, 0)
== NULL);
/* null preferred Dir addresses */ /* null preferred Dir addresses */
tt_assert(fascist_firewall_choose_address(&ipv4_dir_ap, &n_ipv6_ap, 0, tt_assert(fascist_firewall_choose_address(&ipv4_dir_ap, &n_ipv6_ap, 0,
@ -2049,12 +2047,10 @@ test_policies_fascist_firewall_choose_address(void *arg)
== &ipv6_dir_ap); == &ipv6_dir_ap);
/* null both Dir addresses */ /* null both Dir addresses */
tt_assert(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 0, tt_ptr_op(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 0, FIREWALL_DIR_CONNECTION, 0, 1),
FIREWALL_DIR_CONNECTION, 0, 1) OP_EQ, NULL);
== NULL); tt_ptr_op(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 1, FIREWALL_DIR_CONNECTION, 0, 0),
tt_assert(fascist_firewall_choose_address(&n_ipv4_ap, &n_ipv6_ap, 1, OP_EQ, NULL);
FIREWALL_DIR_CONNECTION, 0, 0)
== NULL);
/* Prefer IPv4 but want IPv6 (contradictory) */ /* Prefer IPv4 but want IPv6 (contradictory) */
tt_assert(fascist_firewall_choose_address(&ipv4_or_ap, &ipv6_or_ap, 0, tt_assert(fascist_firewall_choose_address(&ipv4_or_ap, &ipv6_or_ap, 0,

View File

@ -88,27 +88,27 @@ test_protover_parse_fail(void *arg)
/* random junk */ /* random junk */
elts = parse_protocol_list("!!3@*"); elts = parse_protocol_list("!!3@*");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
/* Missing equals sign in an entry */ /* Missing equals sign in an entry */
elts = parse_protocol_list("Link=4 Haprauxymatyve Desc=9"); elts = parse_protocol_list("Link=4 Haprauxymatyve Desc=9");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
/* Missing word. */ /* Missing word. */
elts = parse_protocol_list("Link=4 =3 Desc=9"); elts = parse_protocol_list("Link=4 =3 Desc=9");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
/* Broken numbers */ /* Broken numbers */
elts = parse_protocol_list("Link=fred"); elts = parse_protocol_list("Link=fred");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
elts = parse_protocol_list("Link=1,fred"); elts = parse_protocol_list("Link=1,fred");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
elts = parse_protocol_list("Link=1,fred,3"); elts = parse_protocol_list("Link=1,fred,3");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
/* Broken range */ /* Broken range */
elts = parse_protocol_list("Link=1,9-8,3"); elts = parse_protocol_list("Link=1,9-8,3");
tt_assert(elts == NULL); tt_ptr_op(elts, OP_EQ, NULL);
done: done:
; ;
@ -151,16 +151,16 @@ test_protover_all_supported(void *arg)
char *msg = NULL; char *msg = NULL;
tt_assert(protover_all_supported(NULL, &msg)); tt_assert(protover_all_supported(NULL, &msg));
tt_assert(msg == NULL); tt_ptr_op(msg, OP_EQ, NULL);
tt_assert(protover_all_supported("", &msg)); tt_assert(protover_all_supported("", &msg));
tt_assert(msg == NULL); tt_ptr_op(msg, OP_EQ, NULL);
// Some things that we do support // Some things that we do support
tt_assert(protover_all_supported("Link=3-4", &msg)); tt_assert(protover_all_supported("Link=3-4", &msg));
tt_assert(msg == NULL); tt_ptr_op(msg, OP_EQ, NULL);
tt_assert(protover_all_supported("Link=3-4 Desc=2", &msg)); tt_assert(protover_all_supported("Link=3-4 Desc=2", &msg));
tt_assert(msg == NULL); tt_ptr_op(msg, OP_EQ, NULL);
// Some things we don't support // Some things we don't support
tt_assert(! protover_all_supported("Wombat=9", &msg)); tt_assert(! protover_all_supported("Wombat=9", &msg));

View File

@ -461,7 +461,7 @@ test_get_pt_proxy_uri(void *arg)
/* Test with no proxy. */ /* Test with no proxy. */
uri = get_pt_proxy_uri(); uri = get_pt_proxy_uri();
tt_assert(uri == NULL); tt_ptr_op(uri, OP_EQ, NULL);
/* Test with a SOCKS4 proxy. */ /* Test with a SOCKS4 proxy. */
options->Socks4Proxy = tor_strdup("192.0.2.1:1080"); options->Socks4Proxy = tor_strdup("192.0.2.1:1080");

View File

@ -946,9 +946,9 @@ test_rend_cache_free_all(void *data)
rend_cache_free_all(); rend_cache_free_all();
tt_assert(!rend_cache); tt_ptr_op(rend_cache, OP_EQ, NULL);
tt_assert(!rend_cache_v2_dir); tt_ptr_op(rend_cache_v2_dir, OP_EQ, NULL);
tt_assert(!rend_cache_failure); tt_ptr_op(rend_cache_failure, OP_EQ, NULL);
tt_assert(!rend_cache_total_allocation); tt_assert(!rend_cache_total_allocation);
done: done:

View File

@ -38,7 +38,7 @@ test_replaycache_alloc(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
done: done:
if (r) replaycache_free(r); if (r) replaycache_free(r);
@ -54,15 +54,15 @@ test_replaycache_badalloc(void *arg)
/* Negative horizon should fail */ /* Negative horizon should fail */
(void)arg; (void)arg;
r = replaycache_new(-600, 300); r = replaycache_new(-600, 300);
tt_assert(r == NULL); tt_ptr_op(r, OP_EQ, NULL);
/* Negative interval should get adjusted to zero */ /* Negative interval should get adjusted to zero */
r = replaycache_new(600, -300); r = replaycache_new(600, -300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
tt_int_op(r->scrub_interval,OP_EQ, 0); tt_int_op(r->scrub_interval,OP_EQ, 0);
replaycache_free(r); replaycache_free(r);
/* Negative horizon and negative interval should still fail */ /* Negative horizon and negative interval should still fail */
r = replaycache_new(-600, -300); r = replaycache_new(-600, -300);
tt_assert(r == NULL); tt_ptr_op(r, OP_EQ, NULL);
done: done:
if (r) replaycache_free(r); if (r) replaycache_free(r);
@ -90,7 +90,7 @@ test_replaycache_miss(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
result = result =
replaycache_add_and_test_internal(1200, r, test_buffer, replaycache_add_and_test_internal(1200, r, test_buffer,
@ -123,7 +123,7 @@ test_replaycache_hit(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
result = result =
replaycache_add_and_test_internal(1200, r, test_buffer, replaycache_add_and_test_internal(1200, r, test_buffer,
@ -161,7 +161,7 @@ test_replaycache_age(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
result = result =
replaycache_add_and_test_internal(1200, r, test_buffer, replaycache_add_and_test_internal(1200, r, test_buffer,
@ -193,7 +193,7 @@ test_replaycache_elapsed(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
result = result =
replaycache_add_and_test_internal(1200, r, test_buffer, replaycache_add_and_test_internal(1200, r, test_buffer,
@ -220,7 +220,7 @@ test_replaycache_noexpire(void *arg)
(void)arg; (void)arg;
r = replaycache_new(0, 0); r = replaycache_new(0, 0);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
result = result =
replaycache_add_and_test_internal(1200, r, test_buffer, replaycache_add_and_test_internal(1200, r, test_buffer,
@ -251,7 +251,7 @@ test_replaycache_scrub(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
/* Set up like in test_replaycache_hit() */ /* Set up like in test_replaycache_hit() */
result = result =
@ -294,7 +294,7 @@ test_replaycache_future(void *arg)
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
/* Set up like in test_replaycache_hit() */ /* Set up like in test_replaycache_hit() */
result = result =
@ -343,7 +343,7 @@ test_replaycache_realtime(void *arg)
/* Test the realtime as well as *_internal() entry points */ /* Test the realtime as well as *_internal() entry points */
(void)arg; (void)arg;
r = replaycache_new(600, 300); r = replaycache_new(600, 300);
tt_assert(r != NULL); tt_ptr_op(r, OP_NE, NULL);
/* This should miss */ /* This should miss */
result = result =

View File

@ -247,7 +247,7 @@ test_router_pick_directory_server_impl(void *arg)
/* No consensus available, fail early */ /* No consensus available, fail early */
rs = router_pick_directory_server_impl(V3_DIRINFO, (const int) 0, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, (const int) 0, NULL);
tt_assert(rs == NULL); tt_ptr_op(rs, OP_EQ, NULL);
construct_consensus(&consensus_text_md); construct_consensus(&consensus_text_md);
tt_assert(consensus_text_md); tt_assert(consensus_text_md);
@ -287,7 +287,7 @@ test_router_pick_directory_server_impl(void *arg)
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
/* We should not fail now we have a consensus and routerstatus_list /* We should not fail now we have a consensus and routerstatus_list
* and nodelist are populated. */ * and nodelist are populated. */
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
/* Manipulate the nodes so we get the dir server we expect */ /* Manipulate the nodes so we get the dir server we expect */
router1_id = tor_malloc(DIGEST_LEN); router1_id = tor_malloc(DIGEST_LEN);
@ -306,7 +306,7 @@ test_router_pick_directory_server_impl(void *arg)
node_router1->is_running = 0; node_router1->is_running = 0;
node_router3->is_running = 0; node_router3->is_running = 0;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router2_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router2_id, DIGEST_LEN));
rs = NULL; rs = NULL;
node_router1->is_running = 1; node_router1->is_running = 1;
@ -319,7 +319,7 @@ test_router_pick_directory_server_impl(void *arg)
node_router1->rs->dir_port = 0; node_router1->rs->dir_port = 0;
node_router3->rs->dir_port = 0; node_router3->rs->dir_port = 0;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router2_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router2_id, DIGEST_LEN));
rs = NULL; rs = NULL;
node_router1->rs->is_v2_dir = 1; node_router1->rs->is_v2_dir = 1;
@ -330,7 +330,7 @@ test_router_pick_directory_server_impl(void *arg)
node_router1->is_valid = 0; node_router1->is_valid = 0;
node_router3->is_valid = 0; node_router3->is_valid = 0;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router2_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router2_id, DIGEST_LEN));
rs = NULL; rs = NULL;
node_router1->is_valid = 1; node_router1->is_valid = 1;
@ -341,7 +341,7 @@ test_router_pick_directory_server_impl(void *arg)
node_router2->rs->last_dir_503_at = now; node_router2->rs->last_dir_503_at = now;
node_router3->rs->last_dir_503_at = now; node_router3->rs->last_dir_503_at = now;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN));
node_router2->rs->last_dir_503_at = 0; node_router2->rs->last_dir_503_at = 0;
node_router3->rs->last_dir_503_at = 0; node_router3->rs->last_dir_503_at = 0;
@ -358,13 +358,13 @@ test_router_pick_directory_server_impl(void *arg)
node_router2->rs->or_port = 443; node_router2->rs->or_port = 443;
node_router3->rs->or_port = 442; node_router3->rs->or_port = 442;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router3_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router3_id, DIGEST_LEN));
node_router1->rs->or_port = 442; node_router1->rs->or_port = 442;
node_router2->rs->or_port = 443; node_router2->rs->or_port = 443;
node_router3->rs->or_port = 444; node_router3->rs->or_port = 444;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN));
/* Fascist firewall and overloaded */ /* Fascist firewall and overloaded */
@ -373,7 +373,7 @@ test_router_pick_directory_server_impl(void *arg)
node_router3->rs->or_port = 442; node_router3->rs->or_port = 442;
node_router3->rs->last_dir_503_at = now; node_router3->rs->last_dir_503_at = now;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN));
node_router3->rs->last_dir_503_at = 0; node_router3->rs->last_dir_503_at = 0;
@ -391,7 +391,7 @@ test_router_pick_directory_server_impl(void *arg)
node_router3->rs->dir_port = 81; node_router3->rs->dir_port = 81;
node_router1->rs->last_dir_503_at = now; node_router1->rs->last_dir_503_at = now;
rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL); rs = router_pick_directory_server_impl(V3_DIRINFO, flags, NULL);
tt_assert(rs != NULL); tt_ptr_op(rs, OP_NE, NULL);
tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN)); tt_assert(tor_memeq(rs->identity_digest, router1_id, DIGEST_LEN));
node_router1->rs->last_dir_503_at = 0; node_router1->rs->last_dir_503_at = 0;

View File

@ -68,7 +68,7 @@ static void test_scheduler_queue_heuristic(void *arg);
static void static void
mock_event_free_all(void) mock_event_free_all(void)
{ {
tt_assert(mock_event_base != NULL); tt_ptr_op(mock_event_base, OP_NE, NULL);
if (mock_event_base) { if (mock_event_base) {
event_base_free(mock_event_base); event_base_free(mock_event_base);
@ -104,7 +104,7 @@ mock_event_init(void)
event_config_free(cfg); event_config_free(cfg);
} }
tt_assert(mock_event_base != NULL); tt_ptr_op(mock_event_base, OP_NE, NULL);
done: done:
return; return;
@ -181,7 +181,7 @@ channel_flush_some_cells_mock(channel_t *chan, ssize_t num_cells)
char unlimited = 0; char unlimited = 0;
flush_mock_channel_t *found = NULL; flush_mock_channel_t *found = NULL;
tt_assert(chan != NULL); tt_ptr_op(chan, OP_NE, NULL);
if (chan) { if (chan) {
if (num_cells < 0) { if (num_cells < 0) {
num_cells = 0; num_cells = 0;
@ -234,8 +234,8 @@ circuitmux_compare_muxes_mock(circuitmux_t *cmux_1,
{ {
int result = 0; int result = 0;
tt_assert(cmux_1 != NULL); tt_ptr_op(cmux_1, OP_NE, NULL);
tt_assert(cmux_2 != NULL); tt_ptr_op(cmux_2, OP_NE, NULL);
if (cmux_1 != cmux_2) { if (cmux_1 != cmux_2) {
if (cmux_1 == mock_ccm_tgt_1 && cmux_2 == mock_ccm_tgt_2) result = -1; if (cmux_1 == mock_ccm_tgt_1 && cmux_2 == mock_ccm_tgt_2) result = -1;
@ -261,7 +261,7 @@ circuitmux_get_policy_mock(circuitmux_t *cmux)
{ {
const circuitmux_policy_t *result = NULL; const circuitmux_policy_t *result = NULL;
tt_assert(cmux != NULL); tt_ptr_op(cmux, OP_NE, NULL);
if (cmux) { if (cmux) {
if (cmux == mock_cgp_tgt_1) result = mock_cgp_val_1; if (cmux == mock_cgp_tgt_1) result = mock_cgp_val_1;
else if (cmux == mock_cgp_tgt_2) result = mock_cgp_val_2; else if (cmux == mock_cgp_tgt_2) result = mock_cgp_val_2;
@ -515,8 +515,8 @@ test_scheduler_initfree(void *arg)
scheduler_init(); scheduler_init();
tt_assert(channels_pending != NULL); tt_ptr_op(channels_pending, OP_NE, NULL);
tt_assert(run_sched_ev != NULL); tt_ptr_op(run_sched_ev, OP_NE, NULL);
scheduler_free_all(); scheduler_free_all();

View File

@ -761,7 +761,7 @@ test_state_load_from_disk(void *arg)
/* State should be non-existent at this point. */ /* State should be non-existent at this point. */
the_sr_state = get_sr_state(); the_sr_state = get_sr_state();
tt_assert(!the_sr_state); tt_ptr_op(the_sr_state, OP_EQ, NULL);
/* Now try to load the correct file! */ /* Now try to load the correct file! */
ret = disk_state_load_from_disk_impl(sr_state_path); ret = disk_state_load_from_disk_impl(sr_state_path);
@ -992,7 +992,7 @@ test_sr_get_majority_srv_from_votes(void *arg)
/* Since it's only one vote with an SRV, it should not achieve majority and /* Since it's only one vote with an SRV, it should not achieve majority and
hence no SRV will be returned. */ hence no SRV will be returned. */
chosen_srv = get_majority_srv_from_votes(votes, 1); chosen_srv = get_majority_srv_from_votes(votes, 1);
tt_assert(!chosen_srv); tt_ptr_op(chosen_srv, OP_EQ, NULL);
{ /* Now put in 8 more votes. Let SRV_1 have majority. */ { /* Now put in 8 more votes. Let SRV_1 have majority. */
int i; int i;
@ -1018,7 +1018,7 @@ test_sr_get_majority_srv_from_votes(void *arg)
requirement. So still not picking an SRV. */ requirement. So still not picking an SRV. */
set_num_srv_agreements(8); set_num_srv_agreements(8);
chosen_srv = get_majority_srv_from_votes(votes, 1); chosen_srv = get_majority_srv_from_votes(votes, 1);
tt_assert(!chosen_srv); tt_ptr_op(chosen_srv, OP_EQ, NULL);
/* We will now lower the AuthDirNumSRVAgreements requirement by tweaking the /* We will now lower the AuthDirNumSRVAgreements requirement by tweaking the
* consensus parameter and we will try again. This time it should work. */ * consensus parameter and we will try again. This time it should work. */
@ -1166,7 +1166,7 @@ test_state_transition(void *arg)
state_rotate_srv(); state_rotate_srv();
prev = sr_state_get_previous_srv(); prev = sr_state_get_previous_srv();
tt_assert(prev == cur); tt_assert(prev == cur);
tt_assert(!sr_state_get_current_srv()); tt_ptr_op(sr_state_get_current_srv(), OP_EQ, NULL);
sr_state_clean_srvs(); sr_state_clean_srvs();
} }
@ -1201,8 +1201,8 @@ test_state_transition(void *arg)
/* Cleanup of SRVs. */ /* Cleanup of SRVs. */
{ {
sr_state_clean_srvs(); sr_state_clean_srvs();
tt_assert(!sr_state_get_current_srv()); tt_ptr_op(sr_state_get_current_srv(), OP_EQ, NULL);
tt_assert(!sr_state_get_previous_srv()); tt_ptr_op(sr_state_get_previous_srv(), OP_EQ, NULL);
} }
done: done:

View File

@ -338,7 +338,7 @@ test_storagedir_read_labeled(void *arg)
tt_assert(labels->next->next); tt_assert(labels->next->next);
tt_str_op(labels->next->next->key, OP_EQ, "Yadda"); tt_str_op(labels->next->next->key, OP_EQ, "Yadda");
tt_str_op(labels->next->next->value, OP_EQ, "yadda."); tt_str_op(labels->next->next->value, OP_EQ, "yadda.");
tt_assert(labels->next->next->next == NULL); tt_ptr_op(labels->next->next->next, OP_EQ, NULL);
/* Try reading this time. */ /* Try reading this time. */
sz = 0; sz = 0;

View File

@ -136,7 +136,7 @@ test_tortls_tor_tls_new(void *data)
SSL_CTX_free(client_tls_context->ctx); SSL_CTX_free(client_tls_context->ctx);
client_tls_context->ctx = NULL; client_tls_context->ctx = NULL;
tls = tor_tls_new(-1, 0); tls = tor_tls_new(-1, 0);
tt_assert(!tls); tt_ptr_op(tls, OP_EQ, NULL);
#ifndef OPENSSL_OPAQUE #ifndef OPENSSL_OPAQUE
method = give_me_a_test_method(); method = give_me_a_test_method();
@ -144,7 +144,7 @@ test_tortls_tor_tls_new(void *data)
method->num_ciphers = fake_num_ciphers; method->num_ciphers = fake_num_ciphers;
client_tls_context->ctx = ctx; client_tls_context->ctx = ctx;
tls = tor_tls_new(-1, 0); tls = tor_tls_new(-1, 0);
tt_assert(!tls); tt_ptr_op(tls, OP_EQ, NULL);
#endif #endif
done: done:

View File

@ -70,7 +70,7 @@ test_util_read_until_eof_impl(const char *fname, size_t file_len,
fd = open(fifo_name, O_RDONLY|O_BINARY); fd = open(fifo_name, O_RDONLY|O_BINARY);
tt_int_op(fd, OP_GE, 0); tt_int_op(fd, OP_GE, 0);
str = read_file_to_str_until_eof(fd, read_limit, &sz); str = read_file_to_str_until_eof(fd, read_limit, &sz);
tt_assert(str != NULL); tt_ptr_op(str, OP_NE, NULL);
if (read_limit < file_len) if (read_limit < file_len)
tt_int_op(sz, OP_EQ, read_limit); tt_int_op(sz, OP_EQ, read_limit);
@ -1674,14 +1674,14 @@ test_util_config_line_crlf(void *arg)
tt_assert(str); tt_assert(str);
tt_str_op(k,OP_EQ,"Hello"); tt_str_op(k,OP_EQ,"Hello");
tt_str_op(v,OP_EQ,"world"); tt_str_op(v,OP_EQ,"world");
tt_assert(!err); tt_ptr_op(err, OP_EQ, NULL);
tor_free(k); tor_free(v); tor_free(k); tor_free(v);
str = parse_config_line_from_str_verbose(str, &k, &v, &err); str = parse_config_line_from_str_verbose(str, &k, &v, &err);
tt_assert(str); tt_assert(str);
tt_str_op(k,OP_EQ,"Hello"); tt_str_op(k,OP_EQ,"Hello");
tt_str_op(v,OP_EQ,"nice big world"); tt_str_op(v,OP_EQ,"nice big world");
tt_assert(!err); tt_ptr_op(err, OP_EQ, NULL);
tor_free(k); tor_free(v); tor_free(k); tor_free(v);
tt_str_op(str,OP_EQ, ""); tt_str_op(str,OP_EQ, "");
@ -1941,7 +1941,7 @@ test_util_strmisc(void *arg)
tt_assert(!tor_mem_is_zero(buf, 10)); tt_assert(!tor_mem_is_zero(buf, 10));
/* Test 'escaped' */ /* Test 'escaped' */
tt_assert(NULL == escaped(NULL)); tt_ptr_op(escaped(NULL), OP_EQ, NULL);
tt_str_op("\"\"",OP_EQ, escaped("")); tt_str_op("\"\"",OP_EQ, escaped(""));
tt_str_op("\"abcd\"",OP_EQ, escaped("abcd")); tt_str_op("\"abcd\"",OP_EQ, escaped("abcd"));
tt_str_op("\"\\\\ \\n\\r\\t\\\"\\'\"",OP_EQ, escaped("\\ \n\r\t\"'")); tt_str_op("\"\\\\ \\n\\r\\t\\\"\\'\"",OP_EQ, escaped("\\ \n\r\t\"'"));
@ -1999,23 +1999,23 @@ test_util_strmisc(void *arg)
/* Test memmem and memstr */ /* Test memmem and memstr */
{ {
const char *haystack = "abcde"; const char *haystack = "abcde";
tt_assert(!tor_memmem(haystack, 5, "ef", 2)); tt_ptr_op(tor_memmem(haystack, 5, "ef", 2), OP_EQ, NULL);
tt_ptr_op(tor_memmem(haystack, 5, "cd", 2),OP_EQ, haystack + 2); tt_ptr_op(tor_memmem(haystack, 5, "cd", 2),OP_EQ, haystack + 2);
tt_ptr_op(tor_memmem(haystack, 5, "cde", 3),OP_EQ, haystack + 2); tt_ptr_op(tor_memmem(haystack, 5, "cde", 3),OP_EQ, haystack + 2);
tt_assert(!tor_memmem(haystack, 4, "cde", 3)); tt_ptr_op(tor_memmem(haystack, 4, "cde", 3), OP_EQ, NULL);
haystack = "ababcad"; haystack = "ababcad";
tt_ptr_op(tor_memmem(haystack, 7, "abc", 3),OP_EQ, haystack + 2); tt_ptr_op(tor_memmem(haystack, 7, "abc", 3),OP_EQ, haystack + 2);
tt_ptr_op(tor_memmem(haystack, 7, "ad", 2),OP_EQ, haystack + 5); tt_ptr_op(tor_memmem(haystack, 7, "ad", 2),OP_EQ, haystack + 5);
tt_ptr_op(tor_memmem(haystack, 7, "cad", 3),OP_EQ, haystack + 4); tt_ptr_op(tor_memmem(haystack, 7, "cad", 3),OP_EQ, haystack + 4);
tt_assert(!tor_memmem(haystack, 7, "dadad", 5)); tt_ptr_op(tor_memmem(haystack, 7, "dadad", 5), OP_EQ, NULL);
tt_assert(!tor_memmem(haystack, 7, "abcdefghij", 10)); tt_ptr_op(tor_memmem(haystack, 7, "abcdefghij", 10), OP_EQ, NULL);
/* memstr */ /* memstr */
tt_ptr_op(tor_memstr(haystack, 7, "abc"),OP_EQ, haystack + 2); tt_ptr_op(tor_memstr(haystack, 7, "abc"),OP_EQ, haystack + 2);
tt_ptr_op(tor_memstr(haystack, 7, "cad"),OP_EQ, haystack + 4); tt_ptr_op(tor_memstr(haystack, 7, "cad"),OP_EQ, haystack + 4);
tt_assert(!tor_memstr(haystack, 6, "cad")); tt_ptr_op(tor_memstr(haystack, 6, "cad"), OP_EQ, NULL);
tt_assert(!tor_memstr(haystack, 7, "cadd")); tt_ptr_op(tor_memstr(haystack, 7, "cadd"), OP_EQ, NULL);
tt_assert(!tor_memstr(haystack, 7, "fe")); tt_ptr_op(tor_memstr(haystack, 7, "fe"), OP_EQ, NULL);
tt_assert(!tor_memstr(haystack, 7, "ababcade")); tt_ptr_op(tor_memstr(haystack, 7, "ababcade"), OP_EQ, NULL);
} }
/* Test hex_str */ /* Test hex_str */
@ -2260,15 +2260,15 @@ test_util_compress_impl(compress_method_t method)
tt_assert(tor_compress_supports_method(method)); tt_assert(tor_compress_supports_method(method));
if (method != NO_METHOD) { if (method != NO_METHOD) {
tt_assert(tor_compress_version_str(method) != NULL); tt_ptr_op(tor_compress_version_str(method), OP_NE, NULL);
tt_assert(tor_compress_header_version_str(method) != NULL); tt_ptr_op(tor_compress_header_version_str(method), OP_NE, NULL);
} }
buf1 = tor_strdup("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAZ"); buf1 = tor_strdup("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAZ");
tt_assert(detect_compression_method(buf1, strlen(buf1)) == UNKNOWN_METHOD); tt_assert(detect_compression_method(buf1, strlen(buf1)) == UNKNOWN_METHOD);
tt_assert(!tor_compress(&buf2, &len1, buf1, strlen(buf1)+1, method)); tt_assert(!tor_compress(&buf2, &len1, buf1, strlen(buf1)+1, method));
tt_assert(buf2 != NULL); tt_ptr_op(buf2, OP_NE, NULL);
if (method == NO_METHOD) { if (method == NO_METHOD) {
// The identity transform doesn't actually compress, and it isn't // The identity transform doesn't actually compress, and it isn't
// detectable as "the identity transform." // detectable as "the identity transform."
@ -2280,7 +2280,7 @@ test_util_compress_impl(compress_method_t method)
} }
tt_assert(!tor_uncompress(&buf3, &len2, buf2, len1, method, 1, LOG_INFO)); tt_assert(!tor_uncompress(&buf3, &len2, buf2, len1, method, 1, LOG_INFO));
tt_assert(buf3 != NULL); tt_ptr_op(buf3, OP_NE, NULL);
tt_int_op(strlen(buf1) + 1, OP_EQ, len2); tt_int_op(strlen(buf1) + 1, OP_EQ, len2);
tt_str_op(buf1, OP_EQ, buf3); tt_str_op(buf1, OP_EQ, buf3);
tt_int_op(buf3[len2], OP_EQ, 0); tt_int_op(buf3[len2], OP_EQ, 0);
@ -2327,7 +2327,7 @@ test_util_compress_impl(compress_method_t method)
if (method != NO_METHOD) { if (method != NO_METHOD) {
tt_assert(tor_uncompress(&buf3, &len2, buf2, len1-16, tt_assert(tor_uncompress(&buf3, &len2, buf2, len1-16,
method, 1, LOG_INFO)); method, 1, LOG_INFO));
tt_assert(buf3 == NULL); tt_ptr_op(buf3, OP_EQ, NULL);
} }
done: done:
@ -2534,7 +2534,7 @@ test_util_mmap(void *arg)
crypto_rand(buf, buflen); crypto_rand(buf, buflen);
mapping = tor_mmap_file(fname1); mapping = tor_mmap_file(fname1);
tt_assert(! mapping); tt_ptr_op(mapping, OP_EQ, NULL);
write_str_to_file(fname1, "Short file.", 1); write_str_to_file(fname1, "Short file.", 1);
@ -2563,7 +2563,7 @@ test_util_mmap(void *arg)
/* Make sure that we fail to map a no-longer-existent file. */ /* Make sure that we fail to map a no-longer-existent file. */
mapping = tor_mmap_file(fname1); mapping = tor_mmap_file(fname1);
tt_assert(! mapping); tt_ptr_op(mapping, OP_EQ, NULL);
/* Now try a big file that stretches across a few pages and isn't aligned */ /* Now try a big file that stretches across a few pages and isn't aligned */
write_bytes_to_file(fname2, buf, buflen, 1); write_bytes_to_file(fname2, buf, buflen, 1);
@ -3631,8 +3631,8 @@ test_util_strtok(void *arg)
} }
tor_snprintf(buf, sizeof(buf), "%s", pad1); tor_snprintf(buf, sizeof(buf), "%s", pad1);
tor_snprintf(buf2, sizeof(buf2), "%s", pad2); tor_snprintf(buf2, sizeof(buf2), "%s", pad2);
tt_assert(NULL == tor_strtok_r_impl(buf, " ", &cp1)); tt_ptr_op(tor_strtok_r_impl(buf, " ", &cp1), OP_EQ, NULL);
tt_assert(NULL == tor_strtok_r_impl(buf2, ".!..;!", &cp2)); tt_ptr_op(tor_strtok_r_impl(buf2, ".!..;!", &cp2), OP_EQ, NULL);
tor_snprintf(buf, sizeof(buf), tor_snprintf(buf, sizeof(buf),
"%sGraved on the dark in gestures of descent%s", pad1, pad1); "%sGraved on the dark in gestures of descent%s", pad1, pad1);
@ -4376,7 +4376,7 @@ test_util_split_lines(void *ptr)
/* Check we have not got too many lines */ /* Check we have not got too many lines */
tt_int_op(MAX_SPLIT_LINE_COUNT, OP_GT, j); tt_int_op(MAX_SPLIT_LINE_COUNT, OP_GT, j);
/* Check that there actually should be a line here */ /* Check that there actually should be a line here */
tt_assert(tests[i].split_line[j] != NULL); tt_ptr_op(tests[i].split_line[j], OP_NE, NULL);
log_info(LD_GENERAL, "Line %d of test %d, should be <%s>", log_info(LD_GENERAL, "Line %d of test %d, should be <%s>",
j, i, tests[i].split_line[j]); j, i, tests[i].split_line[j]);
/* Check that the line is as expected */ /* Check that the line is as expected */
@ -5556,25 +5556,25 @@ test_util_pwdb(void *arg)
/* Uncached case. */ /* Uncached case. */
/* Let's assume that we exist. */ /* Let's assume that we exist. */
me = tor_getpwuid(getuid()); me = tor_getpwuid(getuid());
tt_assert(me != NULL); tt_ptr_op(me, OP_NE, NULL);
name = tor_strdup(me->pw_name); name = tor_strdup(me->pw_name);
/* Uncached case */ /* Uncached case */
me2 = tor_getpwnam(name); me2 = tor_getpwnam(name);
tt_assert(me2 != NULL); tt_ptr_op(me2, OP_NE, NULL);
tt_int_op(me2->pw_uid, OP_EQ, getuid()); tt_int_op(me2->pw_uid, OP_EQ, getuid());
/* Cached case */ /* Cached case */
me3 = tor_getpwuid(getuid()); me3 = tor_getpwuid(getuid());
tt_assert(me3 != NULL); tt_ptr_op(me3, OP_NE, NULL);
tt_str_op(me3->pw_name, OP_EQ, name); tt_str_op(me3->pw_name, OP_EQ, name);
me3 = tor_getpwnam(name); me3 = tor_getpwnam(name);
tt_assert(me3 != NULL); tt_ptr_op(me3, OP_NE, NULL);
tt_int_op(me3->pw_uid, OP_EQ, getuid()); tt_int_op(me3->pw_uid, OP_EQ, getuid());
dir = get_user_homedir(name); dir = get_user_homedir(name);
tt_assert(dir != NULL); tt_ptr_op(dir, OP_NE, NULL);
/* Try failing cases. First find a user that doesn't exist by name */ /* Try failing cases. First find a user that doesn't exist by name */
char randbytes[4]; char randbytes[4];
@ -5594,7 +5594,7 @@ test_util_pwdb(void *arg)
/* We should do a LOG_ERR */ /* We should do a LOG_ERR */
setup_full_capture_of_logs(LOG_ERR); setup_full_capture_of_logs(LOG_ERR);
dir = get_user_homedir(badname); dir = get_user_homedir(badname);
tt_assert(dir == NULL); tt_ptr_op(dir, OP_EQ, NULL);
expect_log_msg_containing("not found"); expect_log_msg_containing("not found");
tt_int_op(smartlist_len(mock_saved_logs()), OP_EQ, 1); tt_int_op(smartlist_len(mock_saved_logs()), OP_EQ, 1);
teardown_capture_of_logs(); teardown_capture_of_logs();

View File

@ -78,7 +78,7 @@ run_util_spawn_background(const char *argv[], const char *expected_out,
return; return;
} }
tt_assert(process_handle != NULL); tt_ptr_op(process_handle, OP_NE, NULL);
/* When a spawned process forks, fails, then exits very quickly, /* When a spawned process forks, fails, then exits very quickly,
* (this typically occurs when exec fails) * (this typically occurs when exec fails)