Nick Mathewson
779b615bc2
r16300@catbus: nickm | 2007-10-31 15:36:41 -0400
...
Next patch from Karsten: rename some macros, tunnel dir connections, generate (and upload) multiple descriptors as appropriate.
svn:r12299
2007-10-31 20:48:06 +00:00
Nick Mathewson
024798ee4c
r16263@catbus: nickm | 2007-10-29 15:08:17 -0400
...
Tidy last patch a bit.
svn:r12273
2007-10-29 19:10:47 +00:00
Nick Mathewson
e136f00ca8
r16262@catbus: nickm | 2007-10-29 13:21:35 -0400
...
Patch from Karsten: Code to act as (and use) v2 hidden service directories.
svn:r12272
2007-10-29 19:10:42 +00:00
Nick Mathewson
20b1085989
r16242@catbus: nickm | 2007-10-28 16:28:13 -0400
...
Implement if-modified-since for consensus networkstatuses so that we do not download duplicates needlessly.
svn:r12258
2007-10-28 20:30:21 +00:00
Nick Mathewson
2ac37c8b01
r16174@catbus: nickm | 2007-10-26 10:55:26 -0400
...
Better log on vote from unknown authority. Make get_by_v3_authority_id retrun only v3 authorities.
svn:r12203
2007-10-26 14:57:26 +00:00
Nick Mathewson
53e6233985
r16153@catbus: nickm | 2007-10-25 10:21:42 -0400
...
do not set authority cert bodies twice: fixes memory leak bug 536.
svn:r12187
2007-10-25 14:31:13 +00:00
Roger Dingledine
0491f2a99c
more cleanups
...
svn:r12172
2007-10-25 03:03:52 +00:00
Nick Mathewson
93331ebf69
r16115@catbus: nickm | 2007-10-24 21:52:33 -0400
...
Tolerate a slightly dead consensus when deciding whether to download descriptors and build circuits.
svn:r12167
2007-10-25 01:53:49 +00:00
Nick Mathewson
02e7a83f91
r16108@catbus: nickm | 2007-10-24 14:41:12 -0400
...
Refactor the arguments for router_pick_{directory_|trusteddir}server[_impl] so that they all take the same flags, and so that their flags have names. Fix their documentation too.
svn:r12157
2007-10-24 18:42:16 +00:00
Nick Mathewson
5b65103bb9
r16101@catbus: nickm | 2007-10-24 11:44:40 -0400
...
Detect mmap failures from empty descriptor files, and only warn if the file was not supposed to be empty. Fixes bug 533
svn:r12154
2007-10-24 15:45:45 +00:00
Roger Dingledine
7a35dad007
Authorities no longer send back "400 you're unreachable please fix
...
it" errors to Tor servers that aren't online all the time. We're
supposed to tolerate these servers now.
svn:r12136
2007-10-24 03:34:03 +00:00
Nick Mathewson
09bce19884
r16042@catbus: nickm | 2007-10-22 13:30:49 -0400
...
Move functions into and out of dirvote.c so that it contains all the v3 authority functionality, and no non-authority functionality.
svn:r12107
2007-10-22 17:31:26 +00:00
Nick Mathewson
c47eb2c8d9
r16032@catbus: nickm | 2007-10-22 11:56:53 -0400
...
When our directory status or our v3 authority status changes, reschedule operations as appropriate. (Fixes some xxxx020 items)
svn:r12102
2007-10-22 16:32:04 +00:00
Nick Mathewson
db05869466
r16031@catbus: nickm | 2007-10-22 11:45:00 -0400
...
Remove an unused and unneeded layer of abstraction: we only have one store for routers. (I had thought we might need a second one for annotated routers, but that's silly.
svn:r12101
2007-10-22 16:32:01 +00:00
Nick Mathewson
4a8cf7b517
r15995@catbus: nickm | 2007-10-21 00:40:46 -0400
...
More fixes for bad behavior when downloading extrainfos: do not download an ei if we lack the key to verify it, and do not download it if we already got it and found (weirdly) that it didn't match the corresponding server descriptor.
svn:r12071
2007-10-21 04:41:00 +00:00
Nick Mathewson
5ada3cc09a
r15991@catbus: nickm | 2007-10-20 20:08:29 -0400
...
Fix a nasty bug in DownloadExtraInfo implementation where we would discard, download, discard, download ad infinitum.
svn:r12069
2007-10-21 00:08:35 +00:00
Nick Mathewson
dc4e710e27
r15976@catbus: nickm | 2007-10-20 19:44:47 -0400
...
Prioritize fetching descriptors and networkstatus docs over fetching more extrainfo docs.
svn:r12067
2007-10-20 23:45:07 +00:00
Nick Mathewson
7bb202fd19
r15965@catbus: nickm | 2007-10-19 13:32:11 -0400
...
Client-side implementation for proposal 122.
svn:r12051
2007-10-19 18:56:24 +00:00
Nick Mathewson
53f9fe7dc5
r15960@catbus: nickm | 2007-10-19 12:30:17 -0400
...
Make authority_certs_fetch_missing() honor should_delay_dir_fetches()
svn:r12048
2007-10-19 16:41:30 +00:00
Nick Mathewson
29dfdac923
r15939@catbus: nickm | 2007-10-18 22:14:15 -0400
...
Remember the valid-until time of the most recent consensus that listed
a router, and (if we are a cache) never delete the routerdesc until
that conensus is expired. This is way easier than retaining multiple
consensuses. (Of course, the info isn't retained across restarts,
but that only affects a few caches at a time.)
svn:r12041
2007-10-19 02:15:47 +00:00
Nick Mathewson
db2c5132c9
r15919@catbus: nickm | 2007-10-18 10:57:47 -0400
...
Add a log message to router_remove_old_routers to try to figure out why peacetime has such a big cache.
svn:r12024
2007-10-18 14:58:45 +00:00
Nick Mathewson
5ff0e4ed56
r15917@catbus: nickm | 2007-10-18 10:50:01 -0400
...
Better log messages about extrainfo downloads.
svn:r12023
2007-10-18 14:50:59 +00:00
Nick Mathewson
59b1b08753
r15905@catbus: nickm | 2007-10-18 09:58:54 -0400
...
Document some functions while I can still rememberf what they do. Fix up some whitespace.
svn:r12018
2007-10-18 14:19:51 +00:00
Nick Mathewson
f988f93b1a
r15877@catbus: nickm | 2007-10-17 12:54:56 -0400
...
Make unverified-consensus get removed when it is accepted or rejected. Make a new get_datadir_fname*() set of functions to eliminate the common code of "get the options, get the datadir, append some stuff".
svn:r12000
2007-10-17 16:55:44 +00:00
Nick Mathewson
c23409080e
r15871@catbus: nickm | 2007-10-16 14:47:00 -0400
...
Add a debugging info msg to routerlist
svn:r11995
2007-10-16 18:47:32 +00:00
Nick Mathewson
9d7eba6ecc
r15868@catbus: nickm | 2007-10-16 14:18:29 -0400
...
Remove nearly all calls to routerlist_remove_old(). Backport candidate.
svn:r11994
2007-10-16 18:19:02 +00:00
Nick Mathewson
03ce9d3ee7
r15848@catbus: nickm | 2007-10-16 10:17:02 -0400
...
Only drop routers for not appearing in the consensus if their purpose is GENERAL.
svn:r11984
2007-10-16 14:25:14 +00:00
Nick Mathewson
3ad6dc0e2e
r15806@catbus: nickm | 2007-10-15 19:14:57 -0400
...
Implement v3 networkstatus client code. Remove v2 networkstatus client code, except as needed for caches to fetch and serve v2 networkstatues and the routers they list.
svn:r11957
2007-10-15 23:15:24 +00:00
Nick Mathewson
09dfe31ff4
r15750@catbus: nickm | 2007-10-13 20:06:47 -0400
...
Eventually delete the obsolete cached-routers and cached-routers.new files, so they don't sit around on disk forever.
svn:r11918
2007-10-14 00:13:06 +00:00
Nick Mathewson
783402f63a
r15731@catbus: nickm | 2007-10-12 17:27:48 -0400
...
Move "sort a list of routerinfo_t" into its own function in routerlist.c
svn:r11903
2007-10-12 21:33:37 +00:00
Nick Mathewson
a009014eb3
r15730@catbus: nickm | 2007-10-12 16:47:47 -0400
...
Note a way to make routerlist_remove_old_routrs get called way less.
svn:r11902
2007-10-12 21:33:35 +00:00
Nick Mathewson
8fdfdc5bbb
r15719@catbus: nickm | 2007-10-12 13:07:45 -0400
...
Add the routers in the latest consensus to the list of routers to retain when removing old ones.
svn:r11895
2007-10-12 17:13:09 +00:00
Roger Dingledine
3977ccbc80
Controllers should now specify cache=no or cache=yes when using
...
the +POSTDESCRIPTOR command.
svn:r11892
2007-10-12 07:57:29 +00:00
Nick Mathewson
3100712c34
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. ;)
svn:r11886
2007-10-11 21:40:35 +00:00
Nick Mathewson
ff2820c1ba
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.
svn:r11871
2007-10-11 18:01:12 +00:00
Nick Mathewson
0a1dd92d3e
r14884@Kushana: nickm | 2007-10-11 10:30:58 -0400
...
More fixes for cacheing bridge descs:Remove obsolete EXTRAINFO_PURPOSE_GENERAL; remove purpose argument from signed_desc_append_to_journal.
svn:r11867
2007-10-11 16:06:37 +00:00
Nick Mathewson
a718fcb1c0
r15663@catbus: nickm | 2007-10-10 16:35:58 -0400
...
Resolve some more voting-related XXXXs.
svn:r11860
2007-10-11 00:13:03 +00:00
Nick Mathewson
0452a965da
r15662@catbus: nickm | 2007-10-10 16:27:58 -0400
...
Removee a misleading log message.
svn:r11859
2007-10-11 00:13:00 +00:00
Roger Dingledine
dd920354c2
let bridge authorities write bridge descriptors to their
...
cached-descriptors* files.
nick, did i get this right?
svn:r11855
2007-10-10 23:11:53 +00:00
Roger Dingledine
d9a99b9ba6
get r11842 closer to what i want
...
svn:r11851
2007-10-10 20:13:52 +00:00
Nick Mathewson
55520a2d95
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.
svn:r11841
2007-10-10 19:33:19 +00:00
Nick Mathewson
8b71a76dd3
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().
svn:r11817
2007-10-09 20:44:47 +00:00
Nick Mathewson
010fd50c36
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
svn:r11816
2007-10-09 20:44:45 +00:00
Nick Mathewson
f1d4e3477b
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."
...
svn:r11805
2007-10-09 17:40:23 +00:00
Nick Mathewson
5346a01796
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.
svn:r11800
2007-10-09 15:27:45 +00:00
Nick Mathewson
bb9cc4fb29
r14812@Kushana: nickm | 2007-10-09 10:22:00 -0400
...
Merge extra fields in local_routerstatus_t back into routerstatus_t. See changelog for rationale.
svn:r11799
2007-10-09 15:27:15 +00:00
Nick Mathewson
18ec603861
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.
svn:r11791
2007-10-08 21:21:50 +00:00
Nick Mathewson
13f7f98ad2
r14799@Kushana: nickm | 2007-10-08 15:55:18 -0400
...
Add code to download router descriptors listed in a v3 networkstatus consensus.
svn:r11790
2007-10-08 19:56:57 +00:00
Nick Mathewson
84d7677a8a
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.
svn:r11789
2007-10-08 17:44:19 +00:00
Nick Mathewson
3f6e3ce61b
r14769@Kushana: nickm | 2007-10-07 14:00:17 -0400
...
Fetch networkstatus consensus documents as needed. Disabled for clients until more caches support it.
svn:r11788
2007-10-08 17:44:09 +00:00
Nick Mathewson
6f7847b378
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.
svn:r11761
2007-10-04 16:21:58 +00:00
Nick Mathewson
b5c8a8ae53
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.
svn:r11680
2007-09-27 20:46:30 +00:00
Nick Mathewson
60efd6b726
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
svn:r11678
2007-09-27 20:46:24 +00:00
Nick Mathewson
a1c5a807d0
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.
svn:r11668
2007-09-27 16:41:42 +00:00
Nick Mathewson
28946069ee
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.
svn:r11665
2007-09-27 16:08:10 +00:00
Nick Mathewson
034524f4b7
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.
svn:r11654
2007-09-26 16:19:44 +00:00
Nick Mathewson
921f9f774d
r15279@catbus: nickm | 2007-09-22 02:00:06 -0400
...
V3 authority work: fetch missing votes and/or signatures as needed.
svn:r11575
2007-09-22 06:06:05 +00:00
Roger Dingledine
193a144c9f
Make "UpdateBridgesFromAuthority" torrc option work: when bridge
...
users configure that and specify a bridge with an identity
fingerprint, now they will lookup the bridge descriptor at the
default bridge authority via a one-hop tunnel, but once circuits
are established they will switch to a three-hop tunnel for later
connections to the bridge authority.
svn:r11550
2007-09-21 06:14:36 +00:00
Nick Mathewson
e73fb2f102
r15049@catbus: nickm | 2007-09-11 16:05:50 -0400
...
When we get a consensus for which we are missing the right certificates, keep it around pending more certificates; do not just drop it.
svn:r11430
2007-09-11 20:17:28 +00:00
Nick Mathewson
4de4f53abd
r15048@catbus: nickm | 2007-09-11 14:20:39 -0400
...
Add code to warn about mauthorities on a consensus when they are not what we expect to find.
svn:r11429
2007-09-11 20:17:25 +00:00
Nick Mathewson
eb3f24f027
r14358@Kushana: nickm | 2007-09-08 13:45:16 -0400
...
Implement certificate fetch functions.
svn:r11405
2007-09-08 19:08:39 +00:00
Nick Mathewson
c967fae598
r14880@catbus: nickm | 2007-08-31 11:06:10 -0400
...
Refactor store_stats_t to hold a pointer to the proper mmap, and turn it into a full-fledged type. This sets stuff up nicely for adding a separate "annotated" store. Add some XXXX NM items that need to be fixed when annotated stores exist
svn:r11338
2007-08-31 15:08:37 +00:00
Roger Dingledine
da1485088c
formatting cleanups
...
svn:r11273
2007-08-25 21:31:34 +00:00
Nick Mathewson
c3805e753a
r14200@kushana: nickm | 2007-08-24 08:33:41 -0400
...
In new code, let's try to prefer named flags to mazes of twisted boolean arguments, all alike.
svn:r11267
2007-08-24 12:33:53 +00:00
Roger Dingledine
daece599a1
more cleanups on r11258. looks good now.
...
svn:r11266
2007-08-24 10:50:48 +00:00
Roger Dingledine
9bacf68851
cleanups on r11258
...
svn:r11263
2007-08-24 08:01:47 +00:00
Roger Dingledine
d39c7515d1
patch from mike perry to a) stop overloading guards as much, and
...
b) raise the max-believable-bandwidth to 10MB/s.
svn:r11258
2007-08-24 06:30:34 +00:00
Nick Mathewson
08e605b4e2
r14184@Kushana: nickm | 2007-08-22 11:06:37 -0400
...
Unmap cached-extrainfo on exit. Fixes bug 484.
svn:r11254
2007-08-22 15:07:29 +00:00
Peter Palfrader
50c0e6b37f
Remove routerlist_check_bug_417() and all its calls. There is still some more debugging code left, marked with XXXs
...
svn:r11161
2007-08-17 22:55:04 +00:00
Nick Mathewson
181ba71a90
r14051@Kushana: nickm | 2007-08-15 15:55:36 -0400
...
Fix an XXXX020 and a few DOCDOCs.
svn:r11127
2007-08-15 19:56:01 +00:00
Nick Mathewson
717f3b8a12
r14047@Kushana: nickm | 2007-08-15 13:57:39 -0400
...
fix a really nasty bug in v3 authorities: only set v3_digest in trusted_dir_server_t for v3 authorities.
svn:r11124
2007-08-15 17:57:47 +00:00
Nick Mathewson
484a580698
r14028@Kushana: nickm | 2007-08-14 17:07:51 -0400
...
Implement cert-retrieval URLs. (Also, update TODO)
svn:r11112
2007-08-14 21:09:30 +00:00
Nick Mathewson
3399d63170
r14009@Kushana: nickm | 2007-08-14 10:20:20 -0400
...
Fix a logic error in certificate handling
svn:r11102
2007-08-14 14:30:25 +00:00
Nick Mathewson
b6c548094c
r13998@kushana: nickm | 2007-08-13 19:20:28 -0400
...
Add some insanely verbose log messages on voting authorities.
svn:r11097
2007-08-13 23:23:06 +00:00
Nick Mathewson
7d990b5aa1
r13992@Kushana: nickm | 2007-08-13 16:45:22 -0400
...
A vote we already have a nd a double-upload are different things.
svn:r11093
2007-08-13 20:45:36 +00:00
Nick Mathewson
b4adf151d2
r13991@Kushana: nickm | 2007-08-13 16:37:43 -0400
...
Do not warn on missing cached consensus.
svn:r11092
2007-08-13 20:45:27 +00:00
Nick Mathewson
4e4dcb2571
r13989@Kushana: nickm | 2007-08-13 16:31:03 -0400
...
Actually store the v3 authority id digest of a trusteddirserver
svn:r11091
2007-08-13 20:31:08 +00:00
Nick Mathewson
ce1f01c3e6
r14531@catbus: nickm | 2007-08-13 14:46:25 -0400
...
Cache v3 networkstatus consensuses on disk.
svn:r11086
2007-08-13 18:47:22 +00:00
Nick Mathewson
34a3a5e2f4
r14016@catbus: nickm | 2007-07-30 13:45:55 -0400
...
More documentation
svn:r10992
2007-07-30 17:46:14 +00:00
Roger Dingledine
5d535a28c9
clean up some bridge log messages
...
svn:r10985
2007-07-30 08:43:02 +00:00
Nick Mathewson
77508edd36
r13989@catbus: nickm | 2007-07-29 19:11:07 -0400
...
More directory voting code. Now, if everything works, and I haven't forgotten anything, it is possible to set up some v3 authorities and start voting. Of course, I have probably forgotten something, and there are probably bugs in there somewhere too.
svn:r10976
2007-07-29 23:11:44 +00:00
Nick Mathewson
764bde22de
r13960@catbus: nickm | 2007-07-28 18:14:29 -0400
...
Start correctly when cached-certs is missing. oops
svn:r10957
2007-07-28 22:14:42 +00:00
Nick Mathewson
76a408941c
r13959@catbus: nickm | 2007-07-28 18:09:56 -0400
...
Use the correct formula to calculate exit weights.
svn:r10956
2007-07-28 22:14:39 +00:00
Nick Mathewson
afe9f33d35
r13956@catbus: nickm | 2007-07-27 20:09:48 -0400
...
Better certificate manipulations: extract certificates from incoming votes, forget ones that are very old, and remember to store them on disk.
svn:r10954
2007-07-28 00:11:34 +00:00
Peter Palfrader
1f4275451b
Resolve a compiler warning about uninitialized use
...
svn:r10940
2007-07-27 01:10:23 +00:00
Nick Mathewson
eed888a2b7
r13927@catbus: nickm | 2007-07-26 17:26:49 -0400
...
Fix router_choose_by_bandwidth to no longer be biases by floating-point roundoff issues. This runs through the list of routers yet another time, and uses an additional bitfield, but this should be okay: the function did not appear in profiles before, and shouldnt start appearing now.
svn:r10939
2007-07-26 21:26:57 +00:00
Nick Mathewson
6c4864f351
r13924@catbus: nickm | 2007-07-26 16:46:45 -0400
...
We can have multiple authority certificates for an authority at a time: make the code reflect that.
svn:r10937
2007-07-26 20:49:04 +00:00
Nick Mathewson
fb2f3c035b
r13921@catbus: nickm | 2007-07-26 16:26:48 -0400
...
Code to add signatures to a pending consensus directory.
svn:r10936
2007-07-26 20:26:59 +00:00
Nick Mathewson
83fa843663
r13900@catbus: nickm | 2007-07-25 16:16:30 -0400
...
Better fix for GCC 4.2 warning on routerlist.c
svn:r10925
2007-07-25 22:56:34 +00:00
Roger Dingledine
5190916670
free a small static string on exit.
...
svn:r10902
2007-07-22 06:32:28 +00:00
Roger Dingledine
e96d807db4
Revert part of r10874, since it was breaking our load balancing
...
(we always picked one router past the one we wanted!) and could
conceivably read past the end of the smartlist too.
Nick, I don't know what gcc 4.2 was worried about, but we need
to find a better fix than this. :)
svn:r10901
2007-07-22 04:36:33 +00:00
Roger Dingledine
6fc336d217
handle fetching bridge descriptors from the bridge authority too.
...
svn:r10898
2007-07-22 00:16:48 +00:00
Nick Mathewson
bbbf504281
r13827@catbus: nickm | 2007-07-19 14:42:25 -0400
...
Merge in some generic address manipulation code from croup. Needs some work.
svn:r10880
2007-07-19 18:46:09 +00:00
Nick Mathewson
5e6f05bc31
r13822@catbus: nickm | 2007-07-18 16:43:39 -0400
...
Tweak a couple of loop-related variables to make the gcc 4.2 -Wstrict-overflow warning happy.
svn:r10874
2007-07-18 20:46:14 +00:00
Nick Mathewson
d920683718
r13821@catbus: nickm | 2007-07-18 16:29:17 -0400
...
Initial code to manipulate vote timing correctly.
svn:r10873
2007-07-18 20:46:12 +00:00
Peter Palfrader
3052bf6a84
Change routerlist_remove to not take an index argument we do not need anyway.
...
Now the only remaining caller of _routerlist_find_elt is an assert()
svn:r10869
2007-07-18 14:02:47 +00:00
Roger Dingledine
50487c249d
timeout and retry schedules for fetching bridge descriptors
...
svn:r10867
2007-07-18 10:06:03 +00:00
Roger Dingledine
98ce45bebf
Backport candidate:
...
Fix a potential crash bug when we load many server descriptors at
once and some of them make others of them obsolete. Fixes bug
458. [Bugfix on 0.1.2.x]
svn:r10832
2007-07-16 00:11:03 +00:00
Roger Dingledine
5ab3f49d93
backport candidate: fix a memory leak from r9039 which had us leaking
...
50ish bytes every time we rebuild the cached-router files.
svn:r10830
2007-07-15 08:34:32 +00:00
Peter Palfrader
2ce1cb22bd
Comment one tor_assert
...
svn:r10820
2007-07-12 17:37:47 +00:00
Roger Dingledine
ef6bc1a451
Keep streamids from different exits on a circuit separate. This
...
bug may have allowed other routers on a given circuit to inject
cells into streams. Reported by lodger; fixes bug 446. [Bugfix
on 0.1.2.x]
svn:r10818
2007-07-12 17:09:19 +00:00
Nick Mathewson
656b7761a8
r13730@catbus: nickm | 2007-07-12 12:32:40 -0400
...
Patch from lodger: avoid roundoff-error-induced crash bugs when picking routers by bandwidth.
Also, remove listed backports for 0.1.2.x; that list is now in TODO.012
svn:r10812
2007-07-12 16:34:45 +00:00
Peter Palfrader
9ed261cd6a
In router_add_to_routerlist() only call router_have_minimum_dir_info() under some circumstances, not always
...
svn:r10799
2007-07-12 15:57:23 +00:00
Peter Palfrader
db3a4bf897
Call router_have_minimum_dir_info() at the beginning of router_add_to_routerlist() since it has side effects
...
svn:r10754
2007-07-06 21:21:09 +00:00
Peter Palfrader
39b1a11f8d
Remove two arguments from routerlist_replace(). idx, which is
...
the old router's index in the routerlist, can be gotten from the
old routerinfo itself anyway, and make_old always was true.
(There only is one caller of routerlist_replace())
svn:r10753
2007-07-06 18:40:39 +00:00
Nick Mathewson
e6ba07f8f5
r13634@catbus: nickm | 2007-07-06 14:20:50 -0400
...
Fix a crash bug (*the* crash bug?) on authorities. Backport candidate.
svn:r10752
2007-07-06 18:20:54 +00:00
Peter Palfrader
64f4cff192
I so wonder how this blows up on the real network - make _routerlist_find_elt be strict about the idx it is passed - if it is not -1 then it has to be correct
...
svn:r10727
2007-07-02 20:17:12 +00:00
Peter Palfrader
d071df748a
If we want to be more strict in _routerlist_find_elt I better call it properly
...
svn:r10726
2007-07-02 20:04:26 +00:00
Peter Palfrader
ccefd7404e
Don't get private with smartlists when there's a perfectly fine accessor method for num_used
...
svn:r10724
2007-07-02 19:45:44 +00:00
Peter Palfrader
ea1348360e
Three more assertions which hopefully are sane, Nick? They might help track down #417 .
...
svn:r10720
2007-07-02 15:13:52 +00:00
Roger Dingledine
2cd293dc8f
now we can specify a bridge without specifying its key,
...
and we will still connect to it and use it. getting closer!
svn:r10609
2007-06-15 06:01:04 +00:00
Roger Dingledine
3d641bde0e
Refine r10571: more work on bridge stuff.
...
- Only listen to responses for "authority" fetches if we're configured
to use Bridges. Otherwise it's safe (and maybe smarter) to silently
discard them like we used to.
- React faster to download networkstatuses after the first bridge
descriptor arrives.
- Don't do dir fetches before we have any bridges, even when our
dirport is open.
svn:r10604
2007-06-15 02:12:15 +00:00
Nick Mathewson
9a74e881ef
r13413@catbus: nickm | 2007-06-13 18:44:28 -0400
...
Non-static inline functions cant talk about static variables.
svn:r10599
2007-06-13 22:44:30 +00:00
Roger Dingledine
af658b7828
More work towards making bridge users able to connect via bridges:
...
- demand options->Bridges and options->TunnelDirConns if
options->UseBridges is set.
- after directory fetches, accept descriptors that aren't referenced by
our networkstatuses, *if* they're for a configured bridge.
- delay directory fetching until we have at least one bridge descriptor.
- learn how to build a one-hop circuit when we have neither routerinfo
nor routerstatus for our destination.
- teach directory connections how to pick a bridge as the destination
directory when doing non-anonymous fetches.
- tolerate directory commands for which the dir_port is 0.
- remember descriptors when the requested_resource was "authority",
rather than just ignoring them.
- put bridges on our entry_guards list once we have a descriptor for them.
When UseBridges is set, only pick entry guards that are bridges. Else
vice versa.
svn:r10571
2007-06-12 09:17:23 +00:00
Peter Palfrader
c0b28adc65
Resetting the correct stats
...
svn:r10569
2007-06-12 01:09:53 +00:00
Nick Mathewson
a21381affa
r13364@catbus: nickm | 2007-06-11 20:15:53 -0400
...
Stop assuming that desc_by_eid_map works: in fact, it kinda doesn't. Add a big comment explaining why.
svn:r10567
2007-06-12 00:15:55 +00:00
Nick Mathewson
367a77459a
r13355@catbus: nickm | 2007-06-11 18:19:34 -0400
...
Make all the digestmaps inside routerlist_t use the new typechecking wrappers, so we can catch any more bugs like the one fixed by 10561. This turned up a bug in routerlist_remove: we were extracting a routerinfo_t from desc_digest_map. Fix that too, though it was probably harmless, since we were only doing a pointer comparison with it.
svn:r10563
2007-06-11 22:19:40 +00:00
Nick Mathewson
bde82e737b
r13352@catbus: nickm | 2007-06-11 17:42:45 -0400
...
Since desc_by_eid_map hold server descriptors, do not add routerinfo_ts. Bug found by weasel
svn:r10561
2007-06-11 21:42:48 +00:00
Peter Palfrader
e91cab20dd
Reorder routerlist_assert_ok() and routerlist_check_bug_417(), so if the assert_ok triggers we know that our bug_417 is wrong
...
svn:r10560
2007-06-11 19:46:23 +00:00
Roger Dingledine
04995f197d
more building blocks towards being able to fetch bridge descriptors
...
svn:r10548
2007-06-10 07:34:21 +00:00
Nick Mathewson
2bb7005481
r13317@catbus: nickm | 2007-06-08 14:39:59 -0400
...
bugfix: we were undercounting the number of authorities that recommended any given version by 1. Backport candidate.
svn:r10537
2007-06-08 18:41:19 +00:00
Nick Mathewson
1866ad3506
r13274@catbus: nickm | 2007-06-05 19:06:30 -0400
...
Remove some deadcode that seems unlikely to return
svn:r10509
2007-06-06 04:51:25 +00:00
Nick Mathewson
23ae5976f3
r13254@catbus: nickm | 2007-06-04 20:13:47 -0400
...
When choosing a guard, weight by bandwidth. Resolves bug 440.
svn:r10493
2007-06-05 00:15:00 +00:00
Nick Mathewson
bb6f53d60c
r13243@catbus: nickm | 2007-06-04 15:17:15 -0400
...
Start of code to compute consensus network-status stuff from a bunch of votes. Strangely, it does not yet feel like an enormous ugly hack.
svn:r10489
2007-06-04 19:19:01 +00:00
Nick Mathewson
8400cecb1d
r13148@catbus: nickm | 2007-06-02 10:24:20 -0400
...
Fix bug 441, 442, and possibly 417 (again).
svn:r10449
2007-06-02 14:24:23 +00:00
Nick Mathewson
2ef3e7853b
r13144@catbus: nickm | 2007-06-02 08:44:42 -0400
...
Add some asserts to catch double-insert on routerlist.
svn:r10445
2007-06-02 12:44:57 +00:00
Nick Mathewson
5b6d7f10f3
r13143@catbus: nickm | 2007-06-01 16:43:40 -0400
...
Try to fix some mipspro compiler warnings. There will still be some left.
svn:r10444
2007-06-02 12:44:54 +00:00
Nick Mathewson
f89a3b1448
r13050@catbus: nickm | 2007-05-29 13:31:11 -0400
...
Resolve all but 3 DOCDOCs.
svn:r10393
2007-05-29 17:31:13 +00:00
Nick Mathewson
63035cdb33
r13041@catbus: nickm | 2007-05-29 10:40:05 -0400
...
More messing around to try to address possible root causes of bug 436.
svn:r10388
2007-05-29 14:41:20 +00:00
Roger Dingledine
0c047b87f5
polish r9933-r9994
...
svn:r10335
2007-05-25 19:41:31 +00:00
Nick Mathewson
a312afd67e
r12936@catbus: nickm | 2007-05-24 14:12:34 -0400
...
Review XXXX comments without a version; upgrade some to XXXX020.
svn:r10315
2007-05-24 18:12:52 +00:00
Nick Mathewson
4c6398a8f0
r12918@catbus: nickm | 2007-05-24 12:52:40 -0400
...
Make reset_download_failures() reset extrainfo download status too.
svn:r10306
2007-05-24 17:13:02 +00:00
Nick Mathewson
d0a5c4f984
r12915@catbus: nickm | 2007-05-24 12:12:34 -0400
...
Do not send a warning when somebody uploads an extrainfo that we will reject, if it happens to be newer than our current routerdesc.
svn:r10303
2007-05-24 17:12:54 +00:00
Nick Mathewson
9e0acc0c11
r12899@catbus: nickm | 2007-05-22 13:51:26 -0400
...
Extract common code from networkstatus_getinfo_helper_single() and generate_v2_networkstatus().
svn:r10294
2007-05-22 17:58:30 +00:00
Nick Mathewson
c9fa4e6583
r12898@catbus: nickm | 2007-05-22 13:11:04 -0400
...
More v3 directory code: have authorities load certificates; have everybody store certificates to disk and load them; provide a way to configure v3 authorities.
svn:r10293
2007-05-22 17:58:25 +00:00
Nick Mathewson
6975a093e9
r12853@catbus: nickm | 2007-05-22 11:36:54 -0400
...
Make connection_array into a smartlist.
svn:r10292
2007-05-22 15:49:14 +00:00
Nick Mathewson
4ec5e139c8
r12850@catbus: nickm | 2007-05-21 22:20:42 -0400
...
Partial backport candidate: do not rely on finding a \0 after an mmaped() router/extrainfo file. Also, set journal length correctly when starting up.
svn:r10248
2007-05-22 02:20:52 +00:00
Nick Mathewson
d23cb33a1a
r12846@catbus: nickm | 2007-05-21 21:55:15 -0400
...
Oops; it is possible to have an empty store.
svn:r10247
2007-05-22 01:55:50 +00:00
Nick Mathewson
0cb342e859
r12844@catbus: nickm | 2007-05-21 21:52:19 -0400
...
Oops. It compiles better when you spell the fields right.
svn:r10245
2007-05-22 01:52:22 +00:00
Nick Mathewson
32c8d94c12
r12842@catbus: nickm | 2007-05-21 21:51:45 -0400
...
Partial backport candidate. Fix issue noted in r10241: stores were rebuilt too often. Also notes dropped bytes better.
svn:r10244
2007-05-22 01:51:53 +00:00
Roger Dingledine
b89ad9eb1b
mark a bug for nick to tackle -- we're rebuilding our router store more
...
often than we need to. reported by lodger.
svn:r10241
2007-05-22 01:17:08 +00:00
Roger Dingledine
82054e0dd2
Make the NodeFamilies config option work. (Reported by
...
lodger -- it has never actually worked, even though we added it
in Oct 2004.)
svn:r10238
2007-05-22 00:46:55 +00:00
Peter Palfrader
d2f7a9d0cc
Hopefully fix #429 for good by actually using, not just figuring out, the correct mmap
...
svn:r10233
2007-05-21 12:14:45 +00:00
Nick Mathewson
a4f5b99e61
r13023@Kushana: nickm | 2007-05-20 16:16:36 -0400
...
More bulletproofing on bug 429
svn:r10231
2007-05-20 20:16:45 +00:00
Nick Mathewson
21a72520ce
r13021@Kushana: nickm | 2007-05-20 14:03:10 -0400
...
Provide actual reasons when dropping an uploaded extrainfo for incompatibility; also, clean whitespace.
svn:r10230
2007-05-20 18:03:26 +00:00
Nick Mathewson
5364833be0
r13017@Kushana: nickm | 2007-05-20 13:40:45 -0400
...
Address points in r10227.
svn:r10229
2007-05-20 17:43:55 +00:00
Nick Mathewson
bc26f28865
svn:r10228
2007-05-20 17:43:29 +00:00
Roger Dingledine
ddd0054a85
point out two remote crash bugs, a memory leak, and a few other
...
items we should probably look into.
svn:r10227
2007-05-20 14:15:23 +00:00
Nick Mathewson
0b661f6575
r12818@catbus: nickm | 2007-05-20 01:15:50 -0400
...
Look for extrainfo bodies in the extrainfo mmap, not in the descriptor mmap. Duh. Should fix bug 429.
svn:r10226
2007-05-20 05:15:53 +00:00
Peter Palfrader
6d46ece6ac
Fix a loop in routerlist_assert_ok()
...
svn:r10224
2007-05-19 21:14:17 +00:00