Nick Mathewson
494dea7006
Merge branch 'analyze_cg_more'
2015-08-15 22:41:03 -04:00
Nick Mathewson
bb46630513
Hack up the scripts/maint/*callgraph* scripts to do more, better
...
These scripts are now a little more bulletproof, cache data a little
better, and generate more information. Notably, they search for the
vectors or edges to cut that would lower the size of the largest
SCC.
2015-08-15 22:37:32 -04:00
Nick Mathewson
98b2a3b3d5
Increase AccountingMax example value to 40 GB.
...
(Change not made in torrc.minimal.in; only in torrc.sample and
torrc.minimal.in-staging)
Closes ticket 16742.
2015-08-14 09:54:29 -04:00
Nick Mathewson
05d52899cb
Fix an overzealous compiler warning in the tests
2015-08-14 08:48:26 -04:00
Nick Mathewson
34aefe6f38
Merge remote-tracking branch 'public/decouple_init_keys'
2015-08-14 08:40:51 -04:00
Nick Mathewson
810ef71fd5
Increase unit test coverage on container.c
2015-08-13 22:29:02 -04:00
Nick Mathewson
216bde38e0
Fix some types on container fns
2015-08-13 22:14:14 -04:00
Nick Mathewson
e62518865b
Decouple routerlist_retry_directory_downloads() from the blob
...
Instead of having it call update_all_descriptor_downloads and
update_networkstatus_downloads directly, we can have it cause them to
get rescheduled and called from run_scheduled_events.
Closes ticket 16789.
2015-08-13 09:45:30 -04:00
Nick Mathewson
c7c73f1178
Change lost_owning_controller() to call activate_signal().
...
Closes ticket 16788.
2015-08-13 09:17:41 -04:00
David Goulet
0b3fe6272e
Add changes file for #16389
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-13 15:09:35 +02:00
Nick Mathewson
6b26962966
Merge branch 'bug16539'
2015-08-12 13:35:53 -04:00
Nick Mathewson
3cc6d59521
Fix a windows compilation error
2015-08-12 13:16:08 -04:00
Nick Mathewson
2088b3b8e2
whoops; add a stale changes file
2015-08-12 12:31:03 -04:00
Nick Mathewson
9deb3c61fe
Fix a memory leak when adding an ri with expired ed certs
...
Fixes bug 16539; bugfix on 0.2.7.2-alpha.
2015-08-12 12:27:45 -04:00
Yawning Angel
78fad380cd
Use ed25519-donna's batch verification support when applicable.
...
The code was always in our Ed25519 wrappers, so enable it when using
the ed25519-donna backend, and deal with the mocking related
crypto_rand silliness.
Implements feature 16533.
2015-08-12 16:01:28 +00:00
Yawning Angel
af898f5475
Add crypto_rand_unmocked, which is crypto_rand without mocking.
...
There is odd issues with calling crypto_rand from our copy of
ed25519-donna, due to mocking that are not easily resolved.
2015-08-12 15:57:05 +00:00
Nick Mathewson
f4f0b43268
Try to decouple process_signal() from anything not event-driven
...
This needs debugging; it currently breaks the stem tests.
2015-08-12 11:25:00 -04:00
Nick Mathewson
23fb084cb2
Merge branch 'ticket16762_squashed'
2015-08-12 11:02:27 -04:00
Nick Mathewson
b65d53519a
Decouple the backend for directory_all_unreachable to simplify our CFG
...
See ticket 16762.
2015-08-12 11:02:20 -04:00
Nick Mathewson
835e09e54b
Split the client-only parts of init_keys() into a separate function
...
This should simplify the callgraph a little more.
2015-08-11 10:41:20 -04:00
Nick Mathewson
da04fed865
Merge branch 'bug16389_027_03_squashed'
2015-08-11 09:34:55 -04:00
David Goulet
7dce409802
Expire after 5 minutes rend cache failure entries
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-11 09:34:41 -04:00
David Goulet
6e96723524
Add created timestamp to a rend cache failure entry
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-11 09:34:41 -04:00
David Goulet
c265621a52
Fix typo in comment about digest256map_t
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-11 09:34:41 -04:00
David Goulet
1070be8217
Use an enum for INTRO_POINT_FAILURE_*
...
Safer, wiser, stronger!
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-11 09:34:41 -04:00
David Goulet
d06af95ba3
Purge client HS failure cache on NEWNYM
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-11 09:34:41 -04:00
David Goulet
ab9a0e3407
Add rend failure cache
...
When fetching a descriptor, we know test every introduction points in it
against our rend failure cache to know if we keep it or not. For this to
work, now everytime an introduction points is discareded (ex: receiving a
NACK), we note it down in our introduction cache.
See rendcache.c for a detailed explanation of the cache's behavior.
Fixes #16389
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-11 09:34:41 -04:00
Nick Mathewson
69f7f9b0d4
Fix windows compilation
2015-08-11 09:09:06 -04:00
Nick Mathewson
3fdc07df5b
Fix a 32-bit compilation warning
2015-08-11 09:07:27 -04:00
Nick Mathewson
7ee7149389
Make HSDir depend on Running/Valid again.
...
When we removed Running/Valid checks from Fast and Stable in 8712, I
removed them from HSDir too, which apparently wasn't a good idea.
Reverts part of a65e835800
. Fixes bug 16524. Bugfix
on 0.2.7.2-alpha.
2015-08-11 08:42:19 -04:00
Nick Mathewson
81e0fd8360
Merge remote-tracking branch 'public/feature16734'
2015-08-10 15:14:49 -04:00
Nick Mathewson
8afbc154f7
Remove a 9-function strongly connected component of tor's callgraph.
...
microdesc_free_() called get_microdesc_cache(), which had the fun
side-effect of potentially reloading the whole cache from disk.
Replace it with a variant that doesn't.
2015-08-10 15:00:17 -04:00
Nick Mathewson
def5883bbb
Update callgraph code to find and output strongly connected components
2015-08-10 12:11:34 -04:00
Nick Mathewson
8c92ffab22
Merge remote-tracking branch 'dgoulet/bug16274_027_02'
2015-08-10 11:49:04 -04:00
Nick Mathewson
720a9ccb2f
Check for EINTR correctly on windows
...
(even though these are nonblocking calls and EINTR shouldn't be possible).
Also, log what error we're seing if drain_fn fails.
2015-08-07 09:12:33 -04:00
Nick Mathewson
887d86b76d
Merge remote-tracking branch 'public/decouple-write'
2015-08-06 12:58:18 -04:00
Nick Mathewson
e86c3b283a
Merge remote-tracking branch 'public/bug16286'
2015-08-06 12:44:13 -04:00
Isis Lovecruft
7155ee849e
Fix misnamed parameter in or_circuit_new docstring.
...
* CHANGES `p_conn` to `p_chan` in `or_circuit_new()` docstring.
2015-08-06 06:05:07 +00:00
Nick Mathewson
574344b9ab
add dSYM files to gitignore (they are an osx thing)
2015-08-05 21:41:40 -04:00
Nick Mathewson
1ccba302f7
Update tor-fw-helper URL
2015-08-05 15:07:13 -04:00
Nick Mathewson
50049df0d4
Add a compat function to check how much disk space is free.
...
Closes ticket 16734.
2015-08-05 14:01:49 -04:00
David Goulet
79798a2363
Set the open file limit to the current value before changing it
...
If setrlimit() failed, max_out wasn't set in set_max_file_descriptors()
ending in a state where we don't use ULIMIT_BUFFER for things like tor
private key files.
Also fix the set_max_file_descriptors() documentation.
Fixes #16274
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-05 13:17:33 -04:00
Nick Mathewson
9338847bf4
Write a bunch more test for doc/WritingTests
2015-08-05 11:47:38 -04:00
Nick Mathewson
ebff18d18e
Allow cov-display to take directories as arguments
2015-08-05 11:06:41 -04:00
Nick Mathewson
1d63ecbed0
Let's try to get test_workqueue working on windows
2015-08-05 10:34:46 -04:00
Nick Mathewson
9e07dfa34b
Merge remote-tracking branch 'public/bug13338'
2015-08-04 14:00:58 -04:00
cypherpunks
b3ea3c8e2f
Switch order of unblocking threads and releasing the mutex.
...
According to POSIX, the mutex must be locked by the thread calling the signal
functions to ensure predictable scheduling behavior.
Found the issue using Helgrind which gave the warning `dubious: associated lock
is not held by any thread`.
2015-08-04 13:35:02 -04:00
Nick Mathewson
5721627517
Update doc/HACKING with more coverage instructions
2015-08-03 13:30:25 -04:00
Nick Mathewson
62e6513b48
When building with coverage, run chutney with coverage
...
Previously, this required me to do stuff like
'cp src/or/tor-cov src/or/tor' ,
which is pretty embarrassing.
2015-08-03 13:23:58 -04:00
Nick Mathewson
6de49f4d9a
Improved targets for "run all the tests, no, all of them."
2015-08-03 13:03:58 -04:00