Nick Mathewson [Thu, 11 Oct 2007 21:40:35 +0000 (21:40 +0000)]
r15703@catbus: nickm | 2007-10-11 17:30:34 -0400
Fix for the reported case of bug 438: check families as well as identities in circuit_find_to_cannibalize(). Code audit still pending. ;)
Nick Mathewson [Thu, 11 Oct 2007 20:45:26 +0000 (20:45 +0000)]
r15689@catbus: nickm | 2007-10-11 16:40:25 -0400
Fix bug 451. This was a nasty bug, so let's fix it twice: first, by banning recursive calls to connection_handle_write from connection_flushed_some; and second, by not calling connection_finished_flushing() on a closed connection. Backport candidate.
Nick Mathewson [Thu, 11 Oct 2007 18:01:12 +0000 (18:01 +0000)]
r14892@Kushana: nickm | 2007-10-11 14:00:33 -0400
Fix a bunch of XXX020s: treat some 403s as INFO severity; remove some dead code; share the retry path for consensus routerdescs that are also listed in the v2 networkstatus; check even more aspects of votes when parsing them.
Nick Mathewson [Thu, 11 Oct 2007 16:06:47 +0000 (16:06 +0000)]
r14886@Kushana: nickm | 2007-10-11 11:02:53 -0400
Move prototypes around in or.h so that the functions from routerlist.c which moved to networkstatus.c are all grouped in the right section.
Nick Mathewson [Thu, 11 Oct 2007 16:06:42 +0000 (16:06 +0000)]
r14885@Kushana: nickm | 2007-10-11 10:36:16 -0400
Document minimal values for voting times. Use a macro instead of a magic number. Remove an "enforce this" xxxx020 that was already enforced.
Nick Mathewson [Wed, 10 Oct 2007 20:28:01 +0000 (20:28 +0000)]
r15656@catbus: nickm | 2007-10-10 16:23:18 -0400
Fix the implementation of if-modified-since for certificates so that it applies to all types of certificate requests. Note that the kind of consensus that matters already has a working if-modified-since.
Roger Dingledine [Wed, 10 Oct 2007 19:53:08 +0000 (19:53 +0000)]
Tweak the implementation of proposal 109 slightly: allow at most
two Tor servers on the same IP address, except if it's the location
of a directory authority, in which case allow five.
Nick Mathewson [Wed, 10 Oct 2007 19:33:19 +0000 (19:33 +0000)]
r15636@catbus: nickm | 2007-10-10 15:28:12 -0400
Retry consensus and certificate downloads properly. Do not fail when there are no certificates to download. Do not download certificates we already have when retrying.
Nick Mathewson [Wed, 10 Oct 2007 17:48:58 +0000 (17:48 +0000)]
r15630@catbus: nickm | 2007-10-10 13:39:44 -0400
Save weighted-fractional-uptime to disk as well as MTBF. Bump the version on rouer-stability: downgrading to versions earlier than this one will lose your WFU data.
Nick Mathewson [Wed, 10 Oct 2007 04:37:38 +0000 (04:37 +0000)]
r15621@catbus: nickm | 2007-10-10 00:37:25 -0400
Turns out, Bug 463 was just another "warn about something that is no big deal" thing. Downgrade, comment, and resolve.
Nick Mathewson [Tue, 9 Oct 2007 23:02:02 +0000 (23:02 +0000)]
r15608@catbus: nickm | 2007-10-09 19:01:50 -0400
Give better messages and return values from signature uploads and downlaods; also, log actual errors when we screw up.
Nick Mathewson [Tue, 9 Oct 2007 20:44:51 +0000 (20:44 +0000)]
r15599@catbus: nickm | 2007-10-09 16:44:36 -0400
Fix the bug that was making moria1 set valid-after wrong in its votes: we were looking at the preferred timing when we should have been looking at the consensus timing.
Nick Mathewson [Tue, 9 Oct 2007 20:44:47 +0000 (20:44 +0000)]
r15598@catbus: nickm | 2007-10-09 16:37:35 -0400
Turn all "Is DirPort nonzero? Because if it is, we must be a directory" logic into calls to dirserver_mode().
Nick Mathewson [Tue, 9 Oct 2007 20:44:45 +0000 (20:44 +0000)]
r15597@catbus: nickm | 2007-10-09 16:17:42 -0400
Make authority_certs_fetch_missing only fetch certificates which we are not currently downloading; fix XXXX020s in networkstatus.c
Nick Mathewson [Tue, 9 Oct 2007 19:14:48 +0000 (19:14 +0000)]
r15590@catbus: nickm | 2007-10-09 15:14:42 -0400
Change dirvote_get_vote to take named flags rather than 3 boolean inputs. Fix a bug that was caused by the order of the boolean inputs in or.h not matching the order of boolean inputs in dirvote.c.
Nick Mathewson [Tue, 9 Oct 2007 19:14:46 +0000 (19:14 +0000)]
r15589@catbus: nickm | 2007-10-09 15:08:00 -0400
Fix dumb typo in vote retrieval: we want to check the pending votes to see what we are missing; not the previous period.
Nick Mathewson [Tue, 9 Oct 2007 19:05:38 +0000 (19:05 +0000)]
r15587@catbus: nickm | 2007-10-09 15:05:27 -0400
When parsing two concatenated networkstatuses (as we do when voting), detect the end of the first one properly.
Nick Mathewson [Tue, 9 Oct 2007 17:40:23 +0000 (17:40 +0000)]
Bugfixes in fetching certificates for a consensus: fetch tor/keys/fp/X, not tor/keys/X. Also, count signatures where no certificate is known as "missing a certificate" not as "unknown authority."
Nick Mathewson [Tue, 9 Oct 2007 15:27:45 +0000 (15:27 +0000)]
r14813@Kushana: nickm | 2007-10-09 11:10:48 -0400
Use download_status_t for v2 networkstatuses and certs as well as for routers. Make functions to manipulate it. Next steps: use it for consensus networkstatuses, and get consensus download rescheduling working.
Nick Mathewson [Mon, 8 Oct 2007 21:21:50 +0000 (21:21 +0000)]
r14802@Kushana: nickm | 2007-10-08 17:21:30 -0400
Refactor out about a third of routerlist.c into a new networkstatus.c. I\m not sure that I got everything that needed to move, but so far so good.
Nick Mathewson [Mon, 8 Oct 2007 17:44:19 +0000 (17:44 +0000)]
r14770@Kushana: nickm | 2007-10-08 11:43:02 -0400
Make router_digest_is_trusted_dir able to check for type. When looking for a V3 directory, only assume that the V3 authorities and caches have it: previous code assumed that all authorities had it.
Nick Mathewson [Mon, 8 Oct 2007 17:44:09 +0000 (17:44 +0000)]
r14769@Kushana: nickm | 2007-10-07 14:00:17 -0400
Fetch networkstatus consensus documents as needed. Disabled for clients until more caches support it.
Nick Mathewson [Thu, 4 Oct 2007 16:21:58 +0000 (16:21 +0000)]
r15530@catbus: nickm | 2007-10-04 12:16:27 -0400
Add a bunch of function documentation; clean up a little code; fix some XXXXs; tag the nonsensical EXTRAINFO_PURPOSE_GENERAL as nonsesnse; note another bit of "do not cache special routers" code to nuke.
Nick Mathewson [Tue, 2 Oct 2007 20:19:43 +0000 (20:19 +0000)]
r15510@catbus: nickm | 2007-10-02 16:14:42 -0400
Add support for more vote URLs that weasel wanted. Weasel: please test this before I inflict it on anybody else. :)
Nick Mathewson [Tue, 2 Oct 2007 01:22:42 +0000 (01:22 +0000)]
r15436@catbus: nickm | 2007-10-01 21:17:27 -0400
Fix disgusting O(n^2) behavior in router_parse_list_from_string. Noticed by Li-Hui Zhou; found with oprofile.
Nick Mathewson [Fri, 28 Sep 2007 19:23:54 +0000 (19:23 +0000)]
r14682@Kushana: nickm | 2007-09-28 15:23:38 -0400
From little acorns: redo our string and digest hashing code to be faster, since this stuff may be critical-path.
Nick Mathewson [Thu, 27 Sep 2007 20:46:30 +0000 (20:46 +0000)]
r15422@catbus: nickm | 2007-09-27 16:42:35 -0400
Use descriptor annotations to record the source, download t time, and purpose of every descriptor we add to the store. The remaining to-do item is to stop setting do_not_cache on bridges.
Nick Mathewson [Thu, 27 Sep 2007 20:46:28 +0000 (20:46 +0000)]
r15421@catbus: nickm | 2007-09-27 15:44:17 -0400
When we are a bridge directory, add bridges with purpose BRIDGE, not with purpose CONTROLLER. Roger, is this right?
Nick Mathewson [Thu, 27 Sep 2007 20:46:24 +0000 (20:46 +0000)]
r15420@catbus: nickm | 2007-09-27 15:40:25 -0400
Remove annotated_desc_store store (which we never used). Instead, shift name of router store to cached-descriptors, but initialize it from cached-routers as needed
Nick Mathewson [Thu, 27 Sep 2007 16:41:42 +0000 (16:41 +0000)]
r15418@catbus: nickm | 2007-09-27 12:37:59 -0400
Fix a stupid logic error in authority_cert_get_by_sk_digest: the presence of an authority lacking a v3 cert does not mean that subsequent authorities lack them too.
Nick Mathewson [Thu, 27 Sep 2007 16:08:10 +0000 (16:08 +0000)]
r15412@catbus: nickm | 2007-09-27 12:04:24 -0400
More annotated-store work: handle annotations in lists correctly. Add ability to prepend annotations to a routerdesc (and to every rtouredesc in a list), while verifying that the routerdesc is not already annotated.
Nick Mathewson [Wed, 26 Sep 2007 16:19:44 +0000 (16:19 +0000)]
r15400@catbus: nickm | 2007-09-26 12:13:12 -0400
Backend for descriptor annotations: parse annotations as keywords; only allow them to appear in the cache; do not serve them as part of the descriptor if we are a dirserver. Still need mechanism to set annotations. Still need to rename cache file.