teor (Tim Wilson-Brown)
05cf286713
Make mock function static to prevent future clashes
2016-04-28 12:26:38 +10:00
teor (Tim Wilson-Brown)
692828bea5
Decide to advertise begindir support like we decide to advertise DirPort
...
Decide to advertise begindir support in a similar way to how
we decide to advertise DirPort.
Fix up the associated descriptor-building unit tests.
Resolves #18616 , bugfix on 0c8e042c30
in #12538 in 0.2.8.1-alpha.
2016-04-28 12:26:38 +10:00
Nick Mathewson
bff53aabce
Remove redundant declarations of MIN
...
Apparently somewhere along the line we decided that MIN might be
missing.
But we already defined it (if it was missing) in compat.h, which
everybody includes.
Closes ticket 18889.
2016-04-25 15:28:58 -04:00
Nick Mathewson
520799f084
Merge branch 'handles_squashed'
2016-04-19 14:08:05 -04:00
Nick Mathewson
e015f7c9cc
Basic 'handle' implementation and tests.
...
This abstraction covers the case where one part of the program needs
to refer to another object that is allowed to disappear.
2016-04-19 14:07:43 -04:00
Roger Dingledine
525307c0ea
fix typos/etc before i go nuts on #18809
2016-04-13 00:06:30 -04:00
Nick Mathewson
eafcd7b0fc
Merge branch 'maint-0.2.8'
2016-04-12 13:02:37 -04:00
Nick Mathewson
1a065cea46
Do not link tests against both libor.a and libor-testing.a
...
Also, put libor-testing.a at a better position in the list of
libraries, to avoid linker errors.
This is a fix, or part of a fix, for 18490.
Conflicts:
src/test/include.am
2016-04-12 02:48:46 +00:00
David Goulet
40827da3bf
Turn TestingClientBootstrap* into non-testing options
...
This changes simply renames them by removing "Testing" in front of them and
they do not require TestingTorNetwork to be enabled anymore.
Fixes #18481
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2016-04-07 10:57:59 -04:00
Nick Mathewson
7532cd439b
When we get a bad nickname, explain what a good one is.
...
Closes #18300 ; patch from "icanhasaccount".
2016-04-07 10:54:53 -04:00
Nick Mathewson
d7a0382ba3
Don't call the system toupper or tolower.
...
Yes, we could cast to unsigned char first, but it's probably safest
to just use our own (in test_util), or remove bad-idea features that
we don't use (in readpassphrase.c).
Fixes 18728.
2016-04-05 23:22:28 -04:00
Nick Mathewson
32e8886314
One more test that didnt pass on windows. See #18665 .
2016-03-28 08:57:29 -04:00
Nick Mathewson
c0568a89d9
Whitespace fixes
2016-03-26 09:54:31 -04:00
Nick Mathewson
24c0c5ef19
Disable failing broken time format case for windows.
2016-03-25 22:00:20 -04:00
Nick Mathewson
4f86d75a4b
try to fix a test failure for sizeof(time_t)==4.
2016-03-24 12:26:46 -04:00
Nick Mathewson
6256c61d95
Merge branch 'timegm_overflow_squashed'
2016-03-24 10:18:00 -04:00
teor (Tim Wilson-Brown)
19fb86a2dc
Add a missing UL on a long in a unit test
2016-03-24 10:17:48 -04:00
teor (Tim Wilson-Brown)
b99bd3e7ff
Add unit tests with dates from 2035 to 2039
...
Platforms with 32-bit time_t sometimes give different results.
They don't always indicate failure on overflow, #18480 should
fix these.
2016-03-24 10:17:48 -04:00
Nick Mathewson
dae8484107
Try to fix an intermittent test failure on openbsd.
2016-03-22 09:12:59 -04:00
Nick Mathewson
9dff41694a
Never use sprintf. tor_snprintf instead. Bug in tests, not in any released tor.
2016-03-22 08:52:17 -04:00
Nick Mathewson
ddd30f966a
Merge remote-tracking branch 'arma/ticket18332-try3'
2016-03-21 10:41:23 -04:00
Nick Mathewson
cb3f9bc2d4
Merge branch 'bug18570_027'
2016-03-21 10:20:16 -04:00
Andrea Shepard
1cdc7fddb2
Add new channel/queue_incoming unit tests; modify channel unit tests for new clarified handling of alloc/free responsibility for queued incoming cells
2016-03-21 10:14:47 -04:00
Steven Chamberlain
a42938c076
test_options.c: assert that TransProxyType is tested
...
If a new platform defines USE_TRANSPARENT, ensure that a test runs for
its TransProxyType.
2016-03-21 09:51:35 -04:00
Steven Chamberlain
45681f695c
test_options.c: NULL a pointer after free #18447
...
tdata will be double-freed if none of linux, __FreeBSD__, DARWIN or
__OpenBSD__ are defined. (For example, FreeBSD derivatives).
2016-03-17 19:20:36 -04:00
Nick Mathewson
c9899ee640
Merge remote-tracking branch 'weasel/bug18458'
2016-03-15 09:18:24 -04:00
Roger Dingledine
edeba3d472
simplify rend_cache_store_status_t back to a boolean
...
it used to be a tri-state, but now it's just a bi-state, so we can
take out all the machinery like the enum.
2016-03-11 10:49:57 -05:00
Roger Dingledine
5390296338
rip out hid_serv_acting_as_directory()
...
When we made HidServDirectoryV2 always 1, we removed the situation
where a relay could choose not to be an HSDir. Now simplify the
rest of the code to reflect this decision.
(We have to remove two apparently unrelated free() calls in the unit
tests, since they used to free stuff that we created as a side effect
of calling router_get_my_routerinfo(), and now we no longer call that.)
2016-03-11 10:45:03 -05:00
Roger Dingledine
e167910fce
rip out hid_serv_responsible_for_desc_id()
...
This simplifies relay behavior, because the relay offers the hsdir
functionality independent of whether the directory authorities have
decided this relay is suitable for clients to use yet.
Implements ticket 18332.
2016-03-11 10:40:31 -05:00
Nick Mathewson
36ac47bd85
Merge remote-tracking branch 'public/bug18204_028'
2016-03-11 10:10:15 -05:00
Nick Mathewson
ef31c8862f
Add changes file for 18448; refactor
...
(I've made it so FreeBSD || FreeBSD_kernel is enough to ensure that
we think you might have ipfw, and so that the logic is all in one
place.)
2016-03-11 10:05:28 -05:00
Steven Chamberlain
db263442af
enable and test transproxy on FreeBSD derivatives #18448
...
The transproxy feature is only enabled when __FreeBSD__ is defined, and
only regular FreeBSD does that. Change this to __FreeBSD_kernel__ which
is defined on derivatives as well.
This enables the relevant options/validate__transproxy test on FreeBSD
derivatives.
2016-03-11 10:01:25 -05:00
Nick Mathewson
82df3e70ac
Do not link tests against both libor.a and libor-testing.a
...
Also, put libor-testing.a at a better position in the list of
libraries, to avoid linker errors.
This is a fix, or part of a fix, for 18490.
2016-03-11 09:53:25 -05:00
Peter Palfrader
1ef7df551d
First RelaxDirModeCheck implementation
2016-03-01 17:08:14 +01:00
Alexander Færøy
d4c5ccf79c
Use the kdf_rfc5869() function instead of kdf().
...
This patch fixes an issue in "ntor_ref.py gen_kdf_vectors" where the
script tries to call the undefined function kdf().
2016-02-28 15:24:59 +01:00
Nick Mathewson
57699de005
Update the copyright year.
2016-02-27 18:48:19 +01:00
Nick Mathewson
f2e23d5ad6
Fix a huge number of leaks in test_config.c
...
I no longer see asan reporting memory leaks in the unit tests.
2016-02-24 15:44:40 -05:00
Nick Mathewson
a3f764ea69
Fix memory leaks in routerlist/pick_directory_server_impl test
2016-02-24 15:13:29 -05:00
Nick Mathewson
ba0ddd7467
Fix a leak in test_have_enough_mem_for_dircache
2016-02-24 15:06:12 -05:00
Nick Mathewson
73c433a48a
Remove the freelist from memarea.c
...
This is in accordance with our usual policy against freelists,
now that working allocators are everywhere.
It should also make memarea.c's coverage higher.
I also doubt that this code ever helped performance.
2016-02-24 14:32:09 -05:00
Nick Mathewson
1318c1611f
Another clang+_FORTIFY_SOURCE issue
...
There was a parenthesis issue in test_util that clang found
confusing. This part was only in master.
Closes issue 14821.
2016-02-23 14:06:45 -05:00
Nick Mathewson
e88686cb2c
Merge remote-tracking branch 'teor/bug18348-v2'
2016-02-23 07:36:56 -05:00
Nick Mathewson
882e0fbd76
Merge branch 'bug17795'
2016-02-23 07:25:12 -05:00
Nick Mathewson
b3534dfc5e
Add missing check to test_address_get_if_addrs_ifaddrs. Bug 18378
2016-02-23 07:17:00 -05:00
Andrea Shepard
cda2381789
Appease make check-spaces
2016-02-23 05:07:29 +00:00
Nick Mathewson
e019e11e61
Another memory leak in the tests
2016-02-22 16:20:11 -05:00
Nick Mathewson
4cc50ee805
Small fixup on last fix to test leaks
2016-02-22 16:16:56 -05:00
Nick Mathewson
041d6482db
Fix a bunch of memory leaks in the unit tests
2016-02-22 16:14:03 -05:00
Nick Mathewson
ef42c00cf0
asan does not like TO_CONN(NULL)
2016-02-22 15:45:37 -05:00
teor (Tim Wilson-Brown)
d359cfab13
Update unit tests for fascist_firewall_choose_address*
...
Check that clients, bridge clients, and relays choose addresses
as expected.
2016-02-21 00:00:40 +11:00
Nick Mathewson
31c96a3699
Fix a NULL dereference on unit test failure. CID 1353177.
2016-02-16 12:55:41 -05:00
Nick Mathewson
fed8c5199a
Merge branch 'check_log_mutex_uncherrypicked'
2016-02-11 13:41:31 -05:00
teor (Tim Wilson-Brown)
a7a98e27ea
Initialise logging before trying to use it in unit tests
2016-02-11 13:41:25 -05:00
Nick Mathewson
838d4dee12
make check-spaces
2016-02-11 12:50:55 -05:00
Nick Mathewson
2b5ff52594
Merge branch 'feature17840-v11-tests_truncated'
2016-02-11 12:45:51 -05:00
Nick Mathewson
ba2be81fc3
Merge remote-tracking branch 'teor/feature17840-v11-merged-v2'
2016-02-11 12:20:20 -05:00
Nick Mathewson
69c47ab5fd
Merge remote-tracking branch 'sebastian/bug18242'
2016-02-10 15:38:52 -05:00
Nick Mathewson
4dc8dc4b89
Merge remote-tracking branch 'public/bug18184'
2016-02-10 15:36:48 -05:00
Nick Mathewson
a8d6989589
Whitespace fixes
2016-02-10 15:35:46 -05:00
Nick Mathewson
9746aed2ba
Another automated rename.
...
Also simplify crypto_common_digests() to have no loop.
2016-02-10 15:32:12 -05:00
Nick Mathewson
8a4bba06d2
Rename crypto_digest_all, and digests_t.
...
They are no longer "all" digests, but only the "common" digests.
Part of 17795.
This is an automated patch I made with a couple of perl one-liners:
perl -i -pe 's/crypto_digest_all/crypto_common_digests/g;' src/*/*.[ch]
perl -i -pe 's/\bdigests_t\b/common_digests_t/g;' src/*/*.[ch]
2016-02-10 15:28:19 -05:00
Nick Mathewson
31a27729b9
Fix spaces.
2016-02-06 14:00:24 -05:00
Sebastian Hahn
55d6fd27cb
Fix the --disable-asserts-in-tests configure option
2016-02-05 14:40:07 +01:00
Nick Mathewson
1bac468882
Fix two problems in the 0.2.8.x unit tests
...
1. We were sometimes using libevent uninitialized, which is Not Allowed.
2. The malformed-PTR dns test was supposed to get a -1 output... but
the test was wrong, since it forgot that in-addr.arpa addresses
are in reverse order.
Bugs not in any released tor.
2016-02-04 12:30:48 -05:00
Nick Mathewson
fa52b6f075
Make tortls unit tests pass with LibreSSL.
...
Part of the fix for 17921.
2016-02-03 11:31:57 -05:00
Nick Mathewson
c1c3e45eab
Make crypto/rng_engine test pass on libressl. Bug not in any released tor.
2016-02-03 11:18:16 -05:00
Nick Mathewson
27582325dc
Make Tor build happily with OpenSSL master and libressl.
...
Also tested with 1.0.0t and 1.0.2f.
Closes ticket 19784.
Closes most of 17921. (Still need to make some tests pass.)
2016-02-03 11:13:12 -05:00
teor (Tim Wilson-Brown)
c213f277cd
Make bridge clients prefer the configured bridge address
...
When ClientPreferIPv6ORPort is auto, bridges prefer the configured
bridge ORPort address. Otherwise, they use the value of the option.
Other clients prefer IPv4 ORPorts if ClientPreferIPv6ORPort is auto.
When ClientPreferIPv6DirPort is auto, all clients prefer IPv4 DirPorts.
2016-02-03 23:56:19 +11:00
teor (Tim Wilson-Brown)
b316c87bc9
Make bridge clients prefer the configured bridge address
...
When ClientPreferIPv6ORPort is auto, bridges prefer the configured
bridge ORPort address. Otherwise, they use the value of the option.
Other clients prefer IPv4 ORPorts if ClientPreferIPv6ORPort is auto.
When ClientPreferIPv6DirPort is auto, all clients prefer IPv4 DirPorts.
2016-02-03 23:52:39 +11:00
Nick Mathewson
b860f82d56
Treat bt_test.py failures as "SKIP" on freebsd.
...
Closes #18204 .
2016-02-01 14:11:45 -05:00
Nick Mathewson
c6fa55d2da
Bitwise negate is ~, not !.
...
Spotted by coverity; bug in tests only, not in any released Tor.
This is CID 1351128
2016-02-01 13:12:58 -05:00
Nick Mathewson
7631cffbcc
Fix warnings from check-spaces
2016-02-01 10:24:13 -05:00
Nick Mathewson
ac7e43d30a
Redux: don't expect unix sockets to be accepted on windows
2016-02-01 10:21:11 -05:00
Nick Mathewson
49442b5e67
Don't expect unix sockets to be accepted on Windows
...
Fixes failures in test_config.c; bug not in any released tor.
2016-02-01 09:57:54 -05:00
Nick Mathewson
f4ac44c9f2
Merge branch 'options_validate_second_round_cleaned'
2016-02-01 09:52:11 -05:00
teor (Tim Wilson-Brown)
e3da5ad6e3
Replace incorrect use of snprintf in unit tests with tor_snprintf
...
This avoids a potential out of bounds write.
2016-02-01 09:50:43 -05:00
teor (Tim Wilson-Brown)
f7b2ae91e9
Make all unit tests independent of log message order and count
2016-02-01 09:50:43 -05:00
teor (Tim Wilson-Brown)
dbb5819e96
Report malformed options in options_validate unit tests
2016-02-01 09:50:42 -05:00
Ola Bini
fe92e9bb96
Add a helper to search for strings in the log, and change option tests to use this helper instead of looking at specific indices in the log list
2016-02-01 09:50:42 -05:00
Nick Mathewson
4cd93a6a59
Merge branch 'maint-0.2.7'
...
(We already had a fix for the address test freebsd issues)
2016-02-01 09:41:45 -05:00
Nick Mathewson
7d1fe7c9e7
Try to fix address tests on FreeBSD
...
In jails, there is not always a localhost.
Bugfix not on any released Tor.
2016-02-01 09:38:31 -05:00
teor (Tim Wilson-Brown)
1dae4dac12
Add unit tests for ClientUseIPv[4,6] and ClientPreferIPv6[OR,Dir]Port
2016-02-01 09:15:07 +11:00
teor (Tim Wilson-Brown)
26f68a771c
Report malformed options in options_validate unit tests
2016-02-01 09:11:16 +11:00
teor (Tim Wilson-Brown)
13db39b856
Fix existing options_validate unit tests for ClientUseIPv4
2016-02-01 09:10:52 +11:00
Ola Bini
8627a40fba
Add a helper to search for strings in the log, and change option tests to use this helper instead of looking at specific indices in the log list
2016-02-01 09:09:44 +11:00
Nick Mathewson
5f7df92571
Remove support for unsigned time_t
...
We've never actually tested this support, and we should probably assume
it's broken.
To the best of my knowledge, only OpenVMS has this, and even on
OpenVMS it's a compile-time option to disable it. And I don't think
we build on openvms anyway. (Everybody else seems to be working
around the 2038 problem by using a 64-bit time_t, which won't expire
for roughly 292 billion years.)
Closes ticket 18184.
2016-01-29 09:18:59 -05:00
teor (Tim Wilson-Brown)
c4cb4706c9
Merge branch 'feature17840-v11-squashed' into feature17840-v11-merged
...
Conflicts:
src/or/directory.c
src/test/test_routerlist.c
Fix minor conflicts.
2016-01-29 07:37:06 +11:00
teor (Tim Wilson-Brown)
77a9de0d48
Automatically use IPv6 when ClientUseIPv4 is 0
...
Consequential changes to log messages:
* it's no longer possible to disable both IPv4 and IPv6,
* refactor common string out of remaining log messages
2016-01-29 07:16:32 +11:00
teor (Tim Wilson-Brown)
3b8216f215
Use fascist firewall and ClientUseIPv4 for bridge clients
...
Bridge clients ignore ClientUseIPv6, acting as if it is always 1.
This preserves existing behaviour.
Make ClientPreferIPv6OR/DirPort auto by default:
* Bridge clients prefer IPv6 by default.
* Other clients prefer IPv4 by default.
This preserves existing behaviour.
2016-01-29 07:16:04 +11:00
teor (Tim Wilson-Brown)
e72cbf7a4e
Choose directory servers by IPv4/IPv6 preferences
...
Add unit tests, refactor pick_directory functions.
2016-01-29 07:13:57 +11:00
teor (Tim Wilson-Brown)
268608c0a0
Choose OR Entry Guards using IPv4/IPv6 preferences
...
Update unit tests.
2016-01-29 07:13:57 +11:00
teor (Tim Wilson-Brown)
2d33d192fc
Add ClientUseIPv4 and ClientPreferIPv6DirPort torrc options
...
ClientUseIPv4 0 tells tor to avoid IPv4 client connections.
ClientPreferIPv6DirPort 1 tells tor to prefer IPv6 directory connections.
Refactor policy for IPv4/IPv6 preferences.
Fix a bug where node->ipv6_preferred could become stale if
ClientPreferIPv6ORPort was changed after the consensus was loaded.
Update documentation, existing code, add unit tests.
2016-01-29 07:13:57 +11:00
Nick Mathewson
1a022525f7
attempt to fix crashes in unit tests
2016-01-27 09:42:08 -05:00
Nick Mathewson
39a86185c8
Correct further grammatical errors in tor comments
...
Avoid using a pronoun where it makes comments unclear.
Avoid using gender for things that don't have it.
Avoid assigning gender to people unnecessarily.
2016-01-27 08:51:28 -05:00
Nick Mathewson
cbed61d128
Merge remote-tracking branch 'twstrike/parse_port_config_tests'
2016-01-21 12:15:39 -05:00
Nick Mathewson
ae3d2a93f0
Merge remote-tracking branch 'twstrike/options_test'
2016-01-19 20:14:18 -05:00
Ola Bini
32946e2c96
Make sure that tests for domain sockets only run on OSes with domain sockets
2016-01-19 11:14:41 -05:00
Ola Bini
3e738211d4
Use correct u64 int ops instead of regular int ops, in order to avoid warnings on 32bit clang
2016-01-19 11:11:01 -05:00
Nick Mathewson
da4dbb29b7
Fix some leaks in the unit tests.
2016-01-15 11:45:19 -05:00
Nick Mathewson
f6ea7a6258
Make the new directory tests build and run again.
...
Had to disable a couple.
Also add changes file for 17003.
2016-01-15 11:20:14 -05:00
Nick Mathewson
537214d10e
Merge remote-tracking branch 'twstrike/directory-tests'
2016-01-15 11:08:22 -05:00
Nick Mathewson
f47d4af04c
Whitespace cleanup
2016-01-15 10:57:03 -05:00
Ola Bini
1722232d78
Update tests to match current changes to options_validate
2016-01-13 10:54:08 -05:00
Ola Bini
6d5215fd19
Move clearing of log messages on advice from @cypherpunks, in order to minimize risk of race conditions leading to another memory leak
2016-01-13 10:35:49 -05:00
Ola Bini
5c1c117b8e
Revert my addition of callback cleaner and instead use existing functionality for temporary log files
2016-01-13 10:35:06 -05:00
Ola Bini
0bfa616e2e
Remove a small memory leak in log callback setup
2016-01-13 10:35:05 -05:00
Ola Bini
ce953b864b
Fix memory leaks
2016-01-13 10:35:05 -05:00
Ola Bini
f2a7a83626
Fix all white space issues
2016-01-13 10:34:24 -05:00
Ola Bini
1a3fcda0a3
Fix some issues in gcc warnings
2016-01-13 10:32:09 -05:00
Ola Bini
5edd431d92
Add tests for options_act
2016-01-13 10:31:13 -05:00
Ola Bini
fcd7923a96
Fix remaining memory leaks
2016-01-12 12:33:05 -05:00
Ola Bini
ee39869f67
Fix some memory leaks
2016-01-12 12:14:34 -05:00
Ola Bini
b24a16e56e
Make it compile with gcc-warnings turned on
2016-01-12 11:53:07 -05:00
Fergus Dall
9e5a6f0293
Stop log_heartbeat test from failing in timezones with non-integer offsets
...
Instead of comparing the end of the time string against a constant,
compare it to the output of format_local_iso_time when given the
correct input.
2016-01-12 22:01:46 +10:30
Nick Mathewson
16840e52e5
Make the touch_file unit test work around FS/system time sync issues
...
Sometimes you can call time() and then touch a file, and have the
second come out a little before the first. See #18025 for way more
information than you necessarily wanted.
2016-01-11 10:03:00 -05:00
Nick Mathewson
d10ea49588
Merge remote-tracking branch 'rl1987/feature17950'
2016-01-11 08:54:51 -05:00
Nick Mathewson
95f5910810
Merge branch 'unixninja_ticket15989_squashed'
2016-01-08 15:52:22 -08:00
unixninja92
4f0e28977d
Added AccountRule in and AccountingRule out options
2016-01-08 15:52:10 -08:00
Nick Mathewson
a1019b82c1
Merge remote-tracking branch 'public/feature16794_more'
2016-01-08 14:54:51 -08:00
Nick Mathewson
62bc4a199a
Fix #18012 harder.
2016-01-07 09:58:48 -08:00
Nick Mathewson
b5ce332958
Try to fix windows test build ( #18012 )
2016-01-07 09:25:44 -08:00
George Tankersley
3bc45f2628
Add FallbackDir list to GETINFO config/defaults
2016-01-06 11:22:30 -08:00
Nick Mathewson
7660471054
Unit tests for getpw* functions
2016-01-03 09:00:30 -08:00
Nick Mathewson
c941240f32
clean up the "skip this util test on windows" logic.
2016-01-03 08:47:14 -08:00
Nick Mathewson
8aa9ee73da
Add a test for touch_file
2016-01-03 08:37:14 -08:00
Nick Mathewson
de8110fba2
Explicitly test our get/set_uint{8,16,32,64}.
2016-01-03 08:27:54 -08:00
Nick Mathewson
a8749ea9fd
Test another codepath in inet_ntop
2016-01-03 08:27:44 -08:00
rl1987
44497e9ebc
Add family argument to get_interface_addresses_raw (and subfunctions).
2016-01-03 15:35:45 +01:00
Nick Mathewson
d7c841f467
Unit tests for crypto_force_rand_ssleay().
...
Part of 16794.
2015-12-23 09:58:08 -05:00
Nick Mathewson
b18f533cf0
Always test both ed25519 backends.
...
Part of #16794
2015-12-23 09:16:26 -05:00
Nick Mathewson
8ede8d411a
Fix a couple of jenkins issues from 12538.
2015-12-21 12:32:20 -05:00
Nick Mathewson
62f97545e4
Merge remote-tracking branch 'public/bug12538_merged'
2015-12-21 07:30:32 -05:00
Nick Mathewson
bb19799a49
Appease "make check-spaces"
2015-12-20 15:00:20 -05:00
Nick Mathewson
2d9c38ea72
Repair "make distcheck".
2015-12-20 14:57:27 -05:00
Nick Mathewson
7b0cbf22c0
Merge remote-tracking branch 'yawning/feature17783_take2'
2015-12-20 14:10:52 -05:00
Yawning Angel
081b159abc
Add the randomized large buffer test for SHA-3 incremental hashing.
...
This creates a random 100 KiB buffer, and incrementally hashes
(SHA3-512) between 1 and 5 * Rate bytes in a loop, comparing the running
digest with the equivalent one shot call from the start of the buffer.
2015-12-20 07:11:20 +00:00
Yawning Angel
9467485517
Add crypto_xof_t
and assorted routines, backed by SHAKE256.
...
This is an eXtendable-Output Function with the following claimed
security strengths against *all* adversaries:
Collision: min(d/2, 256)
Preimage: >= min(d, 256)
2nd Preimage: min(d, 256)
where d is the amount of output used, in bits.
2015-12-19 22:45:21 +00:00
Yawning Angel
687f9b3bd7
Add the SHA-3 hash functions to common/crypto.h.
...
* DIGEST_SHA3_[256,512] added as supported algorithms, which do
exactly what is said on the tin.
* test/bench now benchmarks all of the supported digest algorithms,
so it's possible to see just how slow SHA-3 is, though the message
sizes could probably use tweaking since this is very dependent on
the message size vs the SHA-3 rate.
2015-12-19 22:44:05 +00:00
Nick Mathewson
f0a4282e9a
fix routerlist/pick_directory_server_impl in light of 12538
2015-12-18 14:10:03 -05:00
Nick Mathewson
f5f35e9009
Fix config/directory_fetch after 12538 merge
2015-12-18 13:36:41 -05:00
Nick Mathewson
a6c9fcc486
Fix nodelist/node_is_dir test wrt 12538.
2015-12-18 13:24:23 -05:00
Nick Mathewson
c4fb7ad034
Merge branch 'feature12538_028_01_squashed'
2015-12-18 13:16:49 -05:00
Nick Mathewson
54406f78b8
Change dataflow on generating 'dir-cache' flag.
...
Convention is that router_dump_router_to_string() should look at its
input "router", which should be generated by
router_build_fresh_descirptor().
2015-12-18 13:14:10 -05:00
Matthew Finkel
6a5528356f
Assert rs are added in con and con_md tests
2015-12-18 13:14:10 -05:00
Matthew Finkel
185c93c954
Automatically generate md-con method vers in test
2015-12-18 13:14:10 -05:00
Matthew Finkel
997f779a7f
Add new DirCache configuration option
...
This will give relay operators the ability of disabling the caching of
directory data. In general, this should not be necessary, but on some
lower-resource systems it may beneficial.
2015-12-18 13:14:09 -05:00
Matthew Finkel
e0bd6cdef2
Add unit test for router_pick_directory_server_impl
2015-12-18 13:14:09 -05:00
Matthew Finkel
0a7d22a664
Client should check if dir server has open dir port or handles tunnelled requests
...
Final piece of prop 237. Closes 12538.
2015-12-18 13:14:09 -05:00
cypherpunks
4c55ccbe95
Fix a memory leak in the backtrace test
2015-12-18 13:09:05 -05:00
cypherpunks
afc5af3f00
Log the backtrace when the backtrace test fails
2015-12-18 13:09:04 -05:00