Nick Mathewson [Mon, 30 Apr 2007 19:48:39 +0000 (19:48 +0000)]
r12586@catbus: nickm | 2007-04-30 15:43:05 -0400
More work for proposal 104: actually cache extrainfo documents to disk, and reload the cache properly.
Nick Mathewson [Mon, 30 Apr 2007 19:48:33 +0000 (19:48 +0000)]
r12585@catbus: nickm | 2007-04-30 14:38:37 -0400
(Needs review.) Allow directory authorities to accept multiple router descriptors and extra info documents in a single POST. This will make implementing the client side of proposal 104 a lot simpler.
Nick Mathewson [Mon, 30 Apr 2007 17:46:19 +0000 (17:46 +0000)]
r12581@catbus: nickm | 2007-04-30 13:39:21 -0400
Minor cleanups on hidden service usage patch from Karsten: tidy documentation; make free_all idempotent (and safe to call even if we have not yet initialized rephist); and stop using "l" as a variable name (it is too easy to confuse with "1").
Nick Mathewson [Mon, 30 Apr 2007 17:46:13 +0000 (17:46 +0000)]
r12580@catbus: nickm | 2007-04-30 13:29:05 -0400
Initial version of patch from Karsten Loesing: Add an HSAuthorityRecordStats option to track statistics of overall hidden service usage without logging information that would be useful to an attacker.
Nick Mathewson [Mon, 30 Apr 2007 14:26:38 +0000 (14:26 +0000)]
r12567@catbus: nickm | 2007-04-30 10:26:35 -0400
Suggested by weasel: Add a fast function to check for the common failure mode for bug 417/404, and call it a lot.
Nick Mathewson [Mon, 30 Apr 2007 13:17:57 +0000 (13:17 +0000)]
r12559@catbus: nickm | 2007-04-30 09:17:54 -0400
Fix bug 421: Only set the revision number from SVK if we have a runnable svk _and_ a ~/.svk directory.
Nick Mathewson [Mon, 30 Apr 2007 05:32:57 +0000 (05:32 +0000)]
r12553@catbus: nickm | 2007-04-30 01:32:54 -0400
Backport candidate: Add asserts to dirserv_remove_invalid, and fix a bug in dirserv_remove_invalid that could mess with pointers in a freed routerinfo right after it was freed.
Roger Dingledine [Fri, 27 Apr 2007 10:26:09 +0000 (10:26 +0000)]
Make PreferTunneledDirConns and TunnelDirConns work even when
we have no cached directory info. This means Tor clients can now
do all of their connections protected by TLS.
Nick Mathewson [Mon, 23 Apr 2007 23:24:53 +0000 (23:24 +0000)]
r12784@Kushana: nickm | 2007-04-23 19:24:09 -0400
Avoid another assert failure in the new buffer memory code. (This time, it hit when freeing a 4k buffer with some data on it.)
Nick Mathewson [Sat, 21 Apr 2007 17:48:50 +0000 (17:48 +0000)]
r12489@catbus: nickm | 2007-04-21 13:48:39 -0400
The ten thousandth Tor commit: add two new proposals (one from Mike Perry about randomized path length, and one from me about simplifyin authority operation) and expand and/or refine serveral older ones. Most notable there are changes to 103 that will allow us to make authorities more resistant to key compromise.
Nick Mathewson [Sat, 21 Apr 2007 17:48:45 +0000 (17:48 +0000)]
r12488@catbus: nickm | 2007-04-21 13:47:09 -0400
Mark more proposals for inclusion in 0.2.0. Arma, please take this out or question them if you disagree.
Nick Mathewson [Sat, 21 Apr 2007 17:26:12 +0000 (17:26 +0000)]
r12763@Kushana: nickm | 2007-04-20 18:42:58 -0400
Initial version of code to stop using socket pairs for linked connections. Superficially, it seems to work, but it probably needs a lot more testing and attention.
Nick Mathewson [Sat, 21 Apr 2007 17:24:18 +0000 (17:24 +0000)]
r12759@Kushana: nickm | 2007-04-20 08:47:20 -0400
Track the number of connection_t separately from the number of open sockets. It is already possible to have connections that do not count: resolving conns, for one. Once we move from socketpairs to linked conns, and once we do dns proxying, there will be lots of such connections.
Nick Mathewson [Thu, 19 Apr 2007 19:52:30 +0000 (19:52 +0000)]
r12458@catbus: nickm | 2007-04-19 15:52:23 -0400
Fix a bug in displaying memory pool usage. Also dump cell allocation, and track padded_cell_ts as they are allocated and freed, to make sure we are not leaking cells.
Nick Mathewson [Thu, 19 Apr 2007 15:23:38 +0000 (15:23 +0000)]
r12434@catbus: nickm | 2007-04-19 11:23:35 -0400
When advancing a string pointer, make sure we do not later free the altered pointer. Fixes bug 416, introduced in r9971.
Nick Mathewson [Wed, 18 Apr 2007 19:28:47 +0000 (19:28 +0000)]
r12429@catbus: nickm | 2007-04-18 15:28:41 -0400
Make svn revision number visible in version even if building from a .tar.gz. This was remarkably painless.
Nick Mathewson [Tue, 17 Apr 2007 21:16:40 +0000 (21:16 +0000)]
r12425@catbus: nickm | 2007-04-17 17:16:38 -0400
Detect the svn version correctly when building from an svk checkout too. Whee, fun with bash and make.
Nick Mathewson [Tue, 17 Apr 2007 00:58:30 +0000 (00:58 +0000)]
r12418@catbus: nickm | 2007-04-16 20:58:25 -0400
Twiddle tor_version_as_new_as() so we can check for particular svn revisions. With unit tests, for added freshness.
Nick Mathewson [Mon, 16 Apr 2007 23:56:31 +0000 (23:56 +0000)]
A hack I've been wanting for a while: when building a -dev version
from an SVN repository, use the current svn revision in the platform
string and in the output of --version.
Nick Mathewson [Mon, 16 Apr 2007 18:39:39 +0000 (18:39 +0000)]
r12406@catbus: nickm | 2007-04-16 14:39:33 -0400
More proposal-104 stuff: add most of the code for authorities to accept and serve extra-info documents. The back-end to store the things is missing.
Nick Mathewson [Mon, 16 Apr 2007 17:55:08 +0000 (17:55 +0000)]
r12403@catbus: nickm | 2007-04-16 13:55:03 -0400
Code to generate extrainfo whenever routerdesc is regenerated; code to check extrainfo against routerdesc.
Nick Mathewson [Mon, 16 Apr 2007 04:18:29 +0000 (04:18 +0000)]
r12388@catbus: nickm | 2007-04-16 00:17:29 -0400
Now that the directory parser checks for missing items, the rest of the code can just assert that they are there, rather than checking a second time.
Nick Mathewson [Mon, 16 Apr 2007 04:18:21 +0000 (04:18 +0000)]
r12387@catbus: nickm | 2007-04-16 00:06:40 -0400
Refactor router/directory parsing backend: use a separate token table for everything that we parse, and enforce the correct count of each item.
Nick Mathewson [Mon, 16 Apr 2007 04:17:58 +0000 (04:17 +0000)]
r12385@catbus: nickm | 2007-04-15 22:55:58 -0400
Initial code to parse extra-info documents as described in proposal 104. This is making me realize that the parsing code in routerparse.c is a little daft.
Nick Mathewson [Sun, 15 Apr 2007 00:29:12 +0000 (00:29 +0000)]
r12371@catbus: nickm | 2007-04-14 20:01:09 -0400
Add comments to blocking.tex based on an old email from Ian, so I can get the email out of my todo folder.
Nick Mathewson [Wed, 11 Apr 2007 19:58:51 +0000 (19:58 +0000)]
r12353@catbus: nickm | 2007-04-11 15:58:46 -0400
Apparently some compilers think that anonymous unions are bad C. Technically, they're right, so let's name the union in mempool.c.
Nick Mathewson [Wed, 11 Apr 2007 16:28:44 +0000 (16:28 +0000)]
r12351@catbus: nickm | 2007-04-11 12:09:46 -0400
More autoconf hacking: use same machinery to find zlib as for openssl and libevent. Have unified library finder include setup for --with variable. Start trying to suggest to the user what packages they should install if finding the library fails.
Nick Mathewson [Wed, 11 Apr 2007 13:18:25 +0000 (13:18 +0000)]
r12349@catbus: nickm | 2007-04-11 09:18:15 -0400
Add code to shrink the cell memory pool by discarding empty chunks that have been empty for the last 60 seconds. Also, instead of having test.c duplicate declarations for exposed functions, put them inside #ifdef foo_PRIVATE blocks in the headers. This prevents bugs where test.c gets out of sync.
Nick Mathewson [Wed, 11 Apr 2007 00:30:29 +0000 (00:30 +0000)]
r12337@catbus: nickm | 2007-04-10 17:55:26 -0400
Add support for using memory pools to allocate queued cell; pass --disable-cell-pool to configure to disable this.
Nick Mathewson [Tue, 10 Apr 2007 16:24:50 +0000 (16:24 +0000)]
r12332@catbus: nickm | 2007-04-10 12:24:45 -0400
Yet another attempted Bug 411 fix: Under some circumstances, a circuit can have cells without being active. The likeliest is that it has been unlinked from all connections in preparation for closing. Therefore, stop enforcing this non-invariant.
Nick Mathewson [Mon, 9 Apr 2007 23:15:46 +0000 (23:15 +0000)]
r12330@catbus: nickm | 2007-04-09 19:15:42 -0400
Split type of "packed cell" from "parsed cell"; pack cells before queueing them on circuits. This will help us avoid dumb errors when we confuse the two types.
Nick Mathewson [Mon, 9 Apr 2007 21:34:13 +0000 (21:34 +0000)]
r12688@Kushana: nickm | 2007-04-09 17:29:12 -0400
Simplify dns_resolve: use a helper function so that we handle the error/answer/pending cases uniformly in dns_resolve, and everything else in dns_resolve_impl.
Nick Mathewson [Mon, 9 Apr 2007 21:34:03 +0000 (21:34 +0000)]
r12687@Kushana: nickm | 2007-04-09 17:05:57 -0400
Try to fix bug 410: move responsibility for attaching/detaching initial streams from circuits into dns_resolve. Needs refactoring a little.
Nick Mathewson [Mon, 9 Apr 2007 20:09:28 +0000 (20:09 +0000)]
r12318@catbus: nickm | 2007-04-09 16:08:20 -0400
Fix the first half of bug 411: when we make a circuit active inactive on a connection, it _must_ actually be on that connection.
Nick Mathewson [Mon, 9 Apr 2007 20:09:26 +0000 (20:09 +0000)]
r12317@catbus: nickm | 2007-04-09 15:50:51 -0400
Fix second part of bug 411 (which was actually a separate bug): it isnt safe to clear a cell queue while the circuit is active.
Nick Mathewson [Thu, 29 Mar 2007 02:41:36 +0000 (02:41 +0000)]
Fix a crash bug in cell queues: It is possible for a connection_write_to_buf to close the connection or otherwise unlink the circuit, which makes the circuit nonactive, which invalidates the pointer from the circuit to the next circuit on the active ring. Also add a bunch of asserts, most #ifdefed out.
Nick Mathewson [Mon, 26 Mar 2007 14:08:35 +0000 (14:08 +0000)]
r12654@Kushana: nickm | 2007-03-25 19:03:44 -0400
Add documentation for cell queue functions; make destroy cells result in cell queues getting cleared before the destroy gets sent.