| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
Yet more documentation. (Again, trying to see whether I have buildbot working).
svn:r9396
|
|
|
|
| |
svn:r9328
|
|
|
|
|
|
|
| |
Oops. Fix compile error in last build.
svn:r8888
|
|
|
|
|
|
|
| |
Do not warn when an OR gives us a new circuit end reason. (This will prevent bug 351 from recurring.)
svn:r8887
|
|
|
|
|
|
|
| |
Have connection_about_to_close use an end_reason field in edge_connection_t to tell what reason to tell the controller for closing the stream. Set end_reason in connection_edge_end, connection_mark_unattached_ap, and everwhere we set edge_has_sent_end. Add a changelog entry.
svn:r8779
|
|
|
|
|
|
|
| |
Fix an XXX in handling destroy cells: when we get a destroy cell with reason FOO, do not tell the controller REASON=FOO. Instead, say REASON=DESTROYED REMOTE_REASON=FOO. Suggested by a conversation with Mike Perry.
svn:r8760
|
|
|
|
|
|
|
| |
Apply patch from Mike Perry: add more reasons for circuit destroys. (Slightly tweaked to avoid allocating a number for an "internal" reason.)
svn:r8739
|
|
|
|
|
|
|
|
|
|
|
| |
Touch up last patch (to add REASON to CIRC events): make some reasons
more sensible, send reasons only to controllers that have enabled
extended events, and clean up whitespace.
svn:r8672
|
|
|
|
|
|
|
| |
Patch from Mike Perry: add a REASON field to closed and failed circ events.
svn:r8671
|
|
|
|
| |
svn:r8657
|
|
|
|
|
|
|
| |
Fix bug 303: reject attempts to use Tor as a one-hop proxy.
svn:r8566
|
|
|
|
| |
svn:r8400
|
|
|
|
|
|
|
|
| |
we're reachable. Spread them over 4 circuits, so hopefully a few will
be fast. This exercises our bandwidth and bootstraps us quicker.
svn:r8399
|
|
|
|
|
|
|
|
| |
are attached to p_streams, the p_streams list can consist of both AP
and EXIT conns.
svn:r6945
|
|
|
|
|
|
|
| |
Identify some likely target fields for lowering; lower global_identifier (since we only use it for AP streams and origin circs).
svn:r6933
|
|
|
|
|
|
|
| |
Rename some fields, compress a bitfield, and document some structs and fields
svn:r6919
|
|
|
|
|
|
|
| |
Refactor connection_t into edge, or, dir, control, and base subtypes. This might save some RAM on busy exit servers, but really matters most in terms of correctness.
svn:r6906
|
|
|
|
|
|
|
| |
No circuit can be both an intro point and a rend point, so we can merge both the cookie and the pk digest into one "rend_token" field for or circuits. This saves another 20 bytes per or circuit.
svn:r6904
|
|
|
|
|
|
|
| |
Move rend_query to origin_circuit_t where it belongs; save another 17 bytes per OR circuit.
svn:r6903
|
|
|
|
| |
svn:r6818
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
circuit_t into origin_circuit_t and or_circuit_t. I fixed some
segaults; there may be more. We still need to move more rendezvous
stuff into subtypes.
This is a trial run for splitting up connection_t; if the approach is
insane, please say so soon so we can do something smarter.
Also, this discards the old HALF_OPEN code, which nobody seems to
want.
svn:r6817
|
|
|
|
| |
svn:r6311
|
|
|
|
| |
svn:r6002
|
|
|
|
| |
svn:r5949
|
|
|
|
|
|
|
|
|
|
|
|
| |
sometimes decrement conn->n_circuits even when there was no circuit
originally. This caused conn->n_circuits to go negative.
We noticed this because we were checking if connections can be
closed based on conn->n_circuits == 0, so we were never closing
any connection that had ever had a circuit on it.
svn:r5931
|
|
|
|
| |
svn:r5734
|
|
|
|
|
|
| |
intended.
svn:r5582
|
|
|
|
| |
svn:r5580
|
|
|
|
|
|
|
| |
smartlist yet. so don't free it.
svn:r5577
|
|
|
|
|
|
|
|
|
|
|
|
| |
we screwed up the formatting in wild and unpredictable ways.
fix it before it becomes convention to format logs in wild and
unpredictable ways.
still need to do src/common/ someday.
svn:r5551
|
|
|
|
| |
svn:r5535
|
|
|
|
| |
svn:r5511
|
|
|
|
| |
svn:r5510
|
|
|
|
| |
svn:r5508
|
|
|
|
| |
svn:r5493
|
|
|
|
| |
svn:r5491
|
|
|
|
| |
svn:r5490
|
|
|
|
|
|
| |
circuits wanted us to open a given OR connection.
svn:r5489
|
|
|
|
|
|
|
| |
conn over and over. that's really bad for memory.
svn:r5463
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Weasel says circuit_get_by_conn is his main timesink. Most of its
users were just checking whether OR conns had circuits, so add a
circuit count to OR conns, and check that. One was
circuit_about_to_close_conn, which was doing an O(n^2) series of calls
to get all circs on an OR conn, so make an O(n) function for that.
Finally, circuit_get_by_edge_conn was using it as a sanity test that
has been around for a while but never found any actualy insanity, so
kill that.
circuit_get_by_conn is finally dead, which is good, since it was never
sane to begin with.
svn:r5460
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
separately. It's important to keep them separate because internal
circuits have their last hops picked like middle hops, rather than like
exit hops. So exiting on them will break the user's expectations.
- Stop cannibalizing internal circuits for general exits, and stop
cannibalizing exit circuits for rendezvous stuff.
- Don't let new exit streams attach to internal circuits.
- When deciding if we have enough circuits for internal and for exit,
don't count the wrong ones.
- Treat predicted resolves as predicted port 80 exits.
svn:r5457
|
|
|
|
|
|
| |
significantly faster.
svn:r5441
|
|
|
|
| |
svn:r5428
|
|
|
|
| |
svn:r5425
|
|
|
|
|
|
|
| |
our code works.
svn:r5358
|
|
|
|
|
|
|
|
| |
node in mind, we weren't checking to see if that exit node
was already present earlier in the circuit. oops.
svn:r5357
|
|
|
|
|
|
|
|
| |
125000 circuit_t's after it had been up for a few weeks, which translates
to 20+ megs of wasted space.
svn:r5333
|
|
|
|
| |
svn:r5317
|
|
|
|
| |
svn:r5312
|
|
|
|
|
|
| |
domain. Domains are now bitmasks... just in case. Make some err msgs non-general.
svn:r5309
|