Nick Mathewson
58edf92678
Free pending_entry_connections on shutdown.
2015-11-17 09:06:47 -05:00
Nick Mathewson
84b3350c83
Be more conservative in scanning the list of pending streams
...
Now we only re-scan the list in the cases we did before: when we
have a new circuit that we should try attaching to, or when we have
added a new stream that we haven't tried to attach yet.
This is part of 17590.
2015-11-17 09:04:25 -05:00
Nick Mathewson
b1d56fc589
Decouple ..attach_circuit() from most of its callers.
...
Long ago we used to call connection_ap_handshake_attach_circuit()
only in a few places, since connection_ap_attach_pending() attaches
all the pending connections, and does so regularly. But this turned
out to have a performance problem: it would introduce a delay to
launching or connecting a stream.
We couldn't just call connection_ap_attach_pending() every time we
make a new connection, since it walks the whole connection list. So
we started calling connection_ap_attach_pending all over, instead!
But that's kind of ugly and messes up our callgraph.
So instead, we now have connection_ap_attach_pending() use a list
only of the pending connections, so we can call it much more
frequently. We have a separate function to scan the whole
connection array to see if we missed adding anything, and log a
warning if so.
Closes ticket #17590
2015-11-17 08:53:34 -05:00
Nick Mathewson
b91bd27e6f
Whoops; in this context the EV_TIMEOUT flag is needed
2015-11-17 08:53:16 -05:00
Nick Mathewson
c113d19b53
Merge branch 'bug3199_redux_3'
2015-11-17 08:27:42 -05:00
Nick Mathewson
661e5bdbfa
Changes to 3199 branch based on feedback from special
2015-11-17 08:26:04 -05:00
Nick Mathewson
eb721ed2d9
Add documentation for periodic event api
2015-11-16 10:40:23 -05:00
Nick Mathewson
dd00fd0a1f
Change periodic.c to use libevent directly
...
Libevent's periodic timers aren't the right solution when the
timeout potentially changes every time.
2015-11-13 16:25:40 -05:00
Nick Mathewson
65a6489e5e
fix whitespace; remove dead code
2015-11-13 16:24:45 -05:00
Nick Mathewson
2bf8fb5ee3
Fold all of the run-every-second stuff back into run_scheduled_events()
2015-11-13 16:24:45 -05:00
Nick Mathewson
9f31908a40
Turn all of run_scheduled_events() into a bunch of periodic events
...
This patch is designed to look good when you see it through 'diff -b':
it mostly leaves entries in the same order, and leaves the code unmodified.
2015-11-13 16:24:45 -05:00
Nick Mathewson
e8b459a2fa
Connect periodic events to main
2015-11-13 16:24:44 -05:00
Kevin Butler
fbeff307f7
Infrastructure for replacing global periodic events in main.c
...
(This is from Kevin's bug3199 patch series; nick extracted it into
a new file and changed the interface a little, then did some API
tweaks on it.)
2015-11-13 16:24:44 -05:00
Nick Mathewson
7a940fac1c
appease check-spaces
2015-11-13 13:46:47 -05:00
Nick Mathewson
d467227323
Merge remote-tracking branch 'public/ticket11150_client_only'
2015-11-13 09:58:16 -05:00
Nick Mathewson
f7ccc9b975
Merge branch 'decouple_circuit_mark_squashed'
2015-11-12 14:20:24 -05:00
Nick Mathewson
8b4e5b7ee9
Experimentally decouple the main body of circuit_mark_for_close
2015-11-12 14:20:16 -05:00
Nick Mathewson
d20a3d07e3
Merge branch 'karsten_bug13192_026_03_teor'
2015-11-12 11:40:58 -05:00
teor (Tim Wilson-Brown)
0d5a439292
Mark fallback directoriess as too busy after a 503 response
...
Mark fallback directory mirrors as "too busy" when they return
a 503 response. Previously, the code just marked authorities as busy.
Unless clients set their own fallback directories, they will never see
this bug. (There are no default fallbacks yet.)
Fixes bug 17572; bugfix on 5c51b3f1f0
released in 0.2.4.7-alpha.
Patch by "teor".
2015-11-10 09:47:48 +11:00
rl1987
a187c772af
Seventh test case for dns_resolve_impl().
2015-10-24 14:30:53 +03:00
rl1987
f53dcf6a35
Sixth test case for dns_resolve_impl.
2015-10-24 14:30:52 +03:00
rl1987
cc1bed9974
Add a fifth unit test.
2015-10-24 14:30:52 +03:00
rl1987
1096f7638e
A second test case for dns_resolve_impl.
2015-10-24 14:30:50 +03:00
Nick Mathewson
52fd384a46
Merge remote-tracking branch 'origin/maint-0.2.7'
2015-10-21 11:18:11 -04:00
Nick Mathewson
9c4a0aef0c
Fix a memory leak in reading an expired ed signing key.
...
Closes 17403.
2015-10-21 11:16:28 -04:00
Nick Mathewson
35edd74e25
Merge remote-tracking branch 'origin/maint-0.2.7'
2015-10-21 10:56:40 -04:00
Nick Mathewson
5d45a26f39
Whoops; infinite recursion
2015-10-21 10:56:27 -04:00
Nick Mathewson
d14b009b23
Merge remote-tracking branch 'origin/maint-0.2.7'
2015-10-21 10:54:12 -04:00
Nick Mathewson
8b01849f3b
Yet more memory leaks in the rendcache tests
2015-10-21 10:54:07 -04:00
Nick Mathewson
aa96abe66b
Fix memory leak in rend_cache_failure_entry_free()
...
Bug 17402.
2015-10-21 10:52:57 -04:00
Nick Mathewson
a5e873ff29
Merge remote-tracking branch 'origin/maint-0.2.7'
2015-10-21 10:28:16 -04:00
Nick Mathewson
03eb999d42
Fix an (unreachable) memory leak in rendcache.c
...
The 0.2.8 unit tests provoke this leak, though I don't think it can
happen IRL.
2015-10-21 10:27:19 -04:00
Nick Mathewson
46cd466dec
Merge remote-tracking branch 'origin/maint-0.2.7'
2015-10-21 10:00:52 -04:00
Nick Mathewson
34b4da709d
Fix a bunch more memory leaks in the tests.
2015-10-21 10:00:05 -04:00
Nick Mathewson
5b2070198a
Fix a use-after-free in validate_intro_point_failure. Bug 17401. Found w valgrind
2015-10-21 09:59:19 -04:00
Nick Mathewson
a8a26ca30e
Merge remote-tracking branch 'origin/maint-0.2.7'
2015-10-15 13:56:53 -04:00
Nick Mathewson
7e7683b254
Merge remote-tracking branch 'origin/maint-0.2.6' into maint-0.2.7
2015-10-15 13:56:41 -04:00
David Goulet
2ec5e24c58
Add hidserv-stats filname to our sandbox filter
...
Fixes #17354
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-10-15 13:42:34 -04:00
Nick Mathewson
9d019a7db7
tor_tls_finish_handshake is server-side only.
2015-10-07 10:32:54 -04:00
Nick Mathewson
6505d529a5
Remove client-side support for detecting v1 handshake
...
Fixes more of 11150
2015-10-07 10:13:39 -04:00
Nick Mathewson
bd1a137893
Remove the client-side code for the v1 and v2 tls handshakes.
...
(This is safe since super-old Tor servers are no longer allowed on
the network.)
Closes the client-side part of 11150.
2015-10-07 10:04:12 -04:00
Nick Mathewson
15bfdbeb9d
fix check-spaces once more
2015-10-06 11:32:37 -04:00
Nick Mathewson
f179abdca9
Merge remote-tracking branch 'twstrike/rendcache_tests'
...
Conflicts:
src/test/include.am
src/test/rend_test_helpers.c
src/test/rend_test_helpers.h
2015-10-06 11:32:06 -04:00
Ola Bini
70de8d4bf8
Fix spaces and other smaller issues
2015-10-05 14:31:10 -05:00
Roger Dingledine
c9cb5516ab
fix easy typo
2015-10-04 12:28:25 -04:00
Nick Mathewson
21c201202e
Merge remote-tracking branch 'twstrike/dir-handle-cmd-get'
2015-10-02 15:04:28 +02:00
Nick Mathewson
67182226f1
Merge remote-tracking branch 'teor/warn-when-time-goes-backwards'
2015-10-02 13:56:28 +02:00
Nick Mathewson
488e9a0502
Merge remote-tracking branch 'teor/routerset-parse-IPv6-literals'
...
(Minor conflicts)
2015-10-02 13:54:20 +02:00
Nick Mathewson
0b3190d4b7
Merge remote-tracking branch 'donncha/feature14846_4'
2015-10-02 13:40:26 +02:00
teor (Tim Wilson-Brown)
763cb393d3
fixup #17188 : Add most likely reasons for clock going backwards
...
Add "You might have an empty clock battery or bad NTP server."
2015-10-01 09:58:15 +02:00