| Commit message (Expand) | Author | Age |
... | |
* | | | Merge branch 'nodes' | Nick Mathewson | 2010-10-13 |
|\ \ \ |
|
| * | | | Try to make most routerinfo_t interfaces const | Nick Mathewson | 2010-10-01 |
| * | | | Implement a basic node and nodelist type•••The node_t type is meant to serve two key functions:
1) Abstracting difference between routerinfo_t and microdesc_t
so that clients can use microdesc_t instead of routerinfo_t.
2) Being a central place to hold mutable state about nodes
formerly held in routerstatus_t and routerinfo_t.
This patch implements a nodelist type that holds a node for every
router that we would consider using.
| Nick Mathewson | 2010-10-01 |
* | | | | Send END cells on bufferevent tunneled directory conns•••Our old code correctly called bufferevent_flush() on linked
connections to make sure that the other side got an EOF event... but
it didn't call bufferevent_flush() when the connection wasn't
hold_open_until_flushed. Directory connections don't use
hold_open_until_flushed, so the linked exit connection never got an
EOF, so they never sent a RELAY_END cell to the client, and the
client never concluded that data had arrived.
The solution is to make the bufferevent_flush() code apply to _all_
closing linked conns whose partner is not already marked for close.
| Nick Mathewson | 2010-10-13 |
* | | | | Use connection_mark_and_flush consistently. | Nick Mathewson | 2010-10-13 |
|/ / / |
|
* | | | Start tor-fw-helper in the background, and log whatever it outputs | Steven Murdoch | 2010-09-30 |
* | | | Merge remote branch 'origin/maint-0.2.2' | Nick Mathewson | 2010-09-29 |
|\| | |
|
| * | | handle ugly edge case in retrying entrynodes•••Specifically, a circ attempt that we'd launched while the network was
down could timeout after we've marked our entrynodes up, marking them
back down again. The fix is to annotate as bad the OR conns that were
around before we did the retry, so if a circuit that's attached to them
times out we don't do anything about it.
| Roger Dingledine | 2010-09-28 |
| * | | refactor; no actual changes | Roger Dingledine | 2010-09-28 |
* | | | Download microdescriptors if you're a cache•••This commit adds some functions to see what microdescriptors we're missing,
and adds fetch-microdesc/store-microdesc logic to the directory code.
| Nick Mathewson | 2010-09-27 |
* | | | Document and/or fix stuff found by Sebastian in code review•••Thanks to Sebastian for his code-review of the bufferevents patch series.x
| Nick Mathewson | 2010-09-27 |
* | | | Convert bufferevents to use rate-limiting.•••This requires the latest Git version of Libevent as of 24 March 2010.
In the future, we'll just say it requires Libevent 2.0.5-alpha or
later.
Since Libevent doesn't yet support hierarchical rate limit groups,
there isn't yet support for tracking relayed-bytes separately when
using the bufferevent system. If a future version does add support
for hierarchical buckets, we can add that back in.
| Nick Mathewson | 2010-09-27 |
* | | | Fix a couple of bufferevent incompatibilities that snuck in. | Nick Mathewson | 2010-09-27 |
* | | | Get SSL connections and linked connections working with bufferevents.•••Clients are now verified to work and build circuits correctly. There
are still a few warnings given here and there that I need to look into.
| Nick Mathewson | 2010-09-27 |
* | | | Add support for linked connections with bufferevent_pair.•••Also, set directory connections (linked and otherwise) to use bufferevents.
Also, stop using outbuf_flushlen anywhere except for OR connections.
| Nick Mathewson | 2010-09-27 |
* | | | Add bufferevent support for outgoing connections; exits are now supported. | Nick Mathewson | 2010-09-27 |
* | | | Be a little more abstract about which connection type use bufferevents | Nick Mathewson | 2010-09-27 |
* | | | Make a function to mark a connection and set hold_open_until_flushed. | Nick Mathewson | 2010-09-27 |
* | | | Allow hold-open-until-flushed logic to work for bufferevents. | Nick Mathewson | 2010-09-27 |
* | | | Refactor users of buf_datalen to bufferevent-friendly version. | Nick Mathewson | 2010-09-27 |
* | | | Teach read_event/write_event manipulators about bufferevents.•••Add an --enable-bufferevents config switch.
| Nick Mathewson | 2010-09-27 |
|/ / |
|
* | | Rename has_completed_circuit to can_complete_circuit•••Also redocument it. Related to #1362.
| Nick Mathewson | 2010-09-22 |
* | | Merge remote branch 'origin/maint-0.2.1' | Nick Mathewson | 2010-09-08 |
|\| |
|
| * | Remove a needless keep_open_until_flushed | Nick Mathewson | 2010-09-08 |
| * | Close a non-open OR connection *only* after KeepalivePeriod.•••When we introduced the code to close non-open OR connections after
KeepalivePeriod had passed, we replaced some code that said
if (!connection_is_open(conn)) {
/* let it keep handshaking forever */
} else if (do other tests here) {
...
with new code that said
if (!connection_is_open(conn) && past_keepalive) {
/* let it keep handshaking forever */
} else if (do other tests here) {
...
This was a mistake, since it made all the other tests start applying
to non-open connections, thus causing bug 1840, where non-open
connections get closed way early.
Fixes bug 1840. Bugfix on 0.2.1.26 (commit 67b38d50).
| Nick Mathewson | 2010-09-03 |
* | | Allow enabling or disabling *Statistics while Tor is running.•••With this patch we stop scheduling when we should write statistics using a
single timestamp in run_scheduled_events(). Instead, we remember when a
statistics interval starts separately for each statistic type in geoip.c
and rephist.c. Every time run_scheduled_events() tries to write stats to
disk, it learns when it should schedule the next such attempt.
This patch also enables all statistics to be stopped and restarted at a
later time.
This patch comes with a few refactorings, some of which were not easily
doable without the patch.
| Karsten Loesing | 2010-08-05 |
* | | Create routerparse.h | Sebastian Hahn | 2010-07-27 |
* | | Create rephist.h | Sebastian Hahn | 2010-07-27 |
* | | Create relay.h | Sebastian Hahn | 2010-07-27 |
* | | Create policies.h | Sebastian Hahn | 2010-07-27 |
* | | Create onion.h | Sebastian Hahn | 2010-07-27 |
* | | Create ntmain.h | Sebastian Hahn | 2010-07-27 |
* | | Create networkstatus.h | Sebastian Hahn | 2010-07-27 |
* | | Create microdesc.h | Sebastian Hahn | 2010-07-27 |
* | | Create main.h | Sebastian Hahn | 2010-07-27 |
* | | Create hibernate.h | Sebastian Hahn | 2010-07-27 |
* | | Create dns.h | Sebastian Hahn | 2010-07-27 |
* | | Create dirvote.h | Sebastian Hahn | 2010-07-27 |
* | | Create dirserv.h | Sebastian Hahn | 2010-07-27 |
* | | Create directory.h | Sebastian Hahn | 2010-07-27 |
* | | Create cpuworker.h | Sebastian Hahn | 2010-07-27 |
* | | Create control.h | Sebastian Hahn | 2010-07-27 |
* | | Create connection_or.h | Sebastian Hahn | 2010-07-27 |
* | | Create connection_edge.h | Sebastian Hahn | 2010-07-27 |
* | | Create connection.h | Sebastian Hahn | 2010-07-27 |
* | | Create config.h | Sebastian Hahn | 2010-07-27 |
* | | Create command.h | Sebastian Hahn | 2010-07-27 |
* | | Create circuituse.h | Sebastian Hahn | 2010-07-27 |
* | | Create circuitlist.h | Sebastian Hahn | 2010-07-27 |
* | | Create circuitbuild.h | Sebastian Hahn | 2010-07-27 |