diff options
author | Nick Mathewson <nickm@torproject.org> | 2018-06-20 07:53:22 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2018-06-20 07:53:22 -0400 |
commit | 5acbcf150e7c75f0a9bf6e9d8a4f6f5bec7d549a (patch) | |
tree | cc3e9f36d6ee43a5def5e784dd918de815167330 | |
parent | 152e4a1e5036e9456f98f7c647a3dc72d24b0f5e (diff) | |
parent | 38cb638c325bc2612befc8176c545b1bcae9834f (diff) | |
download | tor-5acbcf150e7c75f0a9bf6e9d8a4f6f5bec7d549a.tar.gz tor-5acbcf150e7c75f0a9bf6e9d8a4f6f5bec7d549a.zip |
Merge branch 'maint-0.3.4'
-rw-r--r-- | changes/bug26196 | 7 | ||||
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | src/test/test.h | 2 | ||||
-rw-r--r-- | src/test/test_bridges.c | 6 |
4 files changed, 11 insertions, 5 deletions
diff --git a/changes/bug26196 b/changes/bug26196 new file mode 100644 index 0000000000..e63f09a2d6 --- /dev/null +++ b/changes/bug26196 @@ -0,0 +1,7 @@ + o Minor bugfixes (testing, compilation): + - Refrain from trying to get an item from empty smartlist in + test_bridges_clear_bridge_list. Set DEBUG_SMARTLIST in unit + tests to catch improper smartlist usage. Furthermore, + enable DEBUG_SMARTLIST globally when build is configured + with fragile hardening. Fixes bug 26196; bugfix on + 0.3.4.1-alpha. diff --git a/configure.ac b/configure.ac index 48ca5bae14..1b57361e02 100644 --- a/configure.ac +++ b/configure.ac @@ -176,6 +176,7 @@ AC_ARG_ENABLE(fragile-hardening, AS_HELP_STRING(--enable-fragile-hardening, [enable more fragile and expensive compiler hardening; makes Tor slower])) if test "x$enable_expensive_hardening" = "xyes" || test "x$enable_fragile_hardening" = "xyes"; then fragile_hardening="yes" + AC_DEFINE(DEBUG_SMARTLIST, 1, [Enable smartlist debugging]) fi dnl Linker hardening options diff --git a/src/test/test.h b/src/test/test.h index 3095d54e33..63b2b30746 100644 --- a/src/test/test.h +++ b/src/test/test.h @@ -11,6 +11,8 @@ * \brief Macros and functions used by unit tests. */ +#define DEBUG_SMARTLIST 1 + #include "compat.h" #include "tinytest.h" #define TT_EXIT_TEST_FUNCTION STMT_BEGIN goto done; STMT_END diff --git a/src/test/test_bridges.c b/src/test/test_bridges.c index c4a4cacd98..c44f791e0d 100644 --- a/src/test/test_bridges.c +++ b/src/test/test_bridges.c @@ -140,7 +140,6 @@ test_bridges_clear_bridge_list(void *arg) const smartlist_t *bridgelist; const smartlist_t *bridgelist_after; const bridge_info_t *bridge; - const bridge_info_t *bridge_after; helper_add_bridges_to_bridgelist(arg); bridgelist = bridge_list_get(); @@ -152,10 +151,7 @@ test_bridges_clear_bridge_list(void *arg) clear_bridge_list(); bridgelist_after = bridge_list_get(); tt_ptr_op(bridgelist_after, OP_NE, NULL); - - bridge_after = smartlist_get(bridgelist, 0); - // There now shouldn't be a first bridge - tt_ptr_op(bridge_after, OP_EQ, NULL); + tt_int_op(smartlist_len(bridgelist_after), OP_EQ, 0); done: return; |