Nick Mathewson
69ea4450ca
scan-build: fix a crash-on-fail possibility in test_policy.c
2014-04-18 20:33:21 -04:00
Nick Mathewson
0175fcaf7c
Fix uninitialized-ram free in unit tests
...
Fix on fb595922; bug not in any released Tor. Found with
--enable-expensive-hardening.
2014-04-17 01:03:10 -04:00
Nick Mathewson
1126ce1d86
Fix compiler warning on test_status.c
2014-04-15 15:19:41 -04:00
dana koch
3ce3984772
Uplift status.c unit test coverage with new test cases and macros.
...
A new set of unit test cases are provided, as well as introducing
an alternative paradigm and macros to support it. Primarily, each test
case is given its own namespace, in order to isolate tests from each
other. We do this by in the usual fashion, by appending module and
submodule names to our symbols. New macros assist by reducing friction
for this and other tasks, like overriding a function in the global
namespace with one in the current namespace, or declaring integer
variables to assist tracking how many times a mock has been called.
A set of tests for a small-scale module has been included in this
commit, in order to highlight how the paradigm can be used. This
suite gives 100% coverage to status.c in test execution.
2014-04-15 15:00:34 -04:00
Nick Mathewson
0820031419
Merge remote-tracking branch 'asn/bug11486'
2014-04-12 21:42:45 -04:00
George Kadianakis
1ec4d52e59
Add another unit test for parse_bridge_line().
2014-04-11 21:06:53 +03:00
Nick Mathewson
2f73525883
Fix a dumb C bug in the unit tests for 9841
...
Fixes bug 11460; bug only affects unit tests and is not in any
released version of Tor.
2014-04-09 09:20:25 -04:00
Nick Mathewson
fa6b80d6e5
Merge remote-tracking branch 'public/bug10431'
2014-04-09 08:29:21 -04:00
Nick Mathewson
b933fdcc11
Move existing policy tests from test.c to new test_policy.c
2014-04-08 14:14:12 -04:00
Nick Mathewson
d0af665758
Remove unused extern decl for a nonexistent test suite
2014-04-08 14:10:59 -04:00
Nick Mathewson
245f273aaf
Merge branch 'bug7952_final'
...
Conflicts:
src/test/include.am
src/test/test.c
2014-04-08 13:55:02 -04:00
rl1987
51e13cd1ad
Making entire exit policy available to Tor controller.
2014-04-08 13:50:02 -04:00
Nick Mathewson
fffc59b0e9
Merge remote-tracking branch 'public/bug9841_025'
2014-04-08 12:06:03 -04:00
Nick Mathewson
f0bce2dc35
Fix some harmless/untriggerable memory leaks found by coverity
2014-04-07 23:20:13 -04:00
Nick Mathewson
595303fd1e
Merge remote-tracking branch 'public/bug10363_024_squashed'
2014-04-07 23:03:04 -04:00
Nick Mathewson
9dd115d6b5
Another 10363 instance: this one in tor_memmem fallback code
2014-04-07 22:56:42 -04:00
Nick Mathewson
2ff664ee20
Merge remote-tracking branch 'public/bug10801_024'
...
Conflicts:
src/common/address.c
src/or/config.c
2014-04-05 14:50:57 -04:00
Nick Mathewson
b3469e4207
Make tor_addr_port_parse handle portless IPv6 addresses correctly.
...
(Not a bugfix on any Tor release; before 10801_024, it didn't handle
portless addresses at all.)
2014-04-05 14:41:37 -04:00
Nick Mathewson
eefa3ebc78
Add a test for default/port conflicts in tor_addr_port_parse
2014-04-05 14:18:39 -04:00
Nick Mathewson
d22ce149c8
Test for circuit_set_rend_token(.,.,NULL)
2014-04-04 12:06:54 -04:00
Nick Mathewson
da908a593f
Unit tests for connection_edge_process_resolved_cell
...
Also rename a function to be more accurate (resolve->resolved)
2014-04-02 15:38:00 -04:00
Nick Mathewson
4215c801ff
Tests for resolved_cell_parse
2014-04-02 15:38:00 -04:00
Nick Mathewson
fc9e84062b
Merge remote-tracking branch 'public/bug4645'
...
Conflicts:
src/or/dirserv.c
2014-04-01 21:49:01 -04:00
Nick Mathewson
6bef082d0a
Merge remote-tracking branch 'public/bug11232'
2014-04-01 09:39:48 -04:00
Nick Mathewson
8e94d5f22e
Check return values for tor_munmap_file() in unit tests
2014-03-31 11:40:00 -04:00
Nick Mathewson
b0bbe6b2f1
Report only the first bootstrap failure from an orconn
...
Otherwise, when we report "identity mismatch", we then later report
DONE when the connection gets closed.
Fixes bug 10431; bugfix on 0.2.1.1-alpha.
2014-03-27 15:58:43 -04:00
Nick Mathewson
9c0a1adfa2
Don't do a DNS lookup on a bridge line address
...
Fixes bug 10801; bugfix on 07bf274d
in 0.2.0.1-alpha.
2014-03-27 15:31:29 -04:00
Nick Mathewson
a83abcf5ee
Fix unittest compilation with --disable-curve25519
...
This is a fix for 9700, which we already fixed in 0.2.5.x, but which
got left in 0.2.4.x.
This is a partial backport of a0a855d586
2014-03-20 13:53:32 -04:00
Nick Mathewson
98b1aad201
Fix a use-after-free in test_circuitlist.c
...
Found by clang-3.4 analyzers.
2014-03-18 09:47:13 -04:00
Nick Mathewson
119896cd43
Fix some leaks/missed checks in the unit tests
...
Coverity spotted these.
2014-03-13 10:07:10 -04:00
Nick Mathewson
cce06b649e
Merge remote-tracking branch 'asn/bug11069_take2'
2014-03-11 11:04:47 -04:00
George Kadianakis
1c475eb018
Throw control port warning if we failed to connect to all our bridges.
2014-03-10 22:52:07 +00:00
Nick Mathewson
1365ff5b9a
Upgrade to the latest version of tinytest.
...
This brings us to tinytest commit 709a36ba63ff16d8.
The only big change tor-side is that we don't need our own test_mem_op
operation any longer.
2014-03-06 18:06:08 -05:00
Nick Mathewson
065097b81b
tinytest tt_{mem,str}_op now handle NULLs better
...
Now a NULL argument to either makes it fail, not crash.
Fies bug 9004; bugfix on 0.2.2.4-alpha.
2014-03-06 12:12:13 -05:00
Nick Mathewson
663aba07e5
Fix whitespace errors, all of them mine.
2014-03-05 14:36:32 -05:00
Nick Mathewson
f0b2dc83b6
Merge remote-tracking branch 'arma/ticket5528'
...
Conflicts:
src/or/router.c
src/test/test_dir.c
2014-03-05 12:44:40 -05:00
Nick Mathewson
ab225aaf28
Merge branch 'bug10169_025_v2'
...
Conflicts:
src/test/test.c
2014-03-04 11:03:30 -05:00
Nick Mathewson
d98f743b28
Fix compilation warnings in tor_addr_make_null patch
...
There was one "missing prototype" warning because the test function
wasn't static, and one "unused parameter" warning about the "data"
parameter.
Also, I added a couple of tests to make sure that the "make_null"
addresses really were the addresses we expected, by formatting them
as strings.
2014-03-03 10:05:02 -05:00
Kevin Murray
4deae59e1c
add test for tor_addr_make_null
...
Signed-off-by: Kevin Murray <spam@kdmurray.id.au>
2014-03-03 09:58:01 -05:00
Nick Mathewson
886d4be149
Unit tests for test_routerkeys_write_fingerprint
2014-02-28 08:53:14 -05:00
Nick Mathewson
0be9e6099b
Unit tests for pk fingerprint functions
2014-02-28 08:53:14 -05:00
dana koch
f49805b681
Restitute a successful stat call to this test case.
...
Since the first stat call is made for it to deliberately fail, and we
reference st.st_mode without st having valid data, st.st_mode can contain
garbage and cause chmod to fail with EINVAL. We rerun stat and ensure it
succeeded.
Also make use of tt_abort_perror, to properly convey failure reasons to
the user.
2014-02-17 22:55:40 +00:00
Nick Mathewson
e1deb01e5f
mingw fix: Rename a variable in the unit tests
...
Apparently, MS C is #defining "IN" on us, so we can't name a
variable IN. Delightful!
2014-02-16 12:51:35 -05:00
Nick Mathewson
35423d397f
Merge branch 'bug4900_siphash_v2'
2014-02-15 15:59:10 -05:00
Nick Mathewson
1987894626
fix a whitespace snafu
2014-02-14 23:00:04 -05:00
Nick Mathewson
fb595922b1
Tests for rend_token maps
...
This gets coverage of everything except for the cases which should be
impossible.
2014-02-13 15:24:15 -05:00
Nick Mathewson
c8d41da52d
More unit tests for OOM handling.
...
This gets us up to no interesting untested new or changed lines for
the 10169 code.
2014-02-12 12:50:16 -05:00
Nick Mathewson
48877e24a8
Initial unit tests for OOM handling
2014-02-12 12:49:56 -05:00
Nick Mathewson
52d222aafb
Add tests for buffer time tracking.
2014-02-12 12:48:11 -05:00
Nick Mathewson
d379fc6e0f
Several tests for buffer allocation
2014-02-12 12:48:00 -05:00
Nick Mathewson
f425cf8338
Start writing tests for 10169.
...
Now we cover more chunk allocation functions.
2014-02-12 12:47:49 -05:00
Nick Mathewson
c1e98c8afe
Randomize the global siphash key at startup
...
This completes our conversion to using siphash for our hash functions.
2014-02-12 12:12:58 -05:00
Nick Mathewson
f51df9bb93
Tests for siphash, from reference implementation.
2014-02-12 10:58:03 -05:00
Nick Mathewson
c3720c05fa
Free leakable values in the unit tests.
...
Thanks, Coverity! (CID 1171414, 1171415, 1171416)
2014-02-11 18:10:33 -05:00
Nick Mathewson
a0577aacb4
Merge remote-tracking branch 'origin/maint-0.2.4'
2014-02-07 17:41:41 -05:00
Nick Mathewson
9bb34aa897
Survive fedora's openssl in our benchmarks
...
Apparently fedora currently has ECDH but not P224. This isn't a huge
deal, since we no longer use OpenSSL's P224 ever (see #9780 and
72c1e5acfe
). But we shouldn't have segfaulting benchmarks really.
Fixes bug 10835; bugfix on 0.2.4.8-alpha.
2014-02-07 17:36:11 -05:00
Nick Mathewson
aa3c8c1397
Use the right functions; strncpy is usually not the answer
2014-02-07 12:25:49 -05:00
Qingping Hou
57da1a5057
add test case for node_get_verbose_nickname
2014-02-06 16:13:55 -05:00
Qingping Hou
39ff3b00cf
add test for node_get_verbose_nickname_by_id
2014-02-06 16:13:55 -05:00
Qingping Hou
0fbe7f3188
remove node_describe_by_id() function
...
This function is not used anymore
2014-02-06 16:13:55 -05:00
Qingping Hou
bf66ff915a
fix longname returned in HS_DESC control events
...
According to control spec, longname should not contain any spaces and is
consists only of identy_digest + nickname
added two functions:
* node_get_verbose_nickname_by_id()
* node_describe_longname_by_id()
2014-02-06 16:13:55 -05:00
Nick Mathewson
34740a17ea
Rename sun to s_un in test_addr.c
...
Apparently the compiler on solaris 9 didn't like "sun" as an identifier.
Fix for bug 10565; bugfix on 0.2.5.1-alpha.
2014-02-06 12:36:33 -05:00
Nick Mathewson
4268cbf294
Distcheck repair: add new python testing code to "tarballs"
...
'make distcheck' now passes again.
2014-02-04 11:08:22 -05:00
Nick Mathewson
c61a472076
test_config.c: log which address should have failed
2014-02-03 16:21:32 -05:00
Nick Mathewson
24544a10c0
Clean up test_hs.c: warning fix; tor_free() usage.
...
My OSX laptop rightly gave a warning because of sticking strlen() into
an int, but once I took a closer look... it appears that the strlen()
was part of a needlessly verbose implementation for tor_strdup().
While I was there, I fixed the usage of tor_free() in test_hs.c: It
checks for NULL, and it zeros its argument. So instead of
if (foo) {
tor_free(foo);
foo = NULL;
}
we should just say
tor_free(foo);
2014-02-03 16:12:30 -05:00
rl1987
3a4b24c3ab
Removing is_internal_IP() function. Resolves ticket 4645.
2014-02-03 14:20:17 -05:00
Karsten Loesing
00ec6e6af0
More fixes to rip out all of the v2 directory code.
...
(This was a squash commit, but I forgot to squash it. Sorry! --Nick)
2014-02-03 13:34:30 -05:00
Nick Mathewson
8db8fda43f
check-spaces fixes for test_router.c
2014-02-03 13:00:15 -05:00
Nick Mathewson
fee7f25ff8
Merge remote-tracking branch 'houqp/hs_control'
2014-02-03 12:28:42 -05:00
Nick Mathewson
27d81c756b
slownacl's pure-python curve25519 lets us test ntor everywhere.
...
Improvement on f308adf838
, where we made the ntor
unit tests run everywhere... so long as a python curve25519 module
was installed. Now the unit tests don't require that module.
2014-02-03 11:34:13 -05:00
Qingping Hou
ebd99314cf
add test case for node_describe_by_id
2014-01-29 22:47:05 -05:00
Qingping Hou
0b0d4b4ebc
add test case for hidden service async events
2014-01-29 22:43:11 -05:00
Nick Mathewson
3193cbe2ba
Rip out all of the v2 directory code.
...
The remaining vestige is that we continue to publish the V2dir flag,
and that, for the controller, we continue to emit v2 directory
formats when requested.
2014-01-29 15:17:05 -05:00
Nick Mathewson
8a49fac9e0
Coverate in util.c: test that tor_parse_* rejects negative base.
2014-01-17 11:58:09 -05:00
Nick Mathewson
ab0fdbb618
Add an --accel switch to run unit tests with crypto acceleration
2014-01-17 11:58:09 -05:00
Nick Mathewson
adfcc1da4a
Merge remote-tracking branch 'origin/maint-0.2.4'
...
Conflicts:
src/or/microdesc.c
Conflict because one change was on line adjacent to line where
01206893
got fixed.
2013-12-17 13:18:00 -05:00
Nick Mathewson
3d5154550c
Merge remote-tracking branch 'public/bug10409_023' into maint-0.2.4
2013-12-17 13:15:45 -05:00
Nick Mathewson
d8cfa2ef4e
Avoid free()ing from an mmap on corrupted microdesc cache
...
The 'body' field of a microdesc_t holds a strdup()'d value if the
microdesc's saved_location field is SAVED_IN_JOURNAL or
SAVED_NOWHERE, and holds a pointer to the middle of an mmap if the
microdesc is SAVED_IN_CACHE. But we weren't setting that field
until a while after we parsed the microdescriptor, which left an
interval where microdesc_free() would try to free() the middle of
the mmap().
This patch also includes a regression test.
This is a fix for #10409 ; bugfix on 0.2.2.6-alpha.
2013-12-16 13:06:00 -05:00
Nick Mathewson
a7410c9199
Add checks to prevent memcmp(.,.,negative) in tests (CID 1064417)
2013-11-22 12:33:25 -05:00
Nick Mathewson
569dbcc615
Fix another unit test memory leak. CID1087949,CID1087950.
2013-11-22 12:27:41 -05:00
Nick Mathewson
7c76fd5a82
Fix a bunch of coverity-spotted unit test resource leaks
...
CIDs: 1130994, 1130993, 1130992, 1130991
2013-11-22 12:21:14 -05:00
Nick Mathewson
6f7eb7a0a5
Remove needless fd var from test. CID 1130989.
2013-11-22 12:16:17 -05:00
Nick Mathewson
027f4c82eb
Whitespace cleanup
2013-11-20 11:05:00 -05:00
Nick Mathewson
e7165659e0
Fix crypto/digests test
2013-11-18 13:33:29 -05:00
Nick Mathewson
a7c9d64fd6
Merge branch 'finish_prop157'
2013-11-18 13:27:06 -05:00
Nick Mathewson
4b9ec85e47
Fix whitespace
2013-11-18 11:13:40 -05:00
Nick Mathewson
fbc20294aa
Merge branch 'backtrace_squashed'
...
Conflicts:
src/common/sandbox.c
src/common/sandbox.h
src/common/util.c
src/or/main.c
src/test/include.am
src/test/test.c
2013-11-18 11:00:16 -05:00
Nick Mathewson
56e3f056e9
Tests for backtrace.c
...
These need to be a separate executable, since the point of backtrace.c
is that it can crash and write stuff.
2013-11-18 10:43:15 -05:00
Nick Mathewson
0cf234317f
Unit tests for new functions in log.c
2013-11-18 10:43:15 -05:00
Nick Mathewson
f6e07c158f
Make the dir-key-crosscert element required
...
In proposal 157, we added a cross-certification element for
directory authority certificates. We implemented it in
0.2.1.9-alpha. All Tor directory authorities now generate it.
Here, as planned, make it required, so that we can finally close
proposal 157.
The biggest change in the code is in the unit test data, where some
old hardcoded certs that we made long ago have become no longer
valid and now need to be replaced.
2013-11-14 09:37:41 -05:00
Nick Mathewson
4aa9affec2
Fix test_cmdline_args to work with old openssl
...
If openssl was old, Tor would add a warning about its version in
between saying "no torrc found, using reasonable defaults" and
"configuration was valid".
2013-11-11 15:22:08 -05:00
Nick Mathewson
940d286a74
Documentation and tests for 10060
2013-11-07 14:42:58 -05:00
Karsten Loesing
2e0fad542c
Merge branch 'morestats4' into morestats5
...
Conflicts:
doc/tor.1.txt
src/or/config.c
src/or/connection.h
src/or/control.c
src/or/control.h
src/or/or.h
src/or/relay.c
src/or/relay.h
src/test/test.c
2013-10-28 12:09:42 +01:00
Karsten Loesing
e46de82c97
squash! Pass const uint64_t pointers, document array length.
...
Don't cast uint64_t * to const uint64_t * explicitly. The cast is always
safe, so C does it for us. Doing the cast explitictly can hide bugs if
the input is secretly the wrong type.
Suggested by Nick.
2013-10-28 10:48:18 +01:00
Nick Mathewson
338bcad9e4
Make test_cmdline_args.py work with older pythons
...
I was using the assertIn() function on unit tests, which Python 2.7
introduced. But we'd like to be able to run our unit tests on Pythons
from older operating systems.
2013-10-21 14:35:01 -04:00
Nick Mathewson
d5f050111e
Fix out-of-tree "make check-local"
2013-10-11 13:42:27 -04:00
Nick Mathewson
f308adf838
When possible, run the ntor python integration tests too
2013-10-11 13:21:42 -04:00
Nick Mathewson
187398318e
When python is available, run the commandline unit tests from "make check"
2013-10-11 13:07:14 -04:00
Nick Mathewson
0546edde66
Merge branch 'bug1376'
2013-10-11 12:51:15 -04:00
Nick Mathewson
7ef9ecf6b3
Fix some whitespace; tighten the tests.
2013-10-11 12:51:07 -04:00