Nick Mathewson
acaa9a7f69
r16518@catbus: nickm | 2007-11-07 10:18:31 -0500
...
First attempt at fixing bug 543. Needs testing. Too slow.
svn:r12408
2007-11-07 15:19:53 +00:00
Nick Mathewson
bc4cefcd7e
r16471@catbus: nickm | 2007-11-06 15:50:42 -0500
...
Detect whether any of the descriptors we want are in old_routers. Possibly useful in tracking down bug 543.
svn:r12404
2007-11-06 20:51:45 +00:00
Nick Mathewson
28dd56f982
r16459@catbus: nickm | 2007-11-06 13:26:11 -0500
...
Fix "0 request for 0 router" message.
svn:r12399
2007-11-06 18:27:14 +00:00
Nick Mathewson
42f7ae3eae
r16435@catbus: nickm | 2007-11-05 14:23:07 -0500
...
Patch from karsten: tidy up v2 hidden service directory logic, and fix a few bugs.
svn:r12388
2007-11-05 19:23:57 +00:00
Roger Dingledine
735498cb27
add the other v3 dir bugfixes. my bridge is now working
...
again even when my datadir starts empty. phew.
svn:r12372
2007-11-04 02:36:09 +00:00
Roger Dingledine
5bf61633e3
avoid sending a request for "keys/fp" (for which we'll get a 400 bad
...
request) if we need more v3 certs but we've already got pending requests
for all of them.
svn:r12370
2007-11-04 02:06:09 +00:00
Nick Mathewson
bf2717ff3d
r14678@tombo: nickm | 2007-11-03 16:12:31 -0400
...
Try to make hidden service directory lookup functions a bit more efficient: go for fewer O(n) operations, and look at the consensus rather than the routerinfo list.
svn:r12361
2007-11-03 20:12:41 +00:00
Nick Mathewson
3a6287615b
r16367@catbus: nickm | 2007-11-02 13:13:15 -0400
...
Space fixes.
svn:r12345
2007-11-02 17:16:34 +00:00
Nick Mathewson
6aeca5237d
r14631@tombo: nickm | 2007-11-02 00:18:17 -0400
...
Better log messages for "not enough to build a circuit" message.
svn:r12324
2007-11-02 04:18:28 +00:00
Nick Mathewson
401b5c26de
r16320@catbus: nickm | 2007-11-01 00:11:20 -0400
...
Learn new addresses for authorities from their certificates.
svn:r12305
2007-11-01 04:14:23 +00:00
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
Nick Mathewson
6f8866a817
r12810@catbus: nickm | 2007-05-19 16:08:42 -0400
...
Fix bugs in extrainfo_insert, and change it to use desc_by_eid_map.
svn:r10222
2007-05-19 20:08:44 +00:00
Nick Mathewson
4d3ec5919e
r12808@catbus: nickm | 2007-05-19 14:48:51 -0400
...
Fix another consistency error.
svn:r10221
2007-05-19 18:48:53 +00:00
Nick Mathewson
48e30ce2c7
r12805@catbus: nickm | 2007-05-19 14:31:00 -0400
...
Fix a groovy memory corruption bug in routerlist_replace.
svn:r10220
2007-05-19 18:31:04 +00:00
Nick Mathewson
0a27b53252
r12802@catbus: nickm | 2007-05-19 14:12:27 -0400
...
clear some ram when freeing it; add some more checks to assert_routerlist_ok.
svn:r10218
2007-05-19 18:12:31 +00:00
Nick Mathewson
61a116b3da
r12798@catbus: nickm | 2007-05-18 20:31:54 -0400
...
Yet more debugging code to track down 417/404, inspired by a fun core from arma.
svn:r10216
2007-05-19 00:32:00 +00:00
Nick Mathewson
e476e61ce0
r12982@Kushana: nickm | 2007-05-18 15:15:14 -0400
...
Partial backport candidate: We had a bug where we were downloading descriptors by descriptor digest, but trying to look them up by identity fingerprint when updating their failure count and next retry time. (Also use correct backoff logic for extrainfo code.) Needs testing, doubtless.
svn:r10210
2007-05-18 21:19:53 +00:00
Nick Mathewson
ec55cf526d
r12981@Kushana: nickm | 2007-05-18 14:12:19 -0400
...
First cut at code to download extra-info docs. Also note a bad bug in directory.c (look for the string BUG BUG BUG).
svn:r10209
2007-05-18 21:19:19 +00:00
Nick Mathewson
b4bd9f772c
r12771@catbus: nickm | 2007-05-16 18:12:32 -0400
...
Make -Wstrict-overflow=5 happy with GCC 4.2. It is kind of a pain, but it does agood job of letting us know where we can make our code better by simplifying dependent conditionals.
svn:r10201
2007-05-16 22:16:13 +00:00
Nick Mathewson
a7514649c3
r12758@catbus: nickm | 2007-05-14 15:19:29 -0400
...
Cleanup, lock-down, and refactor bits of routerparse.c: use a single unified function to check all signatures. Fix all DOCDOCs. Remove some old dead debugging code. Enforce some parsing rules better.
svn:r10192
2007-05-14 22:51:05 +00:00
Roger Dingledine
37519d993d
backport candidate: seems to me that r10153 won't work without
...
this patch too.
svn:r10187
2007-05-14 08:09:12 +00:00
Roger Dingledine
440b7f0c70
polish r9726-r9903
...
svn:r10182
2007-05-13 09:25:06 +00:00
Roger Dingledine
346826d97b
If a directory authority is down, skip it when deciding where to get
...
networkstatus objects or descriptors. Otherwise we keep asking
every 10 seconds forever.
(adapted from r9880)
svn:r10175
2007-05-12 23:22:27 +00:00
Nick Mathewson
11f3e894d3
r12708@catbus: nickm | 2007-05-10 15:18:08 -0400
...
Patch from shibz: implement a getinfo status/version/... so a controller can tell whether the current version is recommended, whether any versions are good, and how many authorities agree.
svn:r10162
2007-05-10 19:30:02 +00:00
Roger Dingledine
de11011b1b
backport candidate: when we have k non-v2 authorities in our
...
dirservers lines, we ignored as many as k v2 authorities while
updating our network-statuses.
(not a problem right now since we have zero non-v2 authorities.
but if we ever change that...)
svn:r10157
2007-05-10 10:01:53 +00:00
Roger Dingledine
4e9a008e66
Backport candidate: if all of our dirservers have given us
...
bad or no networkstatuses lately, then stop hammering them
once per minute even if we think they're failed.
svn:r10156
2007-05-10 09:34:34 +00:00
Roger Dingledine
cd23b65a07
Backport candidate: count it as a failure if we fetch a valid
...
network-status but we don't want to keep it. Otherwise we'll keep fetching
it and keep not wanting to keep it. Fixes part of bug 422.
svn:r10153
2007-05-10 05:12:20 +00:00
Roger Dingledine
de6b3512e9
move a few more situations over to the authority_type_t bitfield
...
svn:r10151
2007-05-10 04:01:28 +00:00
Nick Mathewson
ceac39aa8a
r12697@catbus: nickm | 2007-05-09 00:15:40 -0400
...
Change authority_type_t to a set of flags; use it more consistently.
svn:r10144
2007-05-09 04:15:46 +00:00
Roger Dingledine
f8a8b27dd2
add a 'bridge' flag for dirserver config entries
...
svn:r10128
2007-05-07 08:26:50 +00:00
Roger Dingledine
1b95bbdba6
New config option V2AuthoritativeDirectory that all directory
...
authorities should set. This will let future authorities choose
not to serve V2 directory information.
Also, go through and revamp all the authdir_mode stuff so it tries
to do the right thing if you're an auth but not a V1 or V2 auth.
svn:r10092
2007-05-02 09:12:04 +00:00
Nick Mathewson
89ab267cfb
r12619@catbus: nickm | 2007-05-01 16:13:42 -0400
...
Add code to upload extrainfos to authorities running 0.2.0.0-alpha-dev (r10070) or later.
svn:r10086
2007-05-01 20:13:49 +00:00
Nick Mathewson
0390a0499c
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.
svn:r10070
2007-04-30 19:48:39 +00:00
Nick Mathewson
6875559c49
r12579@catbus: nickm | 2007-04-30 13:26:53 -0400
...
Oops. Routerlist_check_bug_417 should work even if we are not on a server.
svn:r10066
2007-04-30 17:46:11 +00:00
Nick Mathewson
5b26a076c6
Oops; the "not in the routerlist" value for routerinfo_t.routerlist_index is -1, not 0.
...
svn:r10060
2007-04-30 14:32:22 +00:00
Nick Mathewson
65daa191fe
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.
svn:r10059
2007-04-30 14:26:38 +00:00
Nick Mathewson
313ac313be
r12557@catbus: nickm | 2007-04-30 01:36:39 -0400
...
Oops; the rest of the last patch. If that one gets backported, this should too.
svn:r10053
2007-04-30 05:36:41 +00:00
Nick Mathewson
f7acc3cfa0
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.
svn:r10052
2007-04-30 05:32:57 +00:00
Roger Dingledine
397afcc3f6
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.
svn:r10035
2007-04-27 10:26:09 +00:00
Nick Mathewson
5cf600b57a
r12492@catbus: nickm | 2007-04-22 20:24:02 -0400
...
Even more asserts to try to catch bug 404/417.
svn:r10003
2007-04-23 00:24:06 +00:00
Nick Mathewson
362fbc79d2
r12414@catbus: nickm | 2007-04-16 17:37:17 -0400
...
More proposal-104 stuff: actually remember extra-info stuff.
svn:r9975
2007-04-16 21:37:21 +00:00
Nick Mathewson
17e83a408f
Fix some proposal-104 bugs.
...
svn:r9972
2007-04-16 18:54:56 +00:00
Nick Mathewson
6d32d9cb2d
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.
svn:r9971
2007-04-16 18:39:39 +00:00
Nick Mathewson
2bb5e64289
r12403@catbus: nickm | 2007-04-16 13:55:03 -0400
...
Code to generate extrainfo whenever routerdesc is regenerated; code to check extrainfo against routerdesc.
svn:r9970
2007-04-16 17:55:08 +00:00
Nick Mathewson
5b220f65c8
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.
svn:r9963
2007-04-16 04:17:58 +00:00
Roger Dingledine
f36c613dbc
fix a memory leak when we ask for "all" networkstatuses and
...
we get one we don't recognize.
backport candidate.
backbackport candidate.
svn:r9918
2007-03-29 07:02:12 +00:00
Nick Mathewson
83b2208ea4
r12653@Kushana: nickm | 2007-03-25 18:21:38 -0400
...
Add documentation for make_old argument to routerlist functions.
svn:r9906
2007-03-26 14:08:29 +00:00
Roger Dingledine
2cf63f8a62
Don't save non-general-purpose router descriptors to the disk cache,
...
because we have no way of remembering what their purpose was when
we restart.
svn:r9894
2007-03-21 15:37:30 +00:00
Roger Dingledine
4ab0b979b2
temporary hack to solve bug 384, so i can get on with debugging
...
other stuff.
svn:r9880
2007-03-20 02:10:18 +00:00
Nick Mathewson
6363a7ccf5
r12538@Kushana: nickm | 2007-03-11 17:10:22 -0400
...
Fix a lame assert, I hope.
svn:r9801
2007-03-11 21:10:54 +00:00
Roger Dingledine
7fedd6ab4e
best not to introduce new technical terms if we don't need to
...
svn:r9800
2007-03-11 20:52:07 +00:00
Nick Mathewson
98c3403ce7
r12535@Kushana: nickm | 2007-03-11 16:34:40 -0400
...
Fix a comment and add a couple of assert to try to track down another assert in routerlist_assert_ok()
svn:r9799
2007-03-11 20:34:44 +00:00
Nick Mathewson
02ce8e6b12
r12474@Kushana: nickm | 2007-03-06 16:10:05 -0500
...
We have a PATH_SEPARATOR macro. How about we use it?
svn:r9782
2007-03-09 21:39:30 +00:00
Roger Dingledine
064ff7b33d
get rid of an info-level log message that occurs many times a
...
minute when we haven't needed circuits lately.
svn:r9771
2007-03-09 08:48:21 +00:00
Nick Mathewson
5d1bee87ff
r12468@Kushana: nickm | 2007-03-06 15:24:00 -0500
...
More unit tests: gcov is fun.
svn:r9748
2007-03-06 20:25:44 +00:00
Roger Dingledine
5217d3680e
clean up a log message, and stop calling it an error when
...
we exit cleanly
svn:r9742
2007-03-06 19:33:43 +00:00
Nick Mathewson
7fcceb2c25
r12074@catbus: nickm | 2007-03-04 15:11:43 -0500
...
Make all LD_BUG log messsages get prefixed with "Bug: ". Remove manually-generated "Bug: "s from log-messages. (Apparently, we remembered to add them about 40% of the time.)
svn:r9733
2007-03-04 20:11:46 +00:00
Nick Mathewson
70e5a83a77
r12057@catbus: nickm | 2007-03-04 13:58:32 -0500
...
Clarify some log messages; note others that could be improved later.
svn:r9724
2007-03-04 18:58:38 +00:00
Roger Dingledine
dba4e040fc
Disable encrypted directory connections when we don't have a server
...
descriptor for the destination. We'll get this working again in
the 0.2.0 branch.
svn:r9700
2007-03-01 04:26:30 +00:00
Nick Mathewson
d6368fd075
r11976@catbus: nickm | 2007-02-27 19:35:59 -0500
...
Add some missing (redundant but helpful in most cases) static declarations, and remove a function nobody was calling.
svn:r9672
2007-02-28 00:36:03 +00:00
Nick Mathewson
82e2d6001a
r11954@catbus: nickm | 2007-02-26 13:01:19 -0500
...
Note some optimizations that are probably not worth it for 0.1.2.x based on preliminary profiling.
svn:r9659
2007-02-26 18:01:23 +00:00
Roger Dingledine
9e44449946
fix a bug in our logic, but point out that maybe it's moot
...
svn:r9654
2007-02-26 05:33:17 +00:00
Roger Dingledine
d6c21ab8a7
tell the user if we're delaying his newnym request. also, pick
...
a different set of fenceposts.
svn:r9647
2007-02-24 21:21:38 +00:00
Roger Dingledine
50f22e858a
doc pedant
...
svn:r9634
2007-02-24 07:50:38 +00:00
Roger Dingledine
748c502e3a
fix a log message that was broken long ago and never noticed
...
svn:r9630
2007-02-24 05:36:45 +00:00
Nick Mathewson
4e05ccb289
r11900@catbus: nickm | 2007-02-23 18:11:04 -0500
...
Fix null-pointer access on update_router_descriptor_cache_downloads.
svn:r9626
2007-02-23 23:11:08 +00:00
Nick Mathewson
a2a52b4d5f
r11876@catbus: nickm | 2007-02-22 02:23:13 -0500
...
Fix two XXXX012 issues in routerlist.c: a possible performance issue hasnt shown up on any profiles, so unflag it. Stop warning when we get a router descriptor that we asked for but no longer want: just drop it (if we are not a cache) or cache if (if we are).
svn:r9616
2007-02-22 07:41:10 +00:00
Nick Mathewson
809a4daa52
r11859@catbus: nickm | 2007-02-21 00:53:27 -0500
...
Fix use of predict. this should get refactored, but now now.
svn:r9611
2007-02-21 05:57:08 +00:00
Nick Mathewson
2a4fc8533c
r11858@catbus: nickm | 2007-02-21 00:27:44 -0500
...
As a trivial optimization, remove a redundant call to router_have_minimum_dir_info. This might shave 2% on some systems by according to some profilers.
svn:r9610
2007-02-21 05:56:53 +00:00
Nick Mathewson
aade1b9204
r11844@catbus: nickm | 2007-02-17 16:53:42 -0500
...
Note a problematic warning.
svn:r9599
2007-02-17 23:49:50 +00:00
Nick Mathewson
a3ec172e1a
r11827@catbus: nickm | 2007-02-16 15:00:39 -0500
...
Try to fix VC++ int conversion warning.
svn:r9595
2007-02-16 20:01:21 +00:00
Nick Mathewson
11e5656ab7
r11826@catbus: nickm | 2007-02-16 14:58:38 -0500
...
Resolve 56 DOCDOC comments.
svn:r9594
2007-02-16 20:01:02 +00:00
Nick Mathewson
d9c095be3e
r11787@catbus: nickm | 2007-02-12 21:01:34 -0500
...
Always remove expired routers and networkstatus docs before checking whether we have enough information to build circuits. (Fixes bug 373.)
svn:r9575
2007-02-13 02:01:38 +00:00
Nick Mathewson
3c691b9da6
r11785@catbus: nickm | 2007-02-12 20:27:48 -0500
...
Node-picking fixes: Never warn when a down node is listed in a config option (bug 348); always warn when a node in a config option is unnamed. Also, when entrynodes is configured, then build the guard list as: (parts of EntryNodes that were guards before), (the rest of EntryNodes), (the rest of the old guards). This last point ensures that EntryNode users will get the EntryNodes they want with the minimum change to their guard list.
svn:r9574
2007-02-13 01:27:55 +00:00
Nick Mathewson
95b828b685
r11781@catbus: nickm | 2007-02-12 18:31:33 -0500
...
Discard any v1 directory info that is so old as to be useless. (Fixes bug 387)
svn:r9572
2007-02-12 23:39:24 +00:00
Nick Mathewson
759c58151e
r11775@catbus: nickm | 2007-02-12 16:39:09 -0500
...
Update copyright dates.
svn:r9570
2007-02-12 21:39:53 +00:00
Nick Mathewson
30e7c05075
r11774@catbus: nickm | 2007-02-12 16:31:47 -0500
...
Handle errors on opening cached-routers* more uniformly and sanely: log not-found errors at level INFO, and all other errors at level WARN. Needs testing on win32.
svn:r9569
2007-02-12 21:39:44 +00:00
Nick Mathewson
ec54857870
r11732@catbus: nickm | 2007-02-08 18:12:54 -0500
...
Fix an "uninitialized variable" warning.
svn:r9536
2007-02-08 23:24:03 +00:00
Roger Dingledine
90b53beec5
add a comment so i stop worrying
...
svn:r9532
2007-02-08 20:27:58 +00:00
Nick Mathewson
a1a9c66ce5
r11717@catbus: nickm | 2007-02-08 14:44:30 -0500
...
Clear up some XXX012s in routerlist.c: make smartlist_choose_by_bandwidth handle statuses with no corresponding routers much better.
svn:r9531
2007-02-08 19:44:55 +00:00
Nick Mathewson
1e2d5f30ff
r11700@catbus: nickm | 2007-02-08 02:03:50 -0500
...
Fix several bugs in computing recommended versions. 1) refactor is-this-version-good handling and which-vesions-are-good handling to be in the same place. 2) a version is recommended if more than half of the versioning authorities like it, not >= half. 3) "NEW_IN_SERIES" should mean, "I don't know of an 0.1.1.x this recent, and there are some 0.1.2.x versions out", not "I don't know of an 0.1.1.x this recent, but I know some older ones." This should resolve bug 383.
svn:r9523
2007-02-08 07:24:06 +00:00
Roger Dingledine
4ba57f68e4
more changes. i'm all caught up now.
...
svn:r9495
2007-02-06 02:49:07 +00:00
Nick Mathewson
fefba95363
r11629@catbus: nickm | 2007-02-02 15:06:17 -0500
...
Removing the last DOCDOC comment hurt so much that I had to use Doxygen to identify undocumented macros and comments, and add 150 more DOCDOCs to point out where they were. Oops. Hey, kids! Fixing some of these could be your first Tor patch!
svn:r9477
2007-02-02 20:06:43 +00:00
Nick Mathewson
e521c96cb1
r12123@Kushana: nickm | 2007-02-02 13:57:42 -0500
...
Resolve remaining DOCDOC comments.
svn:r9476
2007-02-02 18:58:11 +00:00
Nick Mathewson
6f2a92c5b3
r11621@catbus: nickm | 2007-02-01 13:09:18 -0500
...
Fix another VC compiler warning.
svn:r9473
2007-02-01 18:09:34 +00:00
Nick Mathewson
5cb99857bc
r11620@catbus: nickm | 2007-02-01 13:06:27 -0500
...
Call stat() slightly less often; use fstat() when possible.
svn:r9472
2007-02-01 18:09:27 +00:00
Roger Dingledine
baeeadb6eb
avoid messy crashes (bugfix by nick)
...
svn:r9435
2007-01-27 18:33:33 +00:00
Roger Dingledine
9057af692a
Weight directory requests by advertised bandwidth. Now we can
...
let servers enable write limiting but still allow most clients to
succeed at their directory requests.
svn:r9433
2007-01-27 09:13:19 +00:00
Nick Mathewson
adc5bb4d04
r9723@catbus: nickm | 2007-01-22 15:47:17 -0500
...
Fix an XXXX012 in routerlist.c: when we do not have enough networkstatuses to launch router requests, do not launch router requests. Backport candidate.
svn:r9388
2007-01-22 20:57:26 +00:00
Roger Dingledine
9f733c31cc
minor cleanups
...
svn:r9387
2007-01-22 19:20:33 +00:00
Nick Mathewson
84790d059f
r9715@catbus: nickm | 2007-01-22 02:51:04 -0500
...
Document a few undocumented functions and arguments.
svn:r9385
2007-01-22 07:51:06 +00:00
Roger Dingledine
7b5f9887fa
resolve an XXX, add a new XXX, simplify some code
...
svn:r9381
2007-01-22 05:59:59 +00:00
Nick Mathewson
8835bb844e
r11922@Kushana: nickm | 2007-01-10 15:43:18 -0500
...
Clear untrusted networkstatuses after 10 days too. (This is not a terribly awful bug, since we would only ever retain 16 of them, but it still might be nice to backport.) Resolves part A of bug 372.
svn:r9324
2007-01-10 20:43:40 +00:00
Nick Mathewson
c8466c5919
r11824@Kushana: nickm | 2007-01-03 17:15:28 -0500
...
control-spec: upcase arguments in status events; note unimplemented events individually
r11825@Kushana: nickm | 2007-01-03 17:41:43 -0500
Implement EXTERNAL IP server status event.
r11826@Kushana: nickm | 2007-01-03 17:47:10 -0500
Implement BAD_SERVER_DESCRIPTOR server status event.
r11827@Kushana: nickm | 2007-01-03 18:01:56 -0500
Implement SOCKS_UNKNOWN_PROTOCOL and DANGEROUS_SOCKS client events.
r11828@Kushana: nickm | 2007-01-03 18:23:22 -0500
Implement BUG controller events. Also, flush ERR-level status events just like ERR-level log messages.
r11829@Kushana: nickm | 2007-01-03 23:37:27 -0500
Yet more status events: CLOCK_SKEW, GOOD/ACCEPTED_SERVER_DESCRIPTOR, {CHECKING_}REACHABILITY_{SUCCEEDED|FAILED}
r11833@Kushana: nickm | 2007-01-05 16:56:37 -0500
Note some unimplementedness in control-spec.txt
svn:r9279
2007-01-06 05:42:31 +00:00
Roger Dingledine
5e89bc9b4b
fix a bug i introduced in r9249; and more cleanups.
...
svn:r9263
2007-01-04 09:12:23 +00:00
Nick Mathewson
2963d4acc2
r11820@Kushana: nickm | 2007-01-03 14:54:05 -0500
...
Add (and specify) a BadDirectory flag to networkstatuses, so authorities can tell clients that some caches are broken. Also, implement an as-yet-unused function to estimate how many bytes will be sent on a directory connection.
svn:r9255
2007-01-03 19:58:00 +00:00
Roger Dingledine
d677332a83
checkpoint as we add PreferTunneledDirConns config option
...
svn:r9249
2007-01-03 06:33:03 +00:00
Nick Mathewson
7ee99ba342
r11759@Kushana: nickm | 2006-12-29 15:21:14 -0500
...
Actually, handle_getinfo_helper supports 552 results just fine: just leave *answer unset.
svn:r9217
2006-12-29 20:49:47 +00:00
Nick Mathewson
7cfdac1bf6
r11737@Kushana: nickm | 2006-12-28 18:32:13 -0500
...
Remove some dead code; refactor some duplicated code.
svn:r9206
2006-12-29 02:49:12 +00:00
Nick Mathewson
b59573949e
r11736@Kushana: nickm | 2006-12-28 17:46:23 -0500
...
Mark a pile of XXXX comments as targetted for 0.1.2: some because they look important, some because they look easy.
svn:r9205
2006-12-29 02:47:51 +00:00
Nick Mathewson
2e538d9918
r11694@Kushana: nickm | 2006-12-23 23:09:20 -0500
...
Add a version entry to networkstatus documents; have this entry get parsed and used to calculate whether begin_dir is supported.
svn:r9181
2006-12-24 04:09:48 +00:00
Nick Mathewson
9efdf6acc5
r11677@Kushana: nickm | 2006-12-23 21:17:54 -0500
...
Track when we get 503s from directory servers. Do not use directory servers that have given us a 503 until either an hour has passed, or we are are out of non-busy servers.
svn:r9172
2006-12-24 02:45:35 +00:00
Nick Mathewson
4d948281c3
r11676@Kushana: nickm | 2006-12-23 20:42:17 -0500
...
Add an orport option to dirserver lines so that clients can tell where to connect to open an encrypted tunnel to a dirserver even before they have its descriptor.
svn:r9171
2006-12-24 02:45:27 +00:00
Nick Mathewson
cf04e1e6e7
r11479@Kushana: nickm | 2006-12-07 23:38:54 -0500
...
Refactor GETINFO into a table-driven dispatch, as suggested by arma. My brain hurts.
svn:r9052
2006-12-08 04:39:13 +00:00
Nick Mathewson
e6c467fe07
r11454@Kushana: nickm | 2006-12-07 10:07:24 -0500
...
Apparently, we actually hit the nasty mmap-then-unlink behavior. Fix it.
svn:r9039
2006-12-07 15:07:33 +00:00
Roger Dingledine
c5b90daf86
cleanups, bump to 0.1.2.4-alpha
...
svn:r9015
2006-12-02 22:47:46 +00:00
Nick Mathewson
0ad2fd1129
r9467@Kushana: nickm | 2006-11-01 18:51:16 -0500
...
Allow larger amounts of drift in uptime to be "cosmetic".
svn:r8891
2006-11-01 23:53:15 +00:00
Roger Dingledine
6ecf74af60
and blow away what appears to be some redundant logic
...
svn:r8806
2006-10-23 10:17:52 +00:00
Roger Dingledine
77c8c0ee51
spec and implement some more status events. start to build
...
some conventions.
svn:r8805
2006-10-23 10:16:43 +00:00
Roger Dingledine
07cfeb0198
fix a minor memory leak every time we rebuild the router store,
...
fix a rare memory leak if something goes wrong while rebuilding it,
and clean up some code. nick, please confirm.
reported by "fookoowa" in flyspray 346 (yay!)
svn:r8789
2006-10-22 08:08:10 +00:00
Nick Mathewson
01bc03eff4
r9312@Kushana: nickm | 2006-10-20 14:45:22 -0400
...
Add an event type to tell the controller when our opinion of a router status has changed. I might have missed some cases here.
svn:r8781
2006-10-20 21:04:39 +00:00
Roger Dingledine
0459db2c0d
checkpoint some changes as i read diffs
...
svn:r8780
2006-10-20 19:11:12 +00:00
Nick Mathewson
e5f064c983
r9290@31-35-219: nickm | 2006-10-20 10:32:33 -0400
...
Add a GETINFO target so controllers can ask Tor for the current state of a router. (Results given in networkstatus format.)
svn:r8772
2006-10-20 14:58:29 +00:00
Nick Mathewson
7551c44a53
r9274@Kushana: nickm | 2006-10-19 16:16:58 -0400
...
Add unit tests for tor_mmap_file(); make tor_mmap_t.size always be the size of the file (not the size of the mapping); add an extra argument to read_file_to_str() so it can return the size of the result string.
svn:r8762
2006-10-19 23:05:02 +00:00
Nick Mathewson
126a3f699a
r9273@Kushana: nickm | 2006-10-19 15:43:39 -0400
...
Never discard a descriptor for being too old until either it is recommended by no authorities, or until we download a better (more recent and recommended) one for the same router. This will eventually make it possible for servers to publish less often.
svn:r8761
2006-10-19 23:04:56 +00:00
Nick Mathewson
4443934702
r9091@totoro: nickm | 2006-10-19 11:45:28 -0400
...
Change to BadExit logic: Let authorities set an "I list bad exits" flag. Consider an exit bad if it is listed as bad by more than half of *those* authorities. This gives us a better migration path.
svn:r8756
2006-10-19 15:45:48 +00:00
Nick Mathewson
eca28f24f5
r9004@totoro: nickm | 2006-10-11 18:05:24 -0400
...
Add client support for a 'BadExit' flag, so authorities can say "Server X is a poor choise for your nytimes.com connections, as it seems to direct them to HoorayForMao.com or (more likely) WouldYouLikeToBuyTheseFineEncyclopedias.com"
svn:r8690
2006-10-11 22:06:01 +00:00
Roger Dingledine
f2bd0e2f16
more minor cleanups
...
svn:r8630
2006-10-07 06:28:50 +00:00
Roger Dingledine
06e5b2283c
minor cleanups
...
svn:r8622
2006-10-07 00:50:39 +00:00
Nick Mathewson
6e0b90a902
r8838@totoro: nickm | 2006-10-02 15:24:39 -0400
...
Partial implementation of revised nickname syntax for controllers. Implement ability to look up routers by "verbose" nicknames; add a per-v1-control-connection flag to turn the feature on in events. Needs testing, spec, ability to actually turn on the flag, double-checking that we wont overflow any nickname buffers, and changelog.
svn:r8582
2006-10-03 18:58:40 +00:00
Nick Mathewson
57ffca883d
r8826@totoro: nickm | 2006-10-01 17:58:45 -0400
...
Disprefer exit nodes for entry, middle positions (fixes bug 200). Also, switch to using a uint64_t to hold "total bandwidth for all nodes" under consideration; crypt_rand_int would have died at 2GB/s network capacity.
svn:r8571
2006-10-01 21:59:09 +00:00
Roger Dingledine
7ed921708f
Track down a seg fault that's been bothering me a while: if you
...
enable your dirport as a client, you'll crash.
svn:r8561
2006-10-01 07:53:17 +00:00
Nick Mathewson
8308a37908
r9023@Kushana: nickm | 2006-09-29 17:27:24 -0400
...
Make distinct all non-bug messages at notice or higher that appear 3 or more times.
svn:r8541
2006-09-29 22:33:34 +00:00
Nick Mathewson
8992bf6204
r8776@totoro: nickm | 2006-09-29 00:50:46 -0400
...
Reserve the nickname "Unnamed" for routers that can't pick a hostname; any
router can call itself Unnamed; directory servers will never allocate Unnamed
to any particular router; clients won't believe that any router is the
canonical Unnamed.
svn:r8529
2006-09-29 04:51:28 +00:00
Nick Mathewson
907fc6c73e
r8977@Kushana: nickm | 2006-09-28 19:56:41 -0400
...
Make "is a v1 authority", "is a v2 authority", and "is a hidden service authority" into separate flags so we can eventually migrate more trust away from moria.
svn:r8523
2006-09-28 23:57:59 +00:00
Nick Mathewson
9988112c87
r8973@Kushana: nickm | 2006-09-28 16:53:19 -0400
...
Refactor entry guard status logic a lot; allow more factors [like not
having a Guard flag or being listed in ExcludeNodes] to render a guard
"unlisted" (now called "unusable"); track guard down status (now
called "unreachable") separately from is_running.
svn:r8519
2006-09-28 23:57:44 +00:00
Nick Mathewson
49ad1eefa1
Add an EnforceDistinctSubnets option so that clients who know what they are doing (mainly people with private testing networks) can disable our same-/16 detection.
...
svn:r8504
2006-09-25 22:12:54 +00:00
Nick Mathewson
4fe76e7b6b
Free named_server_map on shutdown.
...
svn:r8500
2006-09-25 16:06:39 +00:00
Nick Mathewson
bde5939ad3
r8909@Kushana: nickm | 2006-09-22 00:38:13 -0400
...
Consider changes to has_old_dnsworkers as noncosmetic
svn:r8464
2006-09-22 20:20:21 +00:00
Nick Mathewson
6b716fdfb9
NEEDS REVIEW. Act on previous comment, and handle named servers differently: now, we allow multiple servers with the same name in the routerlist even if that name is reserved, but we check whether names are reserved when we try to look up routers by nickname. This is a minor security fix. This makes router_add_to_routerlist O(1). This is a backport candidate.
...
svn:r8433
2006-09-19 23:48:14 +00:00
Nick Mathewson
5ebb949c9f
Stop searching routerlist for routers with the same identity as other routers (on router insert): we already have a map for that. (We need to add an index field to routerinfo_t so we can figure out which point in the routerlist to replace.) Also, add a comment to routerlist.c; arma, please advise?
...
svn:r8432
2006-09-19 23:18:30 +00:00
Nick Mathewson
7b0ec744bc
Switch routerlist.c to using memcmp on digests rather than crypto_pk_cmp_keys(); speed up find_whitespace a lot (8x for me) by using a switch statement. This should speed parsing a lot of routers at once by a lot.
...
svn:r8430
2006-09-19 22:20:09 +00:00
Nick Mathewson
65974f82fa
r8839@Kushana: nickm | 2006-09-17 16:11:59 -0400
...
Add some client performance XXXXs; try to move some common case tests higher on their decision trees.
svn:r8410
2006-09-17 20:12:10 +00:00
Roger Dingledine
769f9201a6
Send out a burst of long-range drop cells after we've established that
...
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
2006-09-15 05:30:25 +00:00
Peter Palfrader
ba091ae5d7
r9770@danube: weasel | 2006-09-15 07:20:05 +0200
...
router_set_networkstatus() gets a list of status documents we asked for from
connection_dir_client_reached_eof(). However, as a cache we (sometimes?) just
ask for "all". router_set_networkstatus() would freak out over that, meaning
it would log a warning and drop the status document instead of caching it
as it is supposed to. Now we let router_set_networkstatus() know if the
data comes from an all-request so it can do the right thing.
svn:r8398
2006-09-15 05:20:16 +00:00
Peter Palfrader
5beb114744
r9767@danube: weasel | 2006-09-15 06:27:48 +0200
...
Minor documentation fix
svn:r8397
2006-09-15 04:29:36 +00:00
Nick Mathewson
21a7880358
r8695@Kushana: nickm | 2006-08-31 14:35:36 -0400
...
Fix two corner cases in router_dir_info_changed(). This should have no observable effect.
svn:r8311
2006-08-31 18:46:46 +00:00
Roger Dingledine
94afe807ac
stop a big memory leak: we were leaking the whole contents
...
of cached-routers.new every time we read it.
svn:r8236
2006-08-27 02:12:12 +00:00
Roger Dingledine
9f5856c03d
stop three memory leaks. nick, fix these if i'm wrong.
...
svn:r8235
2006-08-27 02:07:54 +00:00
Roger Dingledine
6650470575
automatically avoid picking more than one node from the same
...
/16 network when constructing a circuit.
svn:r7068
2006-08-16 03:44:13 +00:00
Nick Mathewson
273ee3e814
r7392@Kushana: nickm | 2006-08-14 23:50:32 -0400
...
Only do the expensive version of router_have_minimum_dir_info() when the dir info has changed. Backport candidate, since oprofile suggests that this function and ones it calls account for 25-35% of oprofile samples.
svn:r7062
2006-08-15 03:54:09 +00:00
Nick Mathewson
7c596c166b
r7029@Kushana: nickm | 2006-08-04 14:08:41 -0700
...
Remove now-spurious size and data arguments from tor_mmap_file
svn:r6987
2006-08-05 17:53:21 +00:00
Nick Mathewson
bf72878cad
r7012@Kushana: nickm | 2006-08-03 19:21:25 -0700
...
Add an "mmap handle" type to encapsulate bookkeeping elements of mmap issues; add prelim win32 impl
svn:r6980
2006-08-04 18:32:43 +00:00
Nick Mathewson
ec82db6995
r6909@Kushana: nickm | 2006-07-26 13:05:58 -0400
...
Clean up wide lines from last patch.
svn:r6907
2006-07-26 19:07:37 +00:00
Nick Mathewson
4ff4577beb
r6908@Kushana: nickm | 2006-07-26 12:38:52 -0400
...
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
2006-07-26 19:07:26 +00:00
Roger Dingledine
ee5f512e13
parameterize the loudness of resolve_my_address(), and call things
...
IP addresses, not IPs.
svn:r6764
2006-07-15 20:26:05 +00:00
Nick Mathewson
a7a1d4e3d3
First part of making mmap-based stuff work on win32: save descriptors as "binary" (no LF->CRLF tanslation) so that we can mmap them properly later. Patch from Frediano Ziglio.
...
svn:r6748
2006-07-09 22:28:12 +00:00
Roger Dingledine
c22c7b96f5
tab-man strikes again
...
svn:r6699
2006-06-28 15:39:02 +00:00
Nick Mathewson
8b08ab52fd
Fix another idiot bug causing symptom 309. Why cant I program?
...
svn:r6698
2006-06-28 15:36:28 +00:00
Nick Mathewson
96bfefeeb6
Add a check to try to make cache rebuild fail fast if it is going to fail
...
svn:r6697
2006-06-28 11:03:34 +00:00
Nick Mathewson
4dac383f5a
Aaand re-disable the bogus test in get_body()
...
svn:r6696
2006-06-28 08:57:41 +00:00
Nick Mathewson
d547ecc916
Make sure that our calculated offsets for routers is correct; again. This time bug 309 may be gone gone gone.
...
svn:r6695
2006-06-28 08:55:53 +00:00
Nick Mathewson
d3784ff1df
Likely fix for bug 309: when we calculate offsets after rebuilding the descriptor cache, do not reset the offset pointer half-way through.
...
svn:r6693
2006-06-27 15:52:51 +00:00
Nick Mathewson
52b8dfa95a
Fix a bunch of spaces.
...
svn:r6678
2006-06-22 07:25:15 +00:00
Nick Mathewson
58b05fc84d
#if out test that was failing because of an extra newline.
...
svn:r6676
2006-06-22 07:10:37 +00:00
Nick Mathewson
b7910202a3
Next batch of memory miserdom: mmap cached-routers file. This is sure to break somewhere.
...
svn:r6675
2006-06-22 07:01:54 +00:00
Nick Mathewson
e2697a62ac
When requesting or serving resources via fingerprint/digest, request and respond in-order, removing duplicates.
...
svn:r6673
2006-06-21 04:57:12 +00:00
Nick Mathewson
b5c599412f
Backport candidate: implement the "is this uptime change cosmetic" test properly.
...
svn:r6654
2006-06-18 16:05:54 +00:00
Roger Dingledine
30f6c57fd7
and forward-port too.
...
svn:r6573
2006-06-09 06:52:49 +00:00
Roger Dingledine
a91be49402
fix a bootstrapping check we ignored that prevents us from running
...
with only one dir authority.
svn:r6570
2006-06-09 02:45:39 +00:00
Roger Dingledine
bb18168fae
ok, ok, maybe *this* time my rep_hist_circbuilding_dormant() will work.
...
svn:r6568
2006-06-08 22:36:13 +00:00
Nick Mathewson
853e2d99b6
Add a new warning to our "warn a lot" list: unused parameters. This means we have to explicitly "use" unuseds, but it can catch bugs. (It caught two coding mistakes so far.)
...
svn:r6532
2006-06-04 22:42:13 +00:00
Roger Dingledine
9000a5aff1
and get grammar right
...
svn:r6517
2006-05-30 06:19:48 +00:00
Roger Dingledine
ae2648fb1c
stop fetching descriptors if we're not a dir mirror and we
...
haven't tried to establish any circuits lately.
svn:r6516
2006-05-30 06:19:06 +00:00
Roger Dingledine
60abe23158
tentative change: if you have your dirport set, you are a directory
...
mirror, whether or not your orport is set.
svn:r6513
2006-05-30 06:11:36 +00:00
Roger Dingledine
f579478687
correct a false log message, since we actually reset all our
...
downloading stats every hour, and sometimes more often.
svn:r6505
2006-05-26 16:29:20 +00:00
Roger Dingledine
295ad74fda
Tor servers are also giving spurious "you're invalid" warnings.
...
This is because we get a lot of network statuses that don't list
us at all, and we conclude that they all think we're invalid.
The long-term fix is to get better logic, and the short-term fix
is to downgrade the log severity.
svn:r6448
2006-05-09 09:47:47 +00:00
Nick Mathewson
2b720b5746
Start remembering *where* we are storing routerdescs. This will make us easier to move from a RAM-mirrors-disk model to a RAM-caches-disk model, and save maybe around 10MB on a directory server.
...
svn:r6427
2006-04-29 18:42:26 +00:00
Nick Mathewson
15dbe02c04
shorten some too-wide lines
...
svn:r6426
2006-04-29 17:44:31 +00:00
Nick Mathewson
5bce102cd2
Only warn about a down node once
...
svn:r6420
2006-04-25 06:20:47 +00:00
Nick Mathewson
5f9612216c
you wanted it spelled properly too? And me not even funded!
...
svn:r6418
2006-04-25 06:02:46 +00:00
Nick Mathewson
d6c04216ef
fix a segfault in last bug-285-related commit.
...
svn:r6417
2006-04-25 05:59:31 +00:00
Nick Mathewson
c70f1e7eb3
Possible partial fix for 285; needs review
...
svn:r6414
2006-04-24 17:51:31 +00:00
Roger Dingledine
47d3e23155
note another bug: we complain that a router doesn't exist,
...
because it's down so we never fetched it so it doesn't exist.
svn:r6394
2006-04-17 06:46:20 +00:00
Roger Dingledine
34bc0866d4
slightly clearer log message when you use a nickname rather than
...
a key for an unnamed server.
svn:r6393
2006-04-17 06:43:27 +00:00
Roger Dingledine
3791d3daaa
forward-port the n_named log severity downgrade.
...
svn:r6385
2006-04-14 20:19:33 +00:00
Peter Palfrader
beb9e0721a
Stop assuming every authority is a v1 authority
...
svn:r6377
2006-04-10 21:29:29 +00:00
Roger Dingledine
f89b0ea09f
be willing to add our own routerinfo into the routerlist.
...
this means authorities will include themselves in their
directories and network-statuses.
svn:r6369
2006-04-10 20:00:31 +00:00
Roger Dingledine
b190c451b8
and one more kick to consider all live network statuses for versions
...
svn:r6359
2006-04-10 08:40:16 +00:00
Roger Dingledine
a9e7737c3a
consider all live network statuses we have when deciding whether
...
our version is bad. also, unfix one of the unbugs from before.
svn:r6358
2006-04-10 08:37:16 +00:00
Nick Mathewson
71f1a77371
fix bugs in compute_recommended_versions
...
svn:r6356
2006-04-10 08:02:56 +00:00
Roger Dingledine
acc2eb445d
and get rid of an extra variable
...
svn:r6349
2006-04-10 05:48:04 +00:00
Roger Dingledine
ac2070b35b
stop being so picky about when we can start building circuits.
...
now clients are more likely to have circuits up soon after their
tor starts.
svn:r6346
2006-04-10 05:44:54 +00:00
Nick Mathewson
e258276c2b
Change a dumb interface. Also, increment trusted_dir_server_t.n_networkstatus_failures when an all.z download fails entirely or partially.
...
svn:r6345
2006-04-10 01:35:56 +00:00
Roger Dingledine
b6b534c9dd
quiet a bootstrapping message
...
svn:r6342
2006-04-09 20:19:56 +00:00
Roger Dingledine
b18d20ce32
Here is an attempted fix for directory mirrors that are frozen
...
in fear because they don't have all the networkstatuses. There's
no reason not to proceed if all the other checks are ok -- we just
shouldn't warn about certain things yet.
svn:r6337
2006-04-09 10:10:09 +00:00
Roger Dingledine
a589650496
i like the name FetchUselessDescriptors better.
...
svn:r6327
2006-04-08 21:48:14 +00:00
Roger Dingledine
2a94c8b493
add a new config option FetchUselessRouters, off by default, for
...
when you plan to run "exitlist" on this client and you want to know
about even the non-running descriptors.
svn:r6326
2006-04-08 21:35:17 +00:00
Roger Dingledine
3a5758e212
If we think of ourselves as authoritative, even if we're not
...
in the DirServers config lines, then we still are. This way we
give ourselves the "Authority" flag in our network-status.
svn:r6325
2006-04-08 21:19:40 +00:00
Roger Dingledine
557b174b8d
Break out the checks to see if a routerstatus is something we
...
would use. This way when we're deciding if we have "enough" descriptors
to start building circuits, we can count them accurately.
svn:r6320
2006-04-08 06:56:38 +00:00
Nick Mathewson
7a804572ab
fix an infinite loop; answer a question
...
svn:r6316
2006-04-07 22:55:46 +00:00
Nick Mathewson
c6d010b218
Dont warn about our own status unless weve tried and failed 4 times (or succeeded) for each authority.
...
svn:r6315
2006-04-07 04:52:32 +00:00
Roger Dingledine
c4fb9d22cf
if there's more than one match for router-get-my-nickname,
...
try to pick one that's running.
svn:r6313
2006-04-04 03:46:40 +00:00
Roger Dingledine
0825f61102
fix crash bug reported in flyspray 279.
...
svn:r6312
2006-04-04 03:25:36 +00:00
Roger Dingledine
453062b028
fix typo, remove extraneous variable
...
svn:r6311
2006-04-03 11:24:14 +00:00
Roger Dingledine
7198af7fbe
one more edge case that could paralyze a client with fear
...
svn:r6310
2006-04-03 06:59:07 +00:00
Roger Dingledine
a324871603
phrase the threshold comparison in the way we've been
...
phrasing it. these are equivalent, right?
svn:r6309
2006-04-03 06:37:35 +00:00
Nick Mathewson
eba6204315
fix some xxxs.
...
svn:r6307
2006-04-03 06:23:24 +00:00
Roger Dingledine
2cb3aeb4e1
another point that needs more thinking
...
svn:r6306
2006-04-03 06:22:54 +00:00
Roger Dingledine
9549d81d95
two more thresholds to look at
...
svn:r6305
2006-04-03 06:10:33 +00:00
Roger Dingledine
64a40b5137
nick: there *is* no MAX_SERVER_INTERVAL_WITHOUT_REQUEST. true?
...
svn:r6300
2006-04-03 02:20:32 +00:00