Nick Mathewson
02c71a7eb4
Widen the conditions under which we whine about not having a geoip file to include "a country code was configured in a node list."
...
svn:r16968
2008-09-25 21:06:32 +00:00
Nick Mathewson
8bbbbaf87b
Add country-code support to configured node lists to implement the ever-popular "no exits in Monaco" feature (ExcludeExitNodes {MC}). Also allow country codes and IP ranges in ExitNodes. (EntryNodes needs more work.) Based on code by Robert Hogan. Needs more testing.
...
svn:r16966
2008-09-25 20:21:35 +00:00
Karsten Loesing
f2ff3e74ae
All relays now store and serve v2 hidden service descriptors by default (not only directory mirrors).
...
svn:r16961
2008-09-24 22:33:47 +00:00
Karsten Loesing
9a7098487b
If we are not using BEGIN_DIR cells, don't attempt to contact hidden service directories with non-open dir port.
...
svn:r16960
2008-09-24 22:29:22 +00:00
Nick Mathewson
3db8c15287
Add a circuit_conforms_to_options() function for use in debugging paths [and inother stuff too]. Untested, and so far unused.
...
svn:r16914
2008-09-15 22:29:47 +00:00
Karsten Loesing
f0a5ef804f
Directory mirrors store and serve v2 hidden service descriptors by default.
...
svn:r16858
2008-09-11 20:06:04 +00:00
Roger Dingledine
ef7af1d61e
karsten's patch for bug 767.
...
svn:r16808
2008-09-09 08:41:58 +00:00
Peter Palfrader
24da63ea7b
Add exit policy and bw to dirvotes - unfortunately also to v2 statuses
...
svn:r16536
2008-08-14 12:37:00 +00:00
Nick Mathewson
960a0f0a99
r17641@31-33-44: nickm | 2008-08-05 16:07:53 -0400
...
Initial conversion of uint32_t addr to tor_addr_t addr in connection_t and related types. Most of the Tor wire formats using these new types are in, but the code to generate and use it is not. This is a big patch. Let me know what it breaks for you.
svn:r16435
2008-08-05 20:08:19 +00:00
Nick Mathewson
016adc9a08
r17359@pc-10-8-1-079: nickm | 2008-07-25 16:42:48 +0200
...
whitespace fixes
svn:r16209
2008-07-25 14:47:19 +00:00
Nick Mathewson
3ce6e2fba2
r17346@aud-055: nickm | 2008-07-24 15:37:19 +0200
...
Make generic address manipulation functions work better. Switch address policy code to use tor_addr_t, so it can handle IPv6. That is a good place to start.
svn:r16178
2008-07-24 13:44:04 +00:00
Nick Mathewson
ed781e6971
r17338@aud-055: nickm | 2008-07-24 11:21:06 +0200
...
Refactor the router_choose_random_node interface: any function with 10 parameters, most of which are boolean and one of which is unused, should get refactored like this.
svn:r16167
2008-07-24 09:22:34 +00:00
Nick Mathewson
26746d7578
r17220@tombo: nickm | 2008-07-18 15:11:27 -0400
...
Fix bug in last patch: ADDR_POLICY_REJECT is not the same as ADDR_POLICY_REJECTED.
svn:r16065
2008-07-18 19:11:30 +00:00
Nick Mathewson
c8160bce1f
r17188@tombo: nickm | 2008-07-18 14:35:18 -0400
...
Add new ExcludeExitNodes option. Also add a new routerset type to handle Exclude[Exit]Nodes. It is optimized for O(1) membership tests, so as to make choosing a random router run in O(N_routers) time instead of in O(N_routers*N_Excluded_Routers).
svn:r16061
2008-07-18 18:36:32 +00:00
Nick Mathewson
c717e19a29
r16881@tombo: nickm | 2008-07-10 14:19:21 -0400
...
fix a rare segfault in bw-share-measuring code
svn:r15820
2008-07-10 18:31:28 +00:00
Karsten Loesing
33ced73597
Added prefixes to testing-network-only configuration options.
...
svn:r15375
2008-06-20 17:03:13 +00:00
Roger Dingledine
ad6b2e7523
check-spaces, fix a typo
...
svn:r15355
2008-06-18 20:14:25 +00:00
Nick Mathewson
dd6324b0c6
More bug 707 fixes: no #if/#endif pairs inside macro arguments.
...
svn:r15307
2008-06-16 18:35:21 +00:00
Nick Mathewson
0831cc3dbc
Patch from Karsten to implement proposal 135 ("Testing Tor Networks").
...
svn:r15253
2008-06-14 16:01:29 +00:00
Nick Mathewson
4630f0453d
Explain how my emacs setup works in the HACKING file. Someone else may care too.
...
svn:r15228
2008-06-13 19:57:52 +00:00
Roger Dingledine
15680ce8d2
some cleanups in preparation for moving stuff around
...
svn:r15112
2008-06-10 23:13:14 +00:00
Nick Mathewson
67a1658da5
Fix last geoip bugs.
...
svn:r15106
2008-06-10 20:11:59 +00:00
Nick Mathewson
b87a7760e0
r16129@tombo: nickm | 2008-06-10 14:28:06 -0400
...
More geoip tweaks. Include in the file a rough estimator of our total share.
svn:r15099
2008-06-10 18:28:10 +00:00
Nick Mathewson
55975452b4
r16121@tombo: nickm | 2008-06-09 16:14:39 -0400
...
fix compile with warnings on osx 10.5: double+int apparently gives a 64-bit value on some gccs
svn:r15093
2008-06-09 20:52:59 +00:00
Roger Dingledine
6aeb79af06
report partial bootstrapping progress as we fetch descriptors
...
svn:r15083
2008-06-09 06:33:29 +00:00
Roger Dingledine
eafb07ec96
extra points if you make it compile. boy, i'm on a roll.
...
svn:r15077
2008-06-09 05:17:52 +00:00
Roger Dingledine
3b730c7556
whoops -- the other half of r15074
...
svn:r15076
2008-06-09 05:16:47 +00:00
Roger Dingledine
5aeb89447e
infrastructure for the 'bootstrap status event' feature, so we can
...
tell the controller how we're doing at bootstrapping, and it can
tell the user.
svn:r15008
2008-06-07 05:27:34 +00:00
Roger Dingledine
b4d697688e
revert r14970, since it didn't fix anything.
...
leave r14971 in place though.
svn:r15005
2008-06-07 05:00:06 +00:00
Roger Dingledine
ebab48769d
Stop reloading the router list from disk for no reason when we
...
run out of reachable directory mirrors. Once upon a time reloading
it would set the 'is_running' flag back to 1 for them. It hasn't
done that for a long time.
svn:r15004
2008-06-07 04:56:08 +00:00
Roger Dingledine
ce64ca48b8
make some log entries more accurate
...
svn:r14998
2008-06-06 22:31:36 +00:00
Roger Dingledine
b65b89d50f
make sure, when we're checking if we have enough dir info, that
...
we actually have the descriptor listed in the consensus, not just
any descriptor, for each relay.
don't backport this patch (yet); who knows what it might do.
svn:r14971
2008-06-05 11:37:40 +00:00
Roger Dingledine
ca416a78e3
When we switched to using v3 directories, we threw away the part of
...
the "do we have enough directory info?" calculation that checked
how many relays we believed to still be running based on our own
experience. So if we went offline, we never gave up trying to make
new circuits; worse, when we came back online we didn't recognize
that we should give all the relays another chance. Bugfix on
0.2.0.9-alpha; fixes bugs 648 and 675.
svn:r14970
2008-06-05 10:57:09 +00:00
Roger Dingledine
c6b3cf4b96
documentation bug
...
svn:r14935
2008-06-04 08:59:14 +00:00
Nick Mathewson
6bfa96bfc7
Fix bug noted by roger: rebuild extrainfo store from time to time, even if we have never actually downloaded an extrainfo. Bridge authorities need this, or they never clean the extrainfo store.
...
svn:r14792
2008-05-29 00:44:57 +00:00
Nick Mathewson
08ba3355bc
r19694@catbus: nickm | 2008-05-12 00:21:37 -0400
...
Add unit tests for last patch; make it more testable; fix a bug or two.
svn:r14586
2008-05-12 04:22:01 +00:00
Peter Palfrader
c3c7e7114e
Actually, do not use conditional consensus downloads until the authorities have upgraded
...
svn:r14453
2008-04-24 15:51:53 +00:00
Peter Palfrader
ca43044600
I bet I screwed up while merging in the changes from the feature branch into my git-svn repository. Undo r14451
...
svn:r14452
2008-04-24 15:43:25 +00:00
Peter Palfrader
016e67f941
Merge conditional consensus downloading
...
svn:r14451
2008-04-24 15:39:14 +00:00
Peter Palfrader
788404dacf
and the client part of the consensus-by-authority-fpr proposal (ifdef'ed out)
...
svn:r14446
2008-04-24 15:38:57 +00:00
Nick Mathewson
41929c2684
r15287@tombo: nickm | 2008-04-22 17:09:25 -0400
...
Periodically launch requests for server/authority.z when it might help us learn our IP. Fix for bug 652.
svn:r14418
2008-04-22 21:10:41 +00:00
Roger Dingledine
5e299b5e01
minor fixes that have been accumulating
...
svn:r14378
2008-04-16 00:12:44 +00:00
Nick Mathewson
a627407fcb
r19233@catbus: nickm | 2008-04-08 13:06:34 -0400
...
When we remove old routers, use Bloom filters rather than a digestmap-based set in order to tell which ones we absolutely need to keep. This will save us roughly a kazillion little short-lived allocations for hash table entries.
svn:r14318
2008-04-08 17:06:41 +00:00
Nick Mathewson
72ca7e5d88
r19138@catbus: nickm | 2008-03-30 11:59:26 -0400
...
oops; fix bug in descriptor metric logic.
svn:r14245
2008-03-30 15:59:32 +00:00
Nick Mathewson
e19d96637d
r19118@catbus: nickm | 2008-03-29 00:27:08 -0400
...
Code (disabled) to get way too much info about the contents of old_routers on USR1.
svn:r14230
2008-03-29 04:27:34 +00:00
Nick Mathewson
fa15ed4b7b
r19079@catbus: nickm | 2008-03-26 17:16:46 -0400
...
Free authority certs on exit. Backport candidate.
svn:r14205
2008-03-26 21:16:56 +00:00
Nick Mathewson
80ec9e51dd
r18891@catbus: nickm | 2008-03-17 13:20:20 -0400
...
Patch from Sebastian Hahn: give an error message on "error replacing old router store."
svn:r14080
2008-03-17 17:21:12 +00:00
Nick Mathewson
e7db789e82
r14399@tombo: nickm | 2008-02-22 14:09:38 -0500
...
More 64-to-32 fixes. Partial backport candidate. still not done.
svn:r13680
2008-02-22 19:09:45 +00:00
Roger Dingledine
b3c0d066e5
other cleanups that have been sitting in my sandbox
...
svn:r13649
2008-02-21 09:01:32 +00:00
Nick Mathewson
f0e523c6ef
r18272@catbus: nickm | 2008-02-20 18:20:33 -0500
...
add a flag to suppress overwriting the certificates file with new certificates, so we do not overwrite all certs when starting as an authority.
svn:r13630
2008-02-20 23:20:36 +00:00
Nick Mathewson
08f7842384
r18139@catbus: nickm | 2008-02-18 13:14:05 -0500
...
Clarify logic in trusted_dirs_load_certs_from_string(); avoid a maybe-impossible maybe-not double-free spotted by lodger.
svn:r13558
2008-02-18 18:14:34 +00:00
Nick Mathewson
9e9b447b87
r14243@tombo: nickm | 2008-02-17 14:51:26 -0500
...
Better debugging to track down bug 606. Also remove a break; that may have been the possible culprit
svn:r13547
2008-02-17 19:51:33 +00:00
Nick Mathewson
418c2e1b6b
r14181@tombo: nickm | 2008-02-15 16:48:17 -0500
...
Fix all but 2 DOCDOC items; defer many XXX020s (particularly those where fixing them would fix no bugs at the risk of introducing some bugs).
svn:r13529
2008-02-15 23:39:04 +00:00
Nick Mathewson
ff64e78b20
r14170@tombo: nickm | 2008-02-15 11:50:38 -0500
...
Fix or downgrade a bunch of xxx020 items.
svn:r13527
2008-02-15 19:20:53 +00:00
Nick Mathewson
7ae3f6a491
r18056@catbus: nickm | 2008-02-12 17:21:10 -0500
...
Add roger's responses from IRC to some XXX020 items.
svn:r13487
2008-02-12 22:21:20 +00:00
Roger Dingledine
3abafccd0e
Start choosing which bridge to use proportional to its advertised
...
bandwidth, rather than uniformly at random. This should speed up Tor
for bridge users. Also do this for people who set StrictEntryNodes.
svn:r13486
2008-02-12 22:02:47 +00:00
Nick Mathewson
b5c03f05d8
r14102@tombo: nickm | 2008-02-10 13:30:04 -0500
...
Remove some deadcode.
svn:r13459
2008-02-10 18:40:27 +00:00
Nick Mathewson
842a33ff20
Update some copyright notices: it is now 2008.
...
svn:r13412
2008-02-07 05:31:47 +00:00
Nick Mathewson
a869574c56
r17947@catbus: nickm | 2008-02-06 11:57:53 -0500
...
Fix a bunch of DOCDOC items; document the --quiet flag; refactor a couple of XXXX020 items.
svn:r13405
2008-02-06 16:58:05 +00:00
Roger Dingledine
55971c71b6
if we have a networkstatus concensus but only 0 or 1 descriptors,
...
don't declare that we're ready to build circuits yet. we're not.
svn:r13399
2008-02-06 12:37:25 +00:00
Nick Mathewson
ec6c131da6
r17936@catbus: nickm | 2008-02-06 00:31:11 -0500
...
Fix/downgrade some more XXX020s.
svn:r13397
2008-02-06 05:31:21 +00:00
Nick Mathewson
ff9bd0fd3a
r17929@catbus: nickm | 2008-02-05 17:10:26 -0500
...
Fix or downgrade a few XXX020 items.
svn:r13393
2008-02-05 23:20:44 +00:00
Nick Mathewson
9c7eaa7a9d
r17918@catbus: nickm | 2008-02-05 16:39:17 -0500
...
Remove a few #if-0d items.
svn:r13392
2008-02-05 21:39:56 +00:00
Nick Mathewson
c8a689c9e8
r17909@catbus: nickm | 2008-02-05 14:48:22 -0500
...
As planned, rename networkstatus_vote_t to networkstatus_t, now that v3 networkstatuses are working and standard and v2 networkstatuses are obsolete.
svn:r13383
2008-02-05 21:39:29 +00:00
Nick Mathewson
2866c53eec
r17900@catbus: nickm | 2008-02-05 14:14:54 -0500
...
I wonder what the emacs command is for "exchange words?" I know that there _is_ one, because I apparently hit it by accident.
svn:r13381
2008-02-05 19:40:21 +00:00
Nick Mathewson
2502359a5b
r17897@catbus: nickm | 2008-02-05 13:51:40 -0500
...
Whitespace cleanups
svn:r13378
2008-02-05 19:40:15 +00:00
Roger Dingledine
fdbefc8934
If we're a relay, avoid picking ourselves as an introduction point,
...
a rendezvous point, or as the final hop for internal circuits. Bug
reported by taranis and lodger. Bugfix on 0.1.2.x.
svn:r13372
2008-02-04 17:25:24 +00:00
Roger Dingledine
426a9bbde1
Don't trigger an assert if we start a directory authority with a
...
private IP address (like 127.0.0.1).
svn:r13371
2008-02-04 16:58:50 +00:00
Nick Mathewson
68cf666d04
Fix bug 571: associate certificates with keys, not dirservers, so that we can have certificates for dirservers we do not recognize.
...
svn:r13304
2008-01-26 23:18:30 +00:00
Roger Dingledine
aa25bf1405
a slightly better interface for hid_serv_get_responsible_directories()
...
svn:r13271
2008-01-25 07:22:42 +00:00
Roger Dingledine
5fcc79185f
avoid calling smartlist_get(..., -1) if we have a consensus but no
...
hsdir nodes.
svn:r13270
2008-01-25 07:11:32 +00:00
Roger Dingledine
d72ccd95a8
clean out some proposal 114 stuff
...
svn:r13269
2008-01-25 06:47:46 +00:00
Roger Dingledine
cbe9863422
patch "14a" from karsten: don't fail if we can't find
...
REND_NUMBER_OF_CONSECUTIVE_REPLICAS v2 hsdirs.
svn:r13263
2008-01-24 22:46:29 +00:00
Roger Dingledine
4682e5f924
when we're counting how many descriptors to not download, be a
...
little bit more accurate
svn:r13173
2008-01-18 04:47:03 +00:00
Roger Dingledine
55e052b0a5
Assert error introduced in r11957:
...
Fix an assert if we post a general-purpose descriptor via the
control port but that descriptor isn't mentioned in our current
network consensus. Bug reported by Jon McLachlan; bugfix on
0.2.0.9-alpha.
svn:r13153
2008-01-17 05:25:21 +00:00
Nick Mathewson
4a3b7496f0
r17639@catbus: nickm | 2008-01-15 19:09:21 -0500
...
Fix some hard to trigger but nonetheless real memory leaks spotted by an anonymous contributor. Needs review. Partial backport candidate.
svn:r13147
2008-01-16 05:27:19 +00:00
Nick Mathewson
24aae484c9
r17624@catbus: nickm | 2008-01-15 00:42:01 -0500
...
Fixes to more anonymously-reported typos and logic errors.
svn:r13136
2008-01-15 05:57:19 +00:00
Nick Mathewson
04263648c4
r17554@catbus: nickm | 2008-01-10 12:48:29 -0500
...
Do not send bridge descriptors over unencrypted connections.
svn:r13094
2008-01-10 17:48:40 +00:00
Roger Dingledine
50f4cd10ad
don't rebuild the router store for all those times when we
...
fetch one descriptor and then we don't like it
svn:r13077
2008-01-08 23:31:25 +00:00
Nick Mathewson
feb1c60e9d
r15782@tombo: nickm | 2008-01-01 23:57:43 -0500
...
Bugfix for bug 569: do not try to download nonexistant certificates with signing key 000000000000000.
svn:r13018
2008-01-02 04:57:48 +00:00
Nick Mathewson
11fff225fa
r15779@tombo: nickm | 2008-01-01 23:43:24 -0500
...
Use reference-counting to avoid allocating a zillion little addr_policy_t objects. (This is an old patch that had been sitting on my hard drive for a while.)
svn:r13017
2008-01-02 04:43:44 +00:00
Roger Dingledine
4fb573fddd
bugfix on r10612:
...
When we load a bridge descriptor from the cache,
and it was previously unreachable, mark it as retriable so we won't
just ignore it. Also, try fetching a new copy immediately.
svn:r12950
2007-12-24 10:31:39 +00:00
Roger Dingledine
61bd5583d9
If we receive a general-purpose descriptor and then receive an
...
identical bridge-purpose descriptor soon after, don't discard
the next one as a duplicate.
svn:r12933
2007-12-23 01:18:14 +00:00
Roger Dingledine
6097e46420
Fix a crash when we load a bridge descriptor from disk but we don't
...
currently have a Bridge line for it in our torrc. Bugfix on
0.2.0.12-alpha.
svn:r12921
2007-12-22 06:11:49 +00:00
Roger Dingledine
869858bf57
add a little note about matt's 0.2.0.12-alpha crash
...
svn:r12918
2007-12-22 05:26:36 +00:00
Roger Dingledine
9ebf86bb66
new config option FetchDirInfoEarly for tup/ioerror and the tordnsel
...
svn:r12896
2007-12-21 06:08:00 +00:00
Nick Mathewson
a697573ce9
r15562@tombo: nickm | 2007-12-18 23:23:59 -0500
...
Remove the LearnAuthorityAddrFromCerts option; make it always-on. One option down, ~160 options to go.
svn:r12870
2007-12-19 04:24:05 +00:00
Nick Mathewson
95fecd6fbc
r15560@tombo: nickm | 2007-12-18 23:18:21 -0500
...
Add a bit of missing documentation.
svn:r12869
2007-12-19 04:18:28 +00:00
Nick Mathewson
95d500f33f
r15558@tombo: nickm | 2007-12-18 22:55:23 -0500
...
Re-parse annotations in another place. Good catch, arma.
svn:r12868
2007-12-19 03:55:40 +00:00
Roger Dingledine
07c7f9e9e7
When we were reading router descriptors from cache, we were ignoring
...
the annotations -- including reading in bridge-purpose descriptors
as general-purpose descriptors.
svn:r12867
2007-12-19 03:11:02 +00:00
Nick Mathewson
d07122ba47
r17246@catbus: nickm | 2007-12-18 18:45:17 -0500
...
Fix some xxx020 items.
svn:r12864
2007-12-18 23:45:24 +00:00
Roger Dingledine
b63a247c68
Make bridge authorities test reachability of bridges.
...
Added two XXX020's that we need to think harder about.
svn:r12859
2007-12-18 21:37:58 +00:00
Roger Dingledine
1d8a8063b9
clean up copyrights, and assign 2007 copyrights to The Tor Project, Inc
...
svn:r12786
2007-12-12 21:09:01 +00:00
Roger Dingledine
be337eb0ad
fix a memory leak in authority_certs_fetch_missing() every time
...
we try to call it but don't have enough dir info.
svn:r12743
2007-12-09 17:43:43 +00:00
Roger Dingledine
8de470cf69
Add "GETINFO/desc-annotations/id/<OR digest>" so controllers can
...
ask about source, timestamp of arrival, purpose, etc. We need
something like this to help Vidalia not do GeoIP lookups on bridge
addresses.
svn:r12687
2007-12-06 07:15:06 +00:00
Roger Dingledine
d46b8a3eac
Stop being so aggressive about fetching dir info if your DirPort is
...
on but your ORPort is off.
Add a new config option BridgeRelay that specifies you want to
be a bridge relay. Right now the only difference is that it makes
you answer begin_dir requests, and it makes you cache dir info,
even if your DirPort isn't on.
Refactor directory_caches_dir_info() into some more functions.
svn:r12668
2007-12-04 18:35:03 +00:00
Roger Dingledine
1a254477fc
minor cleanups
...
svn:r12631
2007-12-02 04:39:56 +00:00
Roger Dingledine
f8df8d791e
start to refactor dirserver_mode()
...
svn:r12621
2007-12-01 04:58:53 +00:00
Roger Dingledine
aaf35cccf7
karsten's second refactoring patch
...
svn:r12607
2007-11-29 15:25:04 +00:00
Roger Dingledine
b701583ffa
note a log message that might want to get quieter
...
svn:r12526
2007-11-17 12:11:00 +00:00
Roger Dingledine
d6f8ba25c9
back out r12509 and fix a better bug instead:
...
When authorities detected more than two relays running on the same
IP address, they were clearing all the status flags but forgetting
to clear the "hsdir" flag. So clients were being told that a
given relay was the right choice for a v2 hsdir lookup, yet they
never had its descriptor because it was marked as 'not running'
in the consensus.
svn:r12515
2007-11-17 01:53:33 +00:00
Roger Dingledine
0e442e098c
Nov 16 02:20:50.089 [info] update_consensus_router_descriptor_downloads(): 0 router descriptors downloadable. 0 delayed; 1676 present (0 of those were in old_routers); 0 would_reject; 582 wouldnt_use, 0 in progress.
...
Nov 16 02:20:50.089 [info] launch_router_descriptor_downloads(): There are not many downloadable routerdescs, but we haven't tried downloading descriptors recently. Downloading.
Get rid of the second line.
svn:r12510
2007-11-16 07:23:25 +00:00
Roger Dingledine
60ee26c873
Karsten: you should look at this and decide if we should skip over
...
non-running hsdirs, or not give them the flag if they're not running,
or what.
When picking v2 hidden service directories, don't pick ones that
aren't listed as Running.
svn:r12509
2007-11-16 05:29:27 +00:00
Nick Mathewson
bbb34846b4
r16665@catbus: nickm | 2007-11-14 13:36:11 -0500
...
Fix bug spotted by karsten: when we have no consensus, do not try to continue finding directories for a hidden service.
svn:r12493
2007-11-14 18:39:15 +00:00
Roger Dingledine
c23a22785d
make r12485 more likely to work on tonga too
...
svn:r12486
2007-11-12 19:01:28 +00:00
Nick Mathewson
f7c2d1522e
r16656@catbus: nickm | 2007-11-12 11:27:00 -0500
...
Possibly fix bug 548 by making the fix for bug 543 not get invoked on authorities. See changelog and bug 548 entry for rationale.
svn:r12485
2007-11-12 16:29:31 +00:00
Nick Mathewson
6deca312a7
r16654@catbus: nickm | 2007-11-12 10:43:45 -0500
...
Add explanatory comment. Does not fix bug 548.
svn:r12484
2007-11-12 15:46:38 +00:00
Roger Dingledine
7870964e0c
Don't reevaluate all the information from our consensus document
...
just because we've downloaded a v2 networkstatus that we intend
to cache. Fixes bug 545.
svn:r12479
2007-11-11 17:37:59 +00:00
Roger Dingledine
49e9c6d96b
tweak
...
svn:r12478
2007-11-11 17:20:30 +00:00
Nick Mathewson
17a34e4a43
r16569@catbus: nickm | 2007-11-08 10:51:11 -0500
...
More log messages about certificate downloads; try to track down bug 546.2
svn:r12436
2007-11-08 16:19:04 +00:00
Roger Dingledine
1d61b54227
make the complaints about missing v2hidserv directories quieter,
...
at least until we're *supposed* to have any of them.
svn:r12431
2007-11-08 04:21:35 +00:00
Roger Dingledine
e12cf29960
Don't stop fetching descriptors when FetchUselessDescriptors is
...
set, even if we stop asking for circuits. Bugfix on 0.1.2.x;
reported by tup and ioerror.
svn:r12430
2007-11-08 04:19:51 +00:00
Nick Mathewson
45b0ee42a3
r16531@catbus: nickm | 2007-11-07 12:39:56 -0500
...
Initialize re-parsed routerinfos with routerlist_index -1, since they are not yet inserted into the routerlist. Fixes another crash.
svn:r12415
2007-11-07 17:41:14 +00:00
Nick Mathewson
dc2ab2f4e2
r16529@catbus: nickm | 2007-11-07 12:28:52 -0500
...
And make it compile too.
svn:r12414
2007-11-07 17:30:08 +00:00
Nick Mathewson
9b2d86d83d
r16527@catbus: nickm | 2007-11-07 12:27:59 -0500
...
Re-set all of the indices immediately after sorting old_routers. Fixes a crash.
svn:r12413
2007-11-07 17:29:16 +00:00
Nick Mathewson
bed01a9003
r16525@catbus: nickm | 2007-11-07 12:10:01 -0500
...
Clean up log messages from bug 543 fix, and make old_routers also keep track of their indices. This will probably crash some until all the bugs are fixed.
svn:r12412
2007-11-07 17:11:23 +00:00
Nick Mathewson
381619a973
Fix typo.
...
svn:r12409
2007-11-07 15:22:46 +00:00
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