diff options
author | Nick Mathewson <nickm@torproject.org> | 2011-06-22 15:29:30 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2011-07-11 16:13:17 -0400 |
commit | 734d9486f62b0fb19c71cac7a484ae65091bd41d (patch) | |
tree | 1b42bcc91ce3062fb0e4f6c0d3c4a94fea4c8077 /src/or/connection.c | |
parent | 0fd8ce15c2d970368d1ccf5f77a4e407a008a76d (diff) | |
download | tor-734d9486f62b0fb19c71cac7a484ae65091bd41d.tar.gz tor-734d9486f62b0fb19c71cac7a484ae65091bd41d.zip |
Record the states of failing OR connections
This code lets us record the state of any outgoing OR connection
that fails before it becomes open, so we can notice if they're all
dying in the same SSL state or the same OR handshake state.
More work is still needed:
- We need documentation
- We need to actually call the code that reports the failure when
we realize that we're having a hard time connecting out or
making circuits.
- We need to periodically clear out all this data -- perhaps,
whenever we build a circuit successfully?
- We'll eventually want to expose it to controllers, perhaps.
Partial implementation of feature 3116.
Diffstat (limited to 'src/or/connection.c')
-rw-r--r-- | src/or/connection.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/or/connection.c b/src/or/connection.c index e8a17e7641..b0e0f84371 100644 --- a/src/or/connection.c +++ b/src/or/connection.c @@ -554,6 +554,9 @@ connection_free_all(void) /* Unlink everything from the identity map. */ connection_or_clear_identity_map(); + /* Clear out our list of broken connections */ + clear_broken_connection_map(); + SMARTLIST_FOREACH(conns, connection_t *, conn, _connection_free(conn)); if (outgoing_addrs) { |