Roger Dingledine
1445e17a21
We were computing the wrong Content-Length: header for directory
...
responses that need to be compressed on the fly, causing clients
asking for those items to always fail. Bugfix on 0.2.0.x; fixes
bug 593.
svn:r13268
2008-01-25 01:45:06 +00:00
Roger Dingledine
649a63f435
don't pre-initialize some vars that we assign to right after
...
svn:r13267
2008-01-25 01:34:20 +00:00
Roger Dingledine
d262fff20d
patch "15" from karsten: don't retry a v2 renddesc fetch
...
if we have a perfectly good v0 renddesc.
svn:r13265
2008-01-24 22:49:14 +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
Peter Palfrader
ab79f53206
Some log messages during dirvoting - maybe downgrade to debug if you want
...
svn:r13261
2008-01-24 20:00:37 +00:00
Roger Dingledine
aca8d8fc03
patch from karsten to make vote logs more useful
...
svn:r13260
2008-01-24 19:48:16 +00:00
Roger Dingledine
ba7a37cf94
shrink it even more. coding is fun!
...
svn:r13258
2008-01-24 07:33:28 +00:00
Roger Dingledine
317f9e6551
more shrinking; get rid of selectible_dirs smartlist that was
...
leaking on error cases
svn:r13257
2008-01-24 07:22:59 +00:00
Roger Dingledine
529263f8ab
continue r13250 cleanup: remove some duplicate code
...
svn:r13256
2008-01-24 06:58:10 +00:00
Roger Dingledine
4637a61b3c
more cleanup on r13250: no need to log in both places
...
svn:r13253
2008-01-24 05:15:50 +00:00
Roger Dingledine
c973eb5e23
start to clean up r13250: retry v2 renddesc fetches when we
...
fail to reach the dirserver too.
svn:r13251
2008-01-24 04:45:30 +00:00
Roger Dingledine
6b1374556e
put in karsten's "patch 14". needs a lot of cleanup and a changelog.
...
svn:r13250
2008-01-24 03:28:50 +00:00
Roger Dingledine
980fcb1ca7
When we get a consensus that's been signed by more people than
...
we expect, don't log about it; it's not a big deal.
svn:r13249
2008-01-24 02:31:37 +00:00
Roger Dingledine
e67f23f897
weasel was worried there was a leak here. i don't think there
...
is. but i could be wrong.
svn:r13248
2008-01-24 01:14:50 +00:00
Peter Palfrader
12bd40931b
Fix a warning
...
svn:r13243
2008-01-23 09:05:40 +00:00
Peter Palfrader
1d91c156fe
Some people still think letters fall off the side of the code if they go farther than 80 chars
...
svn:r13242
2008-01-23 08:45:14 +00:00
Peter Palfrader
fc91704f78
Log where uploaded consensus signatures come from
...
svn:r13241
2008-01-23 08:38:05 +00:00
Roger Dingledine
9d1832dd5a
Set up dannenberg (run by CCC) as the sixth v3 directory
...
authority.
svn:r13231
2008-01-22 22:38:38 +00:00
Roger Dingledine
a49f14d0d4
When we setconf ClientOnly to 1, close any current OR and Dir
...
listeners. Reported by mwenge.
svn:r13214
2008-01-21 21:21:19 +00:00
Roger Dingledine
b79850d574
Make "ClientOnly 1" config option disable directory ports too.
...
svn:r13213
2008-01-21 21:00:50 +00:00
Roger Dingledine
ff62154ba3
New config options WarnPlaintextPorts and RejectPlaintextPorts so
...
Tor can warn and/or refuse connections to ports commonly used with
vulnerable-plaintext protocols.
We still need to figure out some good defaults for them.
svn:r13198
2008-01-20 05:54:15 +00:00
Roger Dingledine
a1f2817307
minor cleanups
...
svn:r13190
2008-01-19 20:00:53 +00:00
Roger Dingledine
7dde7b02a2
try to grow a convention about where we put the time_to_foo and
...
FOO_INTERVAL declarations.
svn:r13177
2008-01-18 05:00:35 +00:00
Roger Dingledine
43dce232ad
If we've gone 12 hours since our last bandwidth check, and we
...
estimate we have less than 50KB bandwidth capacity but we could
handle more, do another bandwidth test.
svn:r13176
2008-01-18 04:58:40 +00:00
Roger Dingledine
3d3663a123
Don't answer "/tor/networkstatus-bridges" directory requests if
...
the request isn't encrypted.
svn:r13175
2008-01-18 04:51:12 +00:00
Roger Dingledine
6228213647
minor typo
...
svn:r13174
2008-01-18 04:50:15 +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
06047bcec9
Avoid going directly to the directory authorities even if you're a
...
relay, if you haven't found yourself reachable yet or if you've
decided not to advertise your dirport yet. Addresses bug 556.
svn:r13172
2008-01-18 04:42:22 +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
a984011814
r17623@catbus: nickm | 2008-01-15 00:22:04 -0500
...
bulletproof option_get_canonical_name()
svn:r13135
2008-01-15 05:57:14 +00:00
Nick Mathewson
89dfec02d8
r17614@catbus: nickm | 2008-01-14 13:55:25 -0500
...
Add a missing "goto err" when parsing v2 ns docs
svn:r13133
2008-01-14 19:00:33 +00:00
Nick Mathewson
581ba51c5c
r17612@catbus: nickm | 2008-01-14 13:46:04 -0500
...
Oops; fix compile
svn:r13131
2008-01-14 19:00:26 +00:00
Nick Mathewson
3b8f76aa51
r17611@catbus: nickm | 2008-01-14 13:44:16 -0500
...
add some missing checks for failing return values.
svn:r13130
2008-01-14 19:00:23 +00:00
Nick Mathewson
e49229caf8
r17610@catbus: nickm | 2008-01-14 13:20:49 -0500
...
Fix a bogus free() call on a base64 failure in router_append_dirobj_signature().
svn:r13129
2008-01-14 19:00:19 +00:00
Nick Mathewson
edf5e70784
r15891@tombo: nickm | 2008-01-12 19:20:24 -0500
...
Basic hacks to get TLS handshakes working: remove dead code; fix post-handshake logic; keep servers from writing while the client is supposed to be renegotiating. This may work. Needs testing.
svn:r13122
2008-01-13 00:20:47 +00:00
Nick Mathewson
ae6df065ed
r15890@tombo: nickm | 2008-01-12 17:19:51 -0500
...
Add a --disable-buffer-freelists configure argument to build without buffer RAM chunk freelists, so we can benchmark the impact of this.
svn:r13121
2008-01-13 00:20:44 +00:00
Nick Mathewson
705b4670d3
r17580@catbus: nickm | 2008-01-11 20:40:30 -0500
...
Fix policies.c build on gcc 4.2 with warnings.
svn:r13112
2008-01-12 05:52:59 +00:00
Roger Dingledine
4e9a701d4b
fix unit tests after r13092
...
svn:r13100
2008-01-10 23:11:13 +00:00
Nick Mathewson
b84955285a
r17564@catbus: nickm | 2008-01-10 13:19:59 -0500
...
Fix bug in r13094: be sure to set the purpose and send_unencrypted fields correctly in our own routerinfo and extrainfo.
svn:r13098
2008-01-10 18:20:04 +00:00
Nick Mathewson
10d86f7615
r17558@catbus: nickm | 2008-01-10 13:07:41 -0500
...
If we do not serve v2 directory info, and our cached v2 networkstatus files are very old, remove them. If the directory is old, remove that too. (We already did this for obsolete routers files.)
svn:r13096
2008-01-10 18:08:42 +00:00
Roger Dingledine
2ac1e36248
minor cleanups
...
svn:r13095
2008-01-10 17:54:24 +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
Nick Mathewson
29b0f51a73
r17553@catbus: nickm | 2008-01-10 12:18:27 -0500
...
Add connection_dir_is_encrypted() so that we can refrain from sending bridge descriptors over an unencrypted link.
svn:r13093
2008-01-10 17:48:36 +00:00
Nick Mathewson
59fdab43cd
r17552@catbus: nickm | 2008-01-10 12:13:43 -0500
...
Make bridge geoip data get rounded up, not down.
svn:r13092
2008-01-10 17:48:32 +00:00
Nick Mathewson
ca5f670fab
r17548@catbus: nickm | 2008-01-10 11:08:12 -0500
...
Make proposal-109 behavior optional.
svn:r13090
2008-01-10 16:08:47 +00:00
Roger Dingledine
a7eef34a03
Jan 08 19:55:01.865 [notice] Added -2 pending signatures while building consensus.
...
svn:r13080
2008-01-09 01:06:19 +00:00
Roger Dingledine
7d3bf1608b
Set up gabelmoo (run by Karsten Loesing) as the fifth v3 directory
...
authority.
svn:r13079
2008-01-08 23:51:48 +00:00
Roger Dingledine
8609c825e9
our defensive programming plan hid a bug. switch to offensive programming.
...
svn:r13078
2008-01-08 23:35:03 +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
Roger Dingledine
58d88dfc7f
make new v3 authorities that aren't in the DirServers list believe
...
in themselves again. bug experienced by karsten.
svn:r13076
2008-01-08 23:08:39 +00:00
Nick Mathewson
177d5102d5
r17503@catbus: nickm | 2008-01-07 14:15:30 -0500
...
Change set_current_consensus interface to take a flags variable. Do not try to fetch certificates until after we have tried loading the fallback consensus. Should fix bug 583.
svn:r13058
2008-01-07 19:15:34 +00:00
Nick Mathewson
a62ab48d30
r17500@catbus: nickm | 2008-01-07 13:54:51 -0500
...
More messing about with bug 557 issues: do not let bizarre settings for myfamily or contactinfo muck with generated router descriptors.
svn:r13057
2008-01-07 18:54:58 +00:00
Nick Mathewson
dd35fe59c4
r17499@catbus: nickm | 2008-01-07 13:39:46 -0500
...
Bugfix on fix for 557: Make values containing special characters work right with getconf, setconf, and saveconf. Document this in control-spec.txt
svn:r13056
2008-01-07 18:54:55 +00:00
Nick Mathewson
a63eb68fe1
r17495@catbus: nickm | 2008-01-07 12:48:56 -0500
...
Consequence of fix for 539: when a client gets a 503 response with a nontrivial body, pretend it got a 200 response. This lets clients use information erroneously sent to them by old buggy servers.
svn:r13054
2008-01-07 17:49:13 +00:00
Roger Dingledine
ea2280ada7
hack at networkstatus.c until we actually try to load our
...
fallback consensus. nick, can you take a closer look at this,
and add a changelog entry if it's a valid fix?
svn:r13050
2008-01-07 15:41:47 +00:00
Roger Dingledine
5a912aa1c8
cleanups on r13037
...
svn:r13045
2008-01-06 23:37:48 +00:00
Nick Mathewson
d73b791969
r17473@catbus: nickm | 2008-01-05 22:15:05 -0500
...
Add a reverse mapping from SSL to tor_tls_t*: we need this in order to do a couple of things the sensible way from inside callbacks. Also, add a couple of missing cases in connection_or.c
svn:r13040
2008-01-06 03:16:11 +00:00
Roger Dingledine
5aa7ce2915
patch from karsten to complain less when a node loses
...
its hsdir status
svn:r13037
2008-01-06 01:54:09 +00:00
Nick Mathewson
17036de8b7
r17469@catbus: nickm | 2008-01-05 20:14:07 -0500
...
Fix bug 579: Count DNSPort and hidden services when checking whether Tor is going to do anything. Change "no configured ports" from fatal to warning.
svn:r13036
2008-01-06 01:14:11 +00:00
Nick Mathewson
614dc52623
r17467@catbus: nickm | 2008-01-05 19:54:20 -0500
...
fix whitespace
svn:r13035
2008-01-06 00:54:22 +00:00
Nick Mathewson
58de695f90
r15787@tombo: nickm | 2008-01-02 01:59:07 -0500
...
Allow config values in quotes to contain special characters, with full C escape syntax. With tests. Addresses bug 557.
svn:r13021
2008-01-02 06:59:15 +00:00
Nick Mathewson
86f5180853
r15786@tombo: nickm | 2008-01-02 01:11:51 -0500
...
Push the strdups used for parsing configuration lines into parse_line_from_string(). This will make it easier to parse more complex value formats, which in turn will help fix bug 557
svn:r13020
2008-01-02 06:59:12 +00:00
Nick Mathewson
c0ec281565
r15784@tombo: nickm | 2008-01-02 00:38:06 -0500
...
Fix bug 575: protect the list of logs with a mutex. I couldn't find any appreciable change in logging performance on osx, but ymmv. You can undef USE_LOG_MUTEX to see if stuff gets faster for you.
svn:r13019
2008-01-02 05:38:53 +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
Nick Mathewson
48d7adca8a
r15768@tombo: nickm | 2007-12-31 16:12:09 -0500
...
Patch from Tup: make NS events work again.
svn:r13009
2007-12-31 21:12:16 +00:00
Nick Mathewson
46a27c2f93
r15750@tombo: nickm | 2007-12-29 19:12:51 -0500
...
Make HTTP-processing code in buffers.c faster: do not pull up 50K of text into the first chunk if the headers end earlier than that.
svn:r13006
2007-12-30 00:13:07 +00:00
Nick Mathewson
cd85eac0d3
r17433@catbus: nickm | 2007-12-29 12:35:57 -0500
...
Incomplete code to avoid doing needless pull-ups on HTTP. Also, use memstr instead of strstr to find the content-length header.
svn:r13005
2007-12-29 17:36:03 +00:00
Nick Mathewson
f4f5dc4aca
r15745@tombo: nickm | 2007-12-29 00:15:17 -0500
...
Try even harder not to allocate chunks bigger than MAX_CHUNK_ALLOC.
svn:r13003
2007-12-29 05:16:30 +00:00
Nick Mathewson
bd32982c77
r17426@catbus: nickm | 2007-12-28 21:12:29 -0500
...
Remove need for buf_pullup in fetch_line_from_buf().
svn:r13002
2007-12-29 02:33:42 +00:00
Nick Mathewson
d7f5a73173
r17410@catbus: nickm | 2007-12-27 09:20:27 -0500
...
Exciting new entries in buf_dump_freelist_sizes() to make sure our freelist sizes are reasonable.
svn:r12996
2007-12-27 14:20:30 +00:00
Nick Mathewson
1a2b6c2ae3
r17407@catbus: nickm | 2007-12-27 00:18:31 -0500
...
Fix windows compile error
svn:r12995
2007-12-27 05:18:36 +00:00
Nick Mathewson
119b4e1edf
r17405@catbus: nickm | 2007-12-26 22:27:37 -0500
...
And clean up an assertion failure.
svn:r12993
2007-12-27 03:27:48 +00:00
Nick Mathewson
148e2e1c48
r17403@catbus: nickm | 2007-12-26 22:23:50 -0500
...
Apparently loops work better when you actually increment/decrement the loop variable. Who knew?
svn:r12992
2007-12-27 03:23:57 +00:00
Nick Mathewson
1503021ee5
r15723@tombo: nickm | 2007-12-26 19:25:51 -0500
...
Actually trim freelists.
svn:r12991
2007-12-27 00:25:54 +00:00
Nick Mathewson
3a5bee150f
r15721@tombo: nickm | 2007-12-26 17:07:10 -0500
...
Fix a nasty infinite loop in flush_buf[_tls].
svn:r12990
2007-12-26 22:07:14 +00:00
Nick Mathewson
27220fb395
r15719@tombo: nickm | 2007-12-26 14:02:12 -0500
...
More tweaks on 0-byte TLS writes.
svn:r12989
2007-12-26 19:02:15 +00:00
Nick Mathewson
80151b42df
r15717@tombo: nickm | 2007-12-26 13:55:53 -0500
...
Oops. flush_buf_tls can request more than the requested number of bytes. When that happens, do not let the size_t sz wrap around.
svn:r12988
2007-12-26 18:55:56 +00:00
Nick Mathewson
84b6e26c50
r15715@tombo: nickm | 2007-12-26 13:09:27 -0500
...
Peacetime managed to run overnight in paranoia mode. Disabling paranoia, so that buffers.c can be a little speedy again.
svn:r12987
2007-12-26 18:09:36 +00:00
Nick Mathewson
fb8cbc8642
r15710@tombo: nickm | 2007-12-25 19:36:03 -0500
...
Fix in flush_buf_tls: it is okay to flush an empty buffer, since we may have a partial TLS record pending.
svn:r12984
2007-12-26 00:36:05 +00:00
Nick Mathewson
a7ef07b4bd
r15693@tombo: nickm | 2007-12-25 19:11:29 -0500
...
Here, have some terribly clever new buffer code. It uses a mbuf-like strategy rather than a ring buffer strategy, so it should require far far less extra memory to hold any given amount of data. Also, it avoids access patterns like x=malloc(1024);x=realloc(x,1048576);x=realloc(x,1024);append_to_freelist(x) that might have been contributing to memory fragmentation. I've tested it out a little on peacetime, and it seems to work so far. If you want to benchmark it for speed, make sure to remove the #define PARANOIA; #define NOINLINE macros at the head of the module.
svn:r12983
2007-12-26 00:12:08 +00:00
Roger Dingledine
c6788cc0de
The bridge GeoIP stats were counting other relays, for example
...
self-reachability and authority-reachability tests.
svn:r12960
2007-12-25 00:07:13 +00:00
Roger Dingledine
5925bc972c
tweaks
...
svn:r12959
2007-12-24 23:51:22 +00:00
Roger Dingledine
15c048bdc5
Fix several remotely triggerable asserts based on DirPort requests
...
for a v2 or v3 networkstatus object before we were prepared. This
was particularly bad for 0.2.0.13 and later bridge relays, who
would never have a v2 networkstatus and would thus always crash
when used. Bugfixes on 0.2.0.x.
Estimate the v3 networkstatus size more accurately, rather than
estimating it at zero bytes and giving it artificially high priority
compared to other directory requests. Bugfix on 0.2.0.x.
svn:r12952
2007-12-24 11:25:45 +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
Nick Mathewson
da06bfb80f
r15653@tombo: nickm | 2007-12-23 14:15:12 -0500
...
Refactor circuit_launch* functions to take a bitfield of flags rather than 4 separate nonconsecutive flags arguments. Also, note a possible but in circuit_find_to_cannibalize, which seems to be ignoring its purpose argument.
svn:r12948
2007-12-23 19:15:22 +00:00
Nick Mathewson
473725e1a4
r15648@tombo: nickm | 2007-12-23 13:27:30 -0500
...
Support building for iPhone; patch from cjacker huang.
svn:r12946
2007-12-23 18:27:47 +00:00
Roger Dingledine
c10faf5085
fix some irix compile complaints; make "kbytes" work as a memory unit
...
svn:r12936
2007-12-23 04:22:55 +00:00
Roger Dingledine
9dcde682f5
minor other things in my sandbox
...
svn:r12934
2007-12-23 01:28:25 +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
fe006ad880
and clean up after myself
...
svn:r12930
2007-12-22 11:54:33 +00:00
Roger Dingledine
88503e25c7
If bridge authorities set BridgePassword, they will serve a
...
snapshot of known bridge routerstatuses from their DirPort to
anybody who knows that password. Unset by default.
svn:r12929
2007-12-22 11:48:17 +00:00
Roger Dingledine
87a616e128
Fix a crash on startup if you install Tor 0.2.0.13-alpha fresh
...
without a datadirectory from a previous Tor install. Reported
by Zax.
svn:r12928
2007-12-22 11:42:12 +00:00
Roger Dingledine
abf9fadcca
start working on serving bridge status from the dirport, for
...
bridge communities.
svn:r12927
2007-12-22 10:54:21 +00:00
Roger Dingledine
ce636beff9
If the user sets RelayBandwidthRate but doesn't set
...
RelayBandwidthBurst, then make them equal rather than erroring out.
svn:r12925
2007-12-22 09:13:24 +00:00
Roger Dingledine
be906a836a
If BridgeRelay is set to 1, then the default for
...
PublishServerDescriptor is now "bridge" rather than "v2,v3".
svn:r12923
2007-12-22 09:04:46 +00:00
Roger Dingledine
39d910e97b
Make PublishServerDescriptor default to 1, so the default doesn't
...
have to change as we invent new directory protocol versions.
svn:r12922
2007-12-22 08:27:42 +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
366c273d27
Make "GETINFO/desc-annotations/id/<OR digest>" actually work.
...
svn:r12919
2007-12-22 05:27:30 +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
a223f5db03
Fix a crash when accessing hidden services: it would work the first
...
time you use a given introduction point for your service, but
on subsequent requests we'd be using garbage memory. Fixed by
Karsten Loesing. Bugfix on 0.2.0.12-alpha.
svn:r12913
2007-12-21 23:28:23 +00:00
Roger Dingledine
73ff2e5d5e
Fix a crash when we fetch a descriptor that turns out to be
...
unexpected (it used to be in our networkstatus when we started
fetching it, but it isn't in our current networkstatus), and we
aren't using bridges. Bugfix on 0.2.0.x.
svn:r12911
2007-12-21 22:58:22 +00:00
Roger Dingledine
c1af7de6e4
the better fix for the unit tests
...
svn:r12907
2007-12-21 10:44:10 +00:00
Roger Dingledine
46bb4a40ee
Make the unit tests build again.
...
svn:r12905
2007-12-21 10:40:40 +00:00
Roger Dingledine
3f4080d15d
tiny tweaks on r12900
...
svn:r12901
2007-12-21 09:33:11 +00:00
Roger Dingledine
90fcfade4e
revert r12841 and r12842, and commit karsten's "patch 13"
...
svn:r12900
2007-12-21 09:28:22 +00:00
Roger Dingledine
7b60d6c526
Directory authorities should only automatically download Extra Info
...
documents if they're v1, v2, or v3 authorities.
svn:r12898
2007-12-21 06:33:02 +00:00
Roger Dingledine
e2dc45a2e1
some more refactoring
...
svn:r12897
2007-12-21 06:28:59 +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
Roger Dingledine
f0e7c4f0da
Only Tors that want to mirror the v2 directory info should
...
create the "cached-status" directory in their datadir. All Tors
used to create it. Bugfix on 0.1.2.x.
Bridge relays with DirPort set to 0 no longer cache v1 or v2
directory information; there's no point. Bugfix on trunk.
svn:r12887
2007-12-20 06:47:59 +00:00
Roger Dingledine
acd8bc1fd9
make r12871 do what i meant
...
svn:r12886
2007-12-20 06:36:44 +00:00
Nick Mathewson
2f922937d3
r17274@catbus: nickm | 2007-12-20 01:14:09 -0500
...
Don't try to create the datadir when we are only verifying the configuration or hashing a password. Resolves bug 540.
svn:r12884
2007-12-20 06:15:09 +00:00
Nick Mathewson
6de2b484cf
r17270@catbus: nickm | 2007-12-20 00:04:21 -0500
...
When we decide to send a 503 in response to a request for server descriptors, disable spooling so that we do not then send the descriptors anyway. Fixes bug 539.
svn:r12882
2007-12-20 05:06:02 +00:00
Nick Mathewson
5c33c0632e
r17268@catbus: nickm | 2007-12-19 23:53:53 -0500
...
Initialize [un]named_server_map to empty strmaps when router_reload_consensus_networkstatus fails completely. Resolves bug 538.
svn:r12881
2007-12-20 04:54:06 +00:00
Roger Dingledine
4aa5e678cd
and the obligatory 'make it compile' follow-up
...
svn:r12872
2007-12-19 05:04:05 +00:00
Roger Dingledine
f405f9b614
Make getinfo ns/purpose/bridge actually work
...
Also, dump our bridge router status entries to disk every 30 minutes.
svn:r12871
2007-12-19 04:58:58 +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
Nick Mathewson
076097281d
r17239@catbus: nickm | 2007-12-18 16:57:02 -0500
...
Sort GeoIP results in descending order of IP counts.
svn:r12863
2007-12-18 23:45:19 +00:00
Roger Dingledine
74d05f4b2c
answer getinfo ns/purpose/bridge queries
...
svn:r12860
2007-12-18 22:39:15 +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
Nick Mathewson
d2fe8542df
r17232@catbus: nickm | 2007-12-18 16:22:10 -0500
...
Whitespace fix.
svn:r12857
2007-12-18 21:27:10 +00:00
Nick Mathewson
5488bc3e16
r17231@catbus: nickm | 2007-12-18 16:21:55 -0500
...
Document and clean-up geoip code; give it some unit tests.
svn:r12856
2007-12-18 21:27:08 +00:00
Nick Mathewson
b8ac050e85
r15532@tombo: nickm | 2007-12-17 17:41:05 -0500
...
clean up whitesapce and debug a little on geoip stuff.
svn:r12847
2007-12-17 22:44:18 +00:00
Nick Mathewson
25f78498f9
r15531@tombo: nickm | 2007-12-17 17:19:24 -0500
...
Support raw IP-to-country as well as postprocessed format. Include GEOIP summary in extrainfo of bridges.
svn:r12846
2007-12-17 22:44:16 +00:00
Nick Mathewson
820159cac5
r15530@tombo: nickm | 2007-12-17 16:54:03 -0500
...
First wodge of geoip code so bridges can figure out which countries are blocking them.
svn:r12845
2007-12-17 22:44:11 +00:00
Roger Dingledine
b3e6c66a05
and another in the unit tests
...
svn:r12842
2007-12-16 20:47:20 +00:00
Roger Dingledine
e70d9a7f4d
fix another mem leak, and point out another for karsten
...
svn:r12841
2007-12-16 20:46:23 +00:00
Roger Dingledine
98a56a386d
our unit tests leak memory like a sieve.
...
fix two actual memory leaks found while cleaning up a bit.
svn:r12829
2007-12-16 08:20:10 +00:00
Roger Dingledine
71c84abdff
cleanups on r12825
...
svn:r12826
2007-12-15 20:50:56 +00:00
Roger Dingledine
31324f3e7f
apply karsten's "patch 12"
...
svn:r12825
2007-12-15 20:28:09 +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
40efd7d47b
but don't disable all the default v1 authorities quite yet
...
svn:r12778
2007-12-12 04:46:16 +00:00
Roger Dingledine
3b2dd8d763
Three new config options (AlternateDirAuthority,
...
AlternateBridgeAuthority, and AlternateHSAuthority) that let the
user selectively replace the default directory authorities, rather
than the all-or-nothing replacement that DirServer offers.
svn:r12777
2007-12-12 04:38:54 +00:00
Nick Mathewson
3208b102d6
r17089@catbus: nickm | 2007-12-11 17:33:34 -0500
...
Patch from mwenge: fix consensus status lookup by nickname when nickname is a hexdigest.
svn:r12766
2007-12-11 23:06:45 +00:00
Roger Dingledine
78f532678c
Relays were publishing their server descriptor to v1 and v2
...
directory authorities, but they didn't try publishing to v3-only
authorities. Fix this; and also stop publishing to v1 authorities.
svn:r12759
2007-12-11 20:18:12 +00:00
Roger Dingledine
52363d23d7
If we can't expand our list of entry guards (e.g. because we're
...
using bridges or we have StrictEntryNodes set), don't mark relays
down when they fail a directory request. Otherwise we're too quick
to mark all our entry points down.
svn:r12755
2007-12-10 17:16:41 +00:00
Roger Dingledine
ee6ae92670
New config options AuthDirBadDir and AuthDirListBadDirs for
...
authorities to mark certain relays as "bad directories" in the
networkstatus documents. Also supports the "!baddir" directive in
the approved-routers file.
svn:r12754
2007-12-10 16:49:54 +00:00
Roger Dingledine
d95e7c7d67
also clear the hsdir status flag in routerinfo_t when the relay is no
...
longer listed in the relevant networkstatus document.
svn:r12752
2007-12-10 16:40:14 +00:00
Roger Dingledine
25a444b698
emo teh
...
svn:r12747
2007-12-09 19:11:22 +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
6dfd47467e
Allow multiple HashedControlPassword config lines, to support
...
multiple controller passwords.
svn:r12732
2007-12-09 04:59:27 +00:00
Roger Dingledine
9b162ef430
only clear the bridge list if options->Bridges is set.
...
this doesn't matter yet so we aren't adding them in other
ways yet.
svn:r12730
2007-12-09 03:38:57 +00:00
Roger Dingledine
ae1aa5a1bb
Set up lefkada (run by Geoff Goodell) as the fourth v3 directory
...
authority.
svn:r12724
2007-12-08 20:16:34 +00:00
Roger Dingledine
2b8ca7b4a4
patch from karsten to clean up documentation and to integrate
...
more fixes into rend-spec.txt.
svn:r12715
2007-12-07 21:27:58 +00:00
Nick Mathewson
2e378295d6
r16997@catbus: nickm | 2007-12-06 18:56:33 -0500
...
Make http://torproject urls into https://torproject urls. Patch from steve.
svn:r12708
2007-12-06 23:56:36 +00:00
Nick Mathewson
92372b156a
r16995@catbus: nickm | 2007-12-06 18:42:53 -0500
...
patch from steve: replace more tor.eff.org instances with torproject.org
svn:r12707
2007-12-06 23:42:59 +00:00
Roger Dingledine
75c38a2c88
Bridges now behave like clients with respect to time intervals for
...
downloading new consensus documents. Bridge users now wait until
the end of the interval, so their bridge will be sure to have a
new consensus document.
svn:r12696
2007-12-06 17:01:16 +00:00
Roger Dingledine
b277954501
put a note so the distant future developers can simplify tor
...
svn:r12691
2007-12-06 11:19:00 +00:00
Roger Dingledine
a107a1624b
extra points if it compiles
...
svn:r12688
2007-12-06 07:17:05 +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
3ff63b6f4e
When the DANGEROUS_VERSION controller status event told us we're
...
running an obsolete version, it used the string "OLD" to describe
it. Yet the "getinfo" interface used the string "OBSOLETE". Now use
"OBSOLETE" in both cases.
svn:r12686
2007-12-05 19:32:58 +00:00
Roger Dingledine
343242d9ae
update an XXX020 for nick later
...
svn:r12684
2007-12-05 19:23:03 +00:00
Nick Mathewson
29045d21b3
r15155@tombo: nickm | 2007-12-05 11:11:14 -0500
...
Add a missing "not" to check of whether to use revised handshake.
svn:r12678
2007-12-05 16:11:33 +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
0000c7e6e9
weasel wanted us to log the source of v3 votes we don't like
...
svn:r12665
2007-12-04 15:54:14 +00:00
Nick Mathewson
593ab7e808
r15106@tombo: nickm | 2007-12-04 00:08:35 -0500
...
Change tor_addr_t to be a tagged union of in_addr and in6_addr, not of sockaddr_in and sockaddr_in6. It's hardly used in the main code as it is, but let's get it right before it gets popular.
svn:r12660
2007-12-04 05:19:56 +00:00
Roger Dingledine
ce2cf88ebf
Stop thinking that 0.1.2.x directory servers can handle "begin_dir"
...
requests. Should ease bugs 406 and 419 where 0.1.2.x relays are
crashing or mis-answering these requests.
svn:r12658
2007-12-03 22:31:59 +00:00
Roger Dingledine
3229117d3a
minor touchups
...
svn:r12657
2007-12-03 22:04:19 +00:00
Roger Dingledine
07dbaaac16
We were ignoring our RelayBandwidthRate for the first 30 seconds
...
after opening a circuit -- even relayed circuits. Bugfix on
0.2.0.3-alpha.
svn:r12638
2007-12-02 11:24:06 +00:00
Roger Dingledine
b54240d38f
Reject uploaded descriptors and extrainfo documents if they're
...
huge. Otherwise we'll cache them all over the network and it'll
clog everything up.
svn:r12633
2007-12-02 06:11:53 +00:00
Roger Dingledine
1a254477fc
minor cleanups
...
svn:r12631
2007-12-02 04:39:56 +00:00
Roger Dingledine
f901cd064c
clean up the dirserv_add_multiple_descriptors() api
...
svn:r12630
2007-12-02 02:47:42 +00:00
Roger Dingledine
9b1b8199df
backport candidate:
...
Start purging old entries from the "rephist" database, and the
hidden service descriptor databases, even when DirPort is zero.
svn:r12628
2007-12-01 22:38:58 +00:00
Roger Dingledine
77e607cc0d
Authorities and caches fetch the v2 networkstatus documents
...
less often, now that v3 is encouraged.
svn:r12627
2007-12-01 20:04:36 +00:00
Roger Dingledine
c26c54836f
download the (admittedly tiny) v1 dir blobs even less often.
...
we can't make them totally obsolete yet but we can get closer.
svn:r12626
2007-12-01 20:02:05 +00:00
Nick Mathewson
4a6d969139
r15094@tombo: nickm | 2007-12-01 03:46:07 -0500
...
server-side code (for when v2 negotiation occurred) to check for renegotiation and adjust client ID info accordingly. server-side of new TLS code is now implemented, but needs testing and debugging.
svn:r12624
2007-12-01 08:47:13 +00:00
Nick Mathewson
d8ad247dfd
r15088@tombo: nickm | 2007-11-30 23:47:29 -0500
...
Add support to get a callback invoked when the client renegotiate a connection. Also, make clients renegotiate. (not enabled yet, until they detect that the server acted like a v2 server)
svn:r12623
2007-12-01 08:09:48 +00:00
Nick Mathewson
1789f94668
r15087@tombo: nickm | 2007-11-30 22:32:26 -0500
...
Start getting freaky with openssl callbacks in tortls.c: detect client ciphers, and if the list doesn't look like the list current Tors use, present only a single cert do not ask for a client cert. Also, support for client-side renegotiation. None of this is enabled unless you define V2_HANDSHAKE_SERVER.
svn:r12622
2007-12-01 08:09:46 +00:00
Roger Dingledine
f8df8d791e
start to refactor dirserver_mode()
...
svn:r12621
2007-12-01 04:58:53 +00:00
Roger Dingledine
6d49465b69
fix two trivial potential onionkey leaks. neither of these
...
should happen in practice. but now they really won't.
svn:r12620
2007-12-01 04:40:12 +00:00
Roger Dingledine
c1b4bfdeac
karsten's bugfix on r12607
...
svn:r12619
2007-11-30 23:45:16 +00:00
Roger Dingledine
30e1a862e7
r12617 broke the compile
...
svn:r12618
2007-11-30 23:32:25 +00:00
Nick Mathewson
f061994487
r16881@catbus: nickm | 2007-11-30 15:07:42 -0500
...
Do not keep a string representation of every single addr_policy_t lying around. This might save a few hundred K.
svn:r12617
2007-11-30 20:09:09 +00:00
Roger Dingledine
ad0fcef576
other trivial tweaks
...
svn:r12614
2007-11-30 18:53:14 +00:00
Roger Dingledine
fea55c7c2d
two pieces of r12607 for karsten to look at closer
...
svn:r12609
2007-11-29 15:37:17 +00:00
Roger Dingledine
8ac5f24c33
easy tweaks on r12607
...
svn:r12608
2007-11-29 15:30:32 +00:00
Roger Dingledine
aaf35cccf7
karsten's second refactoring patch
...
svn:r12607
2007-11-29 15:25:04 +00:00
Roger Dingledine
0f22c584cd
doxygen tweaks
...
svn:r12606
2007-11-29 15:23:41 +00:00
Roger Dingledine
7f12ebc3fa
cleanups on r12579
...
svn:r12580
2007-11-27 21:17:43 +00:00
Roger Dingledine
466abecef4
Our new v2 hidden service descriptor format allows descriptors
...
that have no introduction points. But Tor crashed when we tried
to build a descriptor with no intro points (and it would have
crashed if we had tried to parse one). Bugfix on 0.2.0.x; patch
by Karsten Loesing.
svn:r12579
2007-11-27 21:06:34 +00:00
Roger Dingledine
b02e154470
minor cleanups
...
svn:r12571
2007-11-26 06:26:17 +00:00
Roger Dingledine
91bb09cb28
Only update guard status (usable / not usable) once we have
...
enough directory information. This was causing us to always pick
two new guards on startup (bugfix on 0.2.0.9-alpha), and it was
causing us to discard all our guards on startup if we hadn't been
running for a few weeks (bugfix on 0.1.2.x). Fixes bug 448.
svn:r12570
2007-11-26 02:18:57 +00:00
Roger Dingledine
2e40510f02
if we think our ip address just changed, log what we thought it
...
changed *to*.
svn:r12551
2007-11-22 01:38:54 +00:00
Roger Dingledine
aaefad64a1
stop lying in the config file comment we write out regarding
...
PublishServerDescriptor.
svn:r12550
2007-11-22 00:44:08 +00:00
Roger Dingledine
a54ce34e35
Don't crash if we get an unexpected value for the
...
PublishServerDescriptor config option. Reported by Matt Edman;
bugfix on 0.2.0.9-alpha.
svn:r12549
2007-11-22 00:43:22 +00:00
Roger Dingledine
094096d320
get rid of the __ConsiderAllRoutersAsHidServDirectories config option
...
svn:r12528
2007-11-17 12:28:18 +00:00
Roger Dingledine
d62ef13d0a
get rid of the separate reachability window for the hsdir flag.
...
svn:r12527
2007-11-17 12:15:32 +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
c336dedd21
The fix in 0.2.0.12-alpha cleared the "hsdir" flag in v3 network
...
consensus documents when there are too many relays at a single
IP address. Now clear it in v2 network status documents too.
svn:r12522
2007-11-17 07:00:14 +00:00
Roger Dingledine
6514843026
cleanups, bump to 0.2.0.12-alpha
...
svn:r12516
2007-11-17 02:22:56 +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
d09439872d
If we're using bridges or have strictentrynodes set, and our
...
chosen exit is in the same family as all our bridges/entry guards,
then be flexible about families.
svn:r12514
2007-11-16 07:37:49 +00:00
Roger Dingledine
b669fb7344
i'm a little teapot, ...
...
svn:r12513
2007-11-16 07:33:57 +00:00
Roger Dingledine
0871e02da8
If we're trying to fetch a bridge descriptor and there's no way
...
the bridge authority could help us (for example, we don't know
a digest, or there is no bridge authority), don't be so eager to
fall back to asking the bridge authority.
svn:r12512
2007-11-16 07:31:51 +00:00