Nick Mathewson
295e6557a9
Merge remote branch 'sebastian/coverity'
2010-02-22 12:46:43 -05:00
Nick Mathewson
d35b8dc582
Make expand_filename into a tor_strdup() alias on windows.
...
On Windows, we don't have a notion of ~ meaning "our homedir", so we
were deliberately using an #ifdef to avoid calling expand_filename()
in multiple places. This is silly: The right place to turn a function
into a no-op on a single platform is in the function itself, not in
every single call-site.
2010-02-22 12:42:31 -05:00
Sebastian Hahn
1dfbec482c
Remove some redundant code in options_save_current()
...
get_torrc_fname() does the same thing we did in this code, so let's
replace it.
2010-02-22 12:21:58 +01:00
Sebastian Hahn
b65ad83ebe
Break early on unknown extendcircuit purpose
...
Don't continue handling EXTENDCIRCUIT messages when we get an
unknown purpose.
2010-02-22 10:57:11 +01:00
Sebastian Hahn
dcf85eb158
Fix a memory leak, found by coverity
2010-02-22 10:56:54 +01:00
Sebastian Hahn
e391a497ec
Remove some redundand code in control.c
...
Found by coverity
2010-02-22 10:41:46 +01:00
Sebastian Hahn
5aa9610dd6
network-status-version must come first in a vote/consensus
...
Spec conformance issue: The code didn't force the network-status-version
token to be the first token in a v3 vote or consensus.
Problem discovered by Parakeep.
2010-02-22 09:16:26 +01:00
Nick Mathewson
0eb03bc6dd
Merge remote branch 'public/cbt-status'
...
Conflicts:
ChangeLog
2010-02-20 18:35:19 -05:00
Nick Mathewson
391f75d792
Merge remote branch 'sebastian/bug1143'
2010-02-19 16:58:24 -05:00
Sebastian Hahn
408a828b1f
Make the DNSPort option work with libevent 2.x
...
We need to use evdns_add_server_port_with_base() when configuring
our DNS listener, because libevent segfaults otherwise. Add a macro
in compat_libevent.h to pick the correct implementation depending
on the libevent version.
Fixes bug 1143, found by SwissTorExit
2010-02-19 22:36:53 +01:00
Nick Mathewson
061ffbd7d5
Future-proof the control protocol by ignoring unrecognized keyword args
2010-02-18 12:49:48 -05:00
Nick Mathewson
2d95e02914
Make more arguments in control.c properly case-insensitive.
2010-02-18 12:49:26 -05:00
Mike Perry
2b95d1c0ee
Describe the recent timeouts reallocation behavior.
2010-02-18 09:08:32 -08:00
Mike Perry
2258125e1a
Move CBT params into consensus.
2010-02-18 09:08:31 -08:00
Mike Perry
f459388c29
Add an event for a case where we drop guards.
...
Also add a comment about an odd CBT timeout edgecase.
2010-02-18 09:08:31 -08:00
Mike Perry
ac68704f07
Allow "EXTENDCIRCUIT 0" to omit a path.
2010-02-18 09:08:31 -08:00
Mike Perry
8512e33773
Add BUILDTIMEOUT_SET event for CBT stress testing.
2010-02-18 09:08:31 -08:00
Nick Mathewson
715f104eeb
Merge remote branch 'origin/maint-0.2.1'
...
Conflicts:
ChangeLog
configure.in
contrib/tor-mingw.nsi.in
src/win32/orconfig.h
2010-02-18 12:01:56 -05:00
Nick Mathewson
4e082ec84b
Build correctly with Libevent 2.0.4-alpha and later
2010-02-15 16:47:47 -05:00
Roger Dingledine
3e6a37e61e
new dannenberg address; make moria2's demise official.
2010-02-12 14:31:08 -05:00
Sebastian Hahn
fe18275563
Add Windows version detection for Vista and 7
...
Vista is Windows 6.0, and 7 is Windows 6.1. Fixes bug 1097.
Also fix a coding style violation.
2010-02-10 08:40:44 +01:00
Nick Mathewson
a6a1b8b815
Merge remote branch 'origin/maint-0.2.1'
2010-02-09 12:58:25 -05:00
Nick Mathewson
a4065cd832
Merge remote branch 'sebastian/bug925'
2010-02-09 12:50:54 -05:00
Nick Mathewson
6dd71d314d
Merge remote branch 'sebastian/bug1238'
2010-02-09 12:50:45 -05:00
Nick Mathewson
c0d682686a
Make tor_addr_copy() conform to memcpy requirements
...
The src and dest of a memcpy() call aren't supposed to overlap,
but we were sometimes calling tor_addr_copy() as a no-op.
Also, tor_addr_assign was a redundant copy of tor_addr_copy(); this patch
removes it.
2010-02-09 12:32:10 -05:00
Sebastian Hahn
253fd21ae1
Fix a whitespace violation
2010-02-09 09:10:07 +01:00
Sebastian Hahn
1e49c908f7
Speed up the execution of exit_policy_is_general_exit_helper()
...
It isn't necessary to walk through all possible subnets when the policy
we're looking at doesn't touch that subnet.
2010-02-09 09:10:07 +01:00
Sebastian Hahn
20422cde2b
0/8 doesn't count as a /8 subnet towards an Exit flag
2010-02-08 16:46:22 +01:00
Sebastian Hahn
b2b99a70c0
Don't spam controllers with TOO_MANY_CONNECTIONS events
...
We implemented ratelimiting for warnings going into the logfile, but didn't
rate-limit controller events. Now both log warnings and controller events
are rate-limited.
2010-02-08 16:45:36 +01:00
Sebastian Hahn
a168cd2a54
Don't use gethostbyname() in resolve_my_address()
...
Tor has tor_lookup_hostname(), which prefers ipv4 addresses automatically.
Bug 1244 occured because gethostbyname() returned an ipv6 address, which
Tor cannot handle currently. Fixes bug 1244; bugfix on 0.0.2pre25.
Reported by Mike Mestnik.
2010-02-08 15:49:54 +01:00
Nick Mathewson
080e8f50f8
Merge commit 'origin/maint-0.2.1'
2010-02-07 22:34:08 -05:00
Sebastian Hahn
dfee173289
lookup_last_hid_serv_request() could overflow and leak memory
...
The problem was that we didn't allocate enough memory on 32-bit
platforms with 64-bit time_t. The memory leak occured every time
we fetched a hidden service descriptor we've fetched before.
2010-02-07 06:37:35 +01:00
Sebastian Hahn
25ec240cc3
Call exit_policy_is_general_exit less
...
When calculating the is_exit flag for a routerinfo_t, we don't need
to call exit_policy_is_general_exit() if router_exit_policy_rejects_all()
tells us it definitely is an exit. This check is much cheaper than
running exit_policy_is_general_exit().
2010-02-04 00:06:56 +01:00
Nick Mathewson
7d5d4f9f03
When we've disabled .exit hostnames, actually reject them.
...
Previously we were treating them as decent hostnames and sending them
to the exit, which is completely wrong.
2010-02-03 15:59:15 -05:00
Nick Mathewson
ba0c9e5d03
Trivial doc fix for exit_policy_is_general_exit_helper
...
The original comment said what it did if there was at least one /8 that
allowed access to the port, but not what it did otherwise.
2010-02-03 00:12:31 -05:00
Sebastian Hahn
03bd98b3b1
Don't assign Exit flag incorrectly
...
exit_policy_is_general_exit() assumed that there are no redundancies
in the passed policy, in the sense that we actively combine entries
in the policy to really get rid of any redundancy. Since we cannot
do that without massively rewriting the policy lines the relay
operators set, fix exit_policy_is_general_exit().
Fixes bug 1238, discovered by Martin Kowalczyk.
2010-02-03 05:44:00 +01:00
Sebastian Hahn
02889bae21
Fix comments for getinfo_helper_t
...
rieo pointed out something isn't right here
2010-01-27 22:12:43 +01:00
Karsten Loesing
7e65871ccc
Fix a memory corruption bug while collecting bridge stats
...
We accidentally freed the internal buffer for bridge stats when we
were writing the bridge stats file or honoring a control port
request for said data. Change the interfaces for
geoip_get_bridge_stats* to prevent these problems, and remove the
offending free/add a tor_strdup.
Fixes bug 1208.
2010-01-26 11:55:43 +01:00
Nick Mathewson
2d3f21e9ee
Merge commit 'sebastian/quiet'
2010-01-25 14:39:20 -05:00
Nick Mathewson
2590d733f4
Try to untangle the logic in server_port_flush
...
It's a bit confusing to have a loop where another function,
confusingly named "*_free", is responsible for advancing the loop
variable (or rather, for altering a structure so that the next time
the loop variable's initializer is evaluated it evaluates to something
different.)
Not only has this confused people: it's also confused coverity scan.
Let's fix that.
2010-01-25 14:09:58 -05:00
Sebastian Hahn
7e89cc31ab
Be quieter about failing to decode authority digests
...
This was freaking out some relay operators without good reason, as
it is nothing the relay operator can do anything about anyways.
Quieting this warning suggested by rieo.
2010-01-25 18:05:20 +01:00
Nick Mathewson
a93cabd9ab
Since dump_microdescriptor() can return -1; make its type ssize_t
2010-01-24 16:24:47 -05:00
Peter Palfrader
256861023e
Handle errors reported by fwrite() in dump_microdescriptor()
...
Does not deal with error handling in dump_microdescriptor's callers.
2010-01-24 15:05:20 -05:00
Nick Mathewson
0552deb613
Merge commit 'origin/maint-0.2.1'
...
Resolved conflicts in:
configure.in
src/or/Makefile.am
src/tools/Makefile.am
2010-01-24 15:03:45 -05:00
Nick Mathewson
b6038f4ac6
Add --enable-static-(openssl|libevent) options
...
These options only work when using --with-(openssl|libevent)-dir to
explicitly pick a libevent or openssl location.
2010-01-24 14:34:47 -05:00
Nick Mathewson
3b4b6009a0
Merge remote branch 'origin/maint-0.2.1'
2010-01-23 20:46:57 -05:00
Nick Mathewson
aec4aea190
Fix two rare leaks spotted by rieo.
2010-01-23 20:46:38 -05:00
Nick Mathewson
d4354b506b
Don't use OutboundBindAddress to connect to localhost
...
The OutboundBindAddress option is useful for making sure that all of
your outbond connections use a given interface. But when connecting
to 127.0.0.1 (or ::1 even) it's important to actually have the
connection come _from_ localhost, since lots of programs running on
localhost use the source address to authenticate that the connection
is really coming from the same host.
Our old code always bound to OutboundBindAddress, whether connecting
to localhost or not. This would potentially break DNS servers on
localhost, and socks proxies on localhost. This patch changes the
behavior so that we only look at OutboundBindAddress when connecting
to a non-loopback address.
2010-01-20 13:09:10 -05:00
Roger Dingledine
8d84b4bfa1
Merge branch 'maint-0.2.1'
...
Conflicts:
ChangeLog
2010-01-19 17:54:41 -05:00
Roger Dingledine
1fc94bfd0e
spread guard rotation out throughout the month
2010-01-19 17:52:52 -05:00
Roger Dingledine
0642ab2428
weight guard choice by bandwidth; discard old guards
2010-01-19 17:30:52 -05:00
Roger Dingledine
37ca182c7e
Merge branch 'maint-0.2.1' into master
...
Conflicts:
ChangeLog
configure.in
contrib/tor-mingw.nsi.in
src/win32/orconfig.h
2010-01-19 14:51:39 -05:00
Roger Dingledine
708f47ecc9
downgrade a warning
...
this case can now legitimately happen, if you have a cached v2 status
from moria1, and you run with the new list of dirservers that's missing
the old moria1. it's nothing to worry about; the file will die off in
a month or two.
2010-01-19 14:25:15 -05:00
Roger Dingledine
adae600715
rotate keys for moria1 and gabelmoo
2010-01-19 14:12:39 -05:00
Sebastian Hahn
c32e8c292e
Log a notice when we get a new control connection
2010-01-18 19:14:36 -05:00
Roger Dingledine
79eaeef1cd
stop bridge authorities from leaking their bridge list
2010-01-17 19:41:22 -05:00
Roger Dingledine
b9f1bd3c4e
whitespace fixes
2010-01-15 15:58:35 -05:00
Roger Dingledine
f1d74f611d
fix an impossible-to-actually-trigger overflow in descriptor generation
2010-01-15 15:56:54 -05:00
Roger Dingledine
0450813227
resolve path weighting edge case; fixes bug 1203
2010-01-15 15:56:54 -05:00
Roger Dingledine
50e8210943
trivial cleanups
2010-01-15 15:56:54 -05:00
Roger Dingledine
f22c063067
remove redundant validate_addr_policies() checks
2010-01-15 15:56:53 -05:00
Roger Dingledine
fd5eb23c29
don't warn if stats/bridge-stats is missing
...
if we try to read it to publish stats and it's not there,
that means there are no stats to publish.
reported by swisstorexit.
2010-01-15 15:56:53 -05:00
Roger Dingledine
8cba62cc2a
don't div by 0 during path selection
2010-01-02 13:13:30 -05:00
Roger Dingledine
485fa5c425
when loading bridge stats, mkdir $datadir/stats first
2010-01-02 09:28:19 -05:00
Roger Dingledine
4d71d43772
add config options to override.
...
somebody should add man page entries.
2009-12-29 23:13:03 -05:00
Roger Dingledine
f255272f45
add separate per-conn write limiting
2009-12-29 22:25:02 -05:00
Sebastian Hahn
9a07f30b90
Authorities now support conditional consensuses
...
Mark them this way in add_trusted_dir_server
2009-12-25 16:35:47 +01:00
Sebastian Hahn
51c00dbdec
Remove some old, commented out code
2009-12-25 16:35:47 +01:00
Sebastian Hahn
9f1618b518
Remove online config descriptions.
...
They weren't in sync with reality nor manpage, and only useful to a human
who could simply have checked the manpage.
2009-12-25 16:35:47 +01:00
Sebastian Hahn
03da1af9ca
Fix a typo
2009-12-25 16:33:56 +01:00
Roger Dingledine
2ef988c065
New consensus params "bwconnrate" and "bwconnburst"
...
...to let us
rate-limit client connections as they enter the network. It's
controlled in the consensus so we can turn it on and off for
experiments. It's starting out off. Based on proposal 163.
2009-12-23 04:56:24 -05:00
Roger Dingledine
7d832cc988
make the os x tiger compiler shut up
...
it's wrong, but that's our problem not its problem
2009-12-21 04:58:03 -05:00
Roger Dingledine
937607056b
a changelog and doc fixes for the strictnodes work
2009-12-21 04:38:49 -05:00
Roger Dingledine
22e07b4ead
fix compile
2009-12-21 03:52:34 -05:00
Roger Dingledine
2138b05f17
Use nodes in ExitNodes even if they're not fast/stable
2009-12-21 03:52:33 -05:00
Roger Dingledine
cc73bc3853
Use nodes in EntryNodes even if they're not fast/stable
2009-12-21 03:52:33 -05:00
Roger Dingledine
7346804ec6
instrument entry_is_live to tell why our guard isn't live
2009-12-21 03:52:33 -05:00
Roger Dingledine
ef81649d2f
Be more willing to use an unsuitable circuit for exit.
...
Specifically, there are two cases: a) are we willing to start a new
circuit at a node not in your ExitNodes config option, and b) are we
willing to make use of a circuit that's already established but has an
unsuitable exit.
Now we discard all your circuits when you set ExitNodes, so the only
way you could end up with an exit circuit that ends at an unsuitable
place is if we explicitly ran out of exit nodes, StrictNodes was 0,
and we built this circuit to solve a stream that needs solving.
Fixes bug in dc322931
, which would ignore the just-built circuit because
it has an unsuitable exit.
2009-12-21 03:52:32 -05:00
Roger Dingledine
c75a2eea60
Abandon circs if the user changes Exclude*Nodes
...
If ExcludeNodes or ExcludeExitNodes changes on a config reload,
mark and discard all our origin circuits.
2009-12-21 03:52:32 -05:00
Roger Dingledine
f2c51cb998
comments and cleanups, no actual changes
2009-12-21 03:52:32 -05:00
Roger Dingledine
1a65bdd232
Make EntryNodes config option much more aggressive.
...
Before it would prepend your requested entrynodes to your list of guard
nodes, but feel free to use others after that. Now it chooses only
from your EntryNodes if any of those are available, and only falls back
to others if a) they're all down and b) StrictNodes is not set.
Also, now we refresh your entry guards from EntryNode at each consensus
fetch (rather than just at startup and then they slowly rot as the
network changes).
The goal here is to make users less likely to set StrictNodes, since
it's doing closer to what they expect it should be doing.
2009-12-21 03:52:31 -05:00
Roger Dingledine
580066f2f6
Switch to a StrictNodes config option.
...
This is step one of handling ExcludedNodes better. This first
step is just to make EntryNodes and ExitNodes do what they did
before.
2009-12-21 03:52:31 -05:00
Roger Dingledine
5fee54a50f
fix some typos
2009-12-19 05:12:00 -05:00
Nick Mathewson
05a2473b7f
Merge branch 'ewma'
2009-12-18 22:33:02 -05:00
Nick Mathewson
7edae58984
Merge commit 'karsten/fix-bridge-stats-master-4'
2009-12-18 14:16:41 -05:00
Karsten Loesing
3a5a728d4a
Permit an empty "bridge-ips" line when parsing bridge stats.
2009-12-18 13:29:51 +01:00
Karsten Loesing
f80672d747
Remove duplicate words and a duplicate newline.
2009-12-18 12:55:05 +01:00
Nick Mathewson
235f1e1a96
Refactor out the 'find string at start of any line' logic.
...
We do this in too many places throughout the code; it's time to start
clamping down.
Also, refactor Karsten's patch to use strchr-then-strndup, rather than
malloc-then-strlcpy-then-strchr-then-clear.
2009-12-17 18:29:37 -05:00
Karsten Loesing
498c293afe
Make changes to latest bridge-stats fixes as suggested by Nick.
2009-12-17 11:20:31 +01:00
Karsten Loesing
e1e5c1b3ab
Fix bridge statistics.
...
Fix statistics on client numbers by country as seen by bridges that were
broken in 0.2.2.1-alpha. Also switch to reporting full 24-hour intervals
instead of variable 12-to-48-hour intervals.
2009-12-17 09:22:55 +01:00
Karsten Loesing
d38268a8c7
Remove v0 hidden service statistics code.
...
The HSAuthorityRecordStats option was used to track statistics of overall
hidden service usage on the version 0 hidden service authorities. With the
version 2 hidden service directories being deployed and version 0
descriptors being phased out, these statistics are not as useful anymore.
Goodbye, you fine piece of software; my first major code contribution to
Tor.
2009-12-17 09:15:06 +01:00
Nick Mathewson
62c2a5a883
Merge commit 'karsten/fix-cell-stats'
...
Conflicts:
ChangeLog
2009-12-16 21:59:25 -05:00
Nick Mathewson
350181529e
Merge branch 'safelogging2'
...
Conflicts:
ChangeLog
2009-12-15 17:26:09 -05:00
Nick Mathewson
fcbd65b45c
Refactor the safe_str_*() API to make more sense.
...
The new rule is: safe_str_X() means "this string is a piece of X
information; make it safe to log." safe_str() on its own means
"this string is a piece of who-knows-what; make it safe to log".
2009-12-15 17:25:34 -05:00
Nick Mathewson
3b896195cb
Stop using lround in or.h, and check for bad values of RECENT_CIRCUITS
2009-12-15 17:11:27 -05:00
Nick Mathewson
d42c689b8e
Merge commit 'sebastian/coverity'
2009-12-15 14:50:49 -05:00
Nick Mathewson
5db4b96089
Merge branch 'mathlog'
2009-12-15 14:42:09 -05:00
Nick Mathewson
e56747f9cf
Refactor a bit so that it is safe to include math.h, and mostly not needed.
2009-12-15 14:40:49 -05:00
Nick Mathewson
60b01c6d5e
Change interface for configuring cell ewma algorithm.
...
The rule is now: take the value from the CircuitPriorityHalflife
config option if it is set. If it zero, disable the cell_ewma
algorithm. If it is set, use it to calculate the scaling factor.
If it is not set, look for a CircPriorityHalflifeMsec parameter in the
consensus networkstatus. If *that* is zero, then disable the cell_ewma
algorithm; if it is set, use it to calculate the scaling factor.
If it is not set at all, disable the algorithm.
2009-12-15 13:58:24 -05:00
Nick Mathewson
296381eda0
Merge commit 'sebastian/ewma2' into ewma
...
Conflicts:
src/or/relay.c
2009-12-15 13:23:27 -05:00
Nick Mathewson
1292a9ddfe
Fix various comment typos in ewma patch; found by arma.
2009-12-15 13:20:22 -05:00
Sebastian Hahn
d384f5e1ed
Fix compile warning on Panther.
...
Apparently Panther doesn't like comparing ints and enums
2009-12-14 10:07:20 +01:00
Sebastian Hahn
182c583497
Remove some dead code found by coverity, cid 404
...
In connection_dir_client_reached_eof, we make sure that we either
return when we get an http status code of 503 or handle the problem
and set it to 200. Later we check if the status code is 503. Remove
that check.
2009-12-14 09:53:31 +01:00
Sebastian Hahn
27b7746c51
Fix Snow Leopard compile and a codestyle violation
...
When calculating the current tick, cap (tv_sec / EWMA_TICK_LEN) to an unsigned int.
2009-12-14 05:17:45 +01:00
Nick Mathewson
06e8370c33
Optimize cell-ewma circuit priority algorithm.
...
There are two big changes here:
- We store active circuits in a priority queue for each or_conn,
rather than doing a linear search over all the active circuits
before we send each cell.
- Rather than multiplying every circuit's cell-ewma by a decay
factor every time we send a cell (thus normalizing the value of a
current cell to 1.0 and a past cell to alpha^t), we instead
only scale down the cell-ewma every tick (ten seconds atm),
normalizing so that a cell sent at the start of the tick has
value 1.0).
2009-12-13 21:05:53 -05:00
Roger Dingledine
f7d99b62a3
New controller command "getinfo config-text"
...
It returns the contents that Tor would write if you send it a SAVECONF
command, so the controller can write the file to disk itself.
2009-12-13 19:21:06 -05:00
Nick Mathewson
c43fee131d
Adjust EWMA patch to conform to whitespace style.
2009-12-12 19:06:38 -05:00
Can Tang
d3be00e0f4
Favor quiet circuits when choosing which order to relay cells in.
...
Each circuit is ranked in terms of how many cells from it have been
relayed recently, using a time-weighted average.
This patch has been tested this on a private Tor network on PlanetLab,
and gotten improvements of 12-35% in time it takes to fetch a small
web page while there's a simultaneous large data transfer going on
simultaneously.
[Commit msg by nickm based on mail from Ian Goldberg.]
2009-12-12 19:06:38 -05:00
Nick Mathewson
c210db0d41
Enhance pqueue so we can remove items from the middle.
...
This changes the pqueue API by requiring an additional int in every
structure that we store in a pqueue to hold the index of that structure
within the heap.
2009-12-12 19:06:38 -05:00
Nick Mathewson
9e6225ae16
Merge commit 'sebastian/coverity'
2009-12-12 02:10:19 -05:00
Nick Mathewson
0c1b3070cf
Now that FOO_free(NULL) always works, remove checks before calling it.
2009-12-12 02:07:59 -05:00
Nick Mathewson
79f72d0ef6
Make rend_cache_entry_free() typecheck when possible.
2009-12-12 01:31:35 -05:00
Nick Mathewson
a8190b09a3
Cache the parsed value of SafeLogging as an enum.
2009-12-12 01:12:47 -05:00
Sebastian Hahn
3807db001d
*_free functions now accept NULL
...
Some *_free functions threw asserts when passed NULL. Now all of them
accept NULL as input and perform no action when called that way.
This gains us consistence for our free functions, and allows some
code simplifications where an explicit null check is no longer necessary.
2009-12-12 03:29:44 +01:00
Sebastian Hahn
f258647433
Allow SafeLogging to exclude client related information
2009-12-12 02:26:11 +01:00
Karsten Loesing
16fbb2f745
Minor fix to buffer stats.
...
Do not segfault when writing buffer stats when we haven't observed a
single circuit to report about. This is a minor bug that would only show
up in testing environments with no traffic and with reduced stats
intervals.
2009-12-03 10:51:51 +01:00
Roger Dingledine
cee9a28d1e
Merge commit 'origin/maint-0.2.1'
2009-11-23 10:16:38 -05:00
Roger Dingledine
a89f51c936
fix race condition that can cause crashes at client or exit relay
...
Avoid crashing if the client is trying to upload many bytes and the
circuit gets torn down at the same time, or if the flip side
happens on the exit relay. Bugfix on 0.2.0.1-alpha; fixes bug 1150.
2009-11-23 10:13:50 -05:00
Roger Dingledine
403f99eaa4
add a minimum for CircuitStreamTimeout, plus a man page
...
plus some other unrelated touchups that have been sitting in my
sandbox
2009-11-22 07:15:30 -05:00
Roger Dingledine
7f3f88bed3
New config option "CircuitStreamTimeout"
...
New config option "CircuitStreamTimeout" to override our internal
timeout schedule for how many seconds until we detach a stream from
a circuit and try a new circuit. If your network is particularly
slow, you might want to set this to a number like 60.
2009-11-21 23:36:36 -05:00
Roger Dingledine
fdd58f3bd5
If somebody tries to overflow my dirport, don't log his IP by default.
...
aka Fix an instance where a Tor directory mirror might accidentally
log the IP address of a misbehaving Tor client. Bugfix on
0.1.0.1-rc.
2009-11-21 23:09:24 -05:00
Roger Dingledine
4f8b36a1e2
clobber connections with different number than we clobber circuits
2009-11-21 23:02:10 -05:00
Roger Dingledine
7b6b931ccc
stop assuming that our downcasts have a struct offset of 0
...
shouldn't actually change anything, but who knows.
2009-11-21 22:59:18 -05:00
Nick Mathewson
9be682942c
Not everybody likes debugging printfs as much as I
2009-11-18 11:26:44 -05:00
Nick Mathewson
e722ffa605
Do not report a partially-successful detached signature add as failed.
...
Also, regenerate the detached-signature document whenever any signatures are
successfully added.
2009-11-17 14:24:59 -05:00
Roger Dingledine
2ebd22152e
only complain when rejecting a descriptor if it has contact info
2009-11-17 07:39:15 -05:00
Roger Dingledine
22f674fcb8
Fix a memory leak on directory authorities during voting
...
Fix a memory leak on directory authorities during voting that was
introduced in 0.2.2.1-alpha. Found via valgrind.
2009-11-12 01:31:26 -05:00
Nick Mathewson
0a58567ce3
Merge commit 'origin/maint-0.2.1'
...
Conflicts:
src/common/tortls.c
2009-11-06 15:24:52 -05:00
Nick Mathewson
ce0a89e262
Make Tor work with OpenSSL 0.9.8l
...
To fix a major security problem related to incorrect use of
SSL/TLS renegotiation, OpenSSL has turned off renegotiation by
default. We are not affected by this security problem, however,
since we do renegotiation right. (Specifically, we never treat a
renegotiated credential as authenticating previous communication.)
Nevertheless, OpenSSL's new behavior requires us to explicitly
turn renegotiation back on in order to get our protocol working
again.
Amusingly, this is not so simple as "set the flag when you create
the SSL object" , since calling connect or accept seems to clear
the flags.
For belt-and-suspenders purposes, we clear the flag once the Tor
handshake is done. There's no way to exploit a second handshake
either, but we might as well not allow it.
2009-11-05 18:13:08 -05:00
Nick Mathewson
eb1faf8a0a
Fix a URL in a log message.
2009-11-04 11:39:10 -05:00
Sebastian Hahn
f1b7295b27
Disallow command line keywords with more than two dashes as prefix.
...
This might help fix cid 422, where coverity fails to notice that
argv strings are null-escaped.
2009-10-27 17:50:24 +01:00
Sebastian Hahn
b0e8c33617
Make it more obvious for coverity that cid 404 is not dead code
2009-10-27 14:19:32 +01:00
Jacob Appelbaum
2aac39a779
Implement DisableAllSwap to avoid putting secret info in page files.
...
This commit implements a new config option: 'DisableAllSwap'
This option probably only works properly when Tor is started as root.
We added two new functions: tor_mlockall() and tor_set_max_memlock().
tor_mlockall() attempts to mlock() all current and all future memory pages.
For tor_mlockall() to work properly we set the process rlimits for memory to
RLIM_INFINITY (and beyond) inside of tor_set_max_memlock().
We behave differently from mlockall() by only allowing tor_mlockall() to be
called one single time. All other calls will result in a return code of 1.
It is not possible to change DisableAllSwap while running.
A sample configuration item was added to the torrc.complete.in config file.
A new item in the man page for DisableAllSwap was added.
Thanks to Moxie Marlinspike and Chris Palmer for their feedback on this patch.
Please note that we make no guarantees about the quality of your OS and its
mlock/mlockall implementation. It is possible that this will do nothing at all.
It is also possible that you can ulimit the mlock properties of a given user
such that root is not required. This has not been extensively tested and is
unsupported. I have included some comments for possible ways we can handle
this on win32.
2009-10-27 04:28:40 -04:00
Karsten Loesing
56c2385157
Fix bug 1113.
...
Bridges do not use the default exit policy, but reject *:* by default.
2009-10-27 01:03:41 -07:00
Roger Dingledine
8c34e79263
Merge commit 'karsten/log-1092'
2009-10-27 02:26:58 -04:00
Karsten Loesing
c8b27a8e9e
Improve log statement when publishing v2 hs desc.
2009-10-26 23:09:10 -07:00
Karsten Loesing
19ddee5582
Fix bug 1042.
...
If your relay can't keep up with the number of incoming create cells, it
would log one warning per failure into your logs. Limit warnings to 1 per
minute.
2009-10-26 22:49:43 -07:00
Nick Mathewson
54973a45a6
Fix an apparently bogus check; fortunately, it seems to be untriggered.
2009-10-26 23:14:53 -04:00
Nick Mathewson
311315e077
Fix an accidentally removed free in 385853a282
, and repair a check.
2009-10-26 23:13:29 -04:00
Roger Dingledine
ad525685f6
Merge commit 'karsten/fix-1066-3'
2009-10-26 22:45:12 -04:00
Nick Mathewson
385853a282
Fix/annotate deadcode for CID 402,403
2009-10-26 22:40:41 -04:00
Nick Mathewson
caa141617f
Fix dead code found by Coverity (CID 419).
...
This was left over from an early draft of the microdescriptor code; it
began to populate the signatures array of a networkstatus vote, even
though there's no actual need to do that for a vote.
2009-10-26 22:40:41 -04:00
Nick Mathewson
5e4d53d535
Remove checks for array existence. (CID 410..415)
...
In C, the code "char x[10]; if (x) {...}" always takes the true branch of
the if statement. Coverity notices this now.
In some cases, we were testing arrays to make sure that an operation
we wanted to do would suceed. Those cases are now always-true.
In some cases, we were testing arrays to see if something was _set_.
Those caes are now tests for strlen(s), or tests for
!tor_mem_is_zero(d,len).
2009-10-26 22:40:41 -04:00
Nick Mathewson
a457cd91fa
Clarification to suppress Coverity CID 405.
...
Every or conn has an outbuf, but coverity has no way of knowing that.
Add an assert to ease its conscience.
2009-10-26 22:40:40 -04:00
Nick Mathewson
8519d36633
Merge commit 'origin/maint-0.2.1'
2009-10-26 22:40:24 -04:00
Karsten Loesing
4256a96461
Fix bug 1066.
...
If all authorities restart at once right before a consensus vote, nobody
will vote about "Running", and clients will get a consensus with no usable
relays. Instead, authorities refuse to build a consensus if this happens.
2009-10-26 19:27:54 -07:00
Nick Mathewson
5c73da7faa
Fix two memory leaks found by Coverity (CIDs 417-418)
...
The first happens on an error case when a controller wants an
impossible directory object. The second happens when we can't write
our fingerprint file.
2009-10-26 22:12:40 -04:00
Nick Mathewson
8bada1ef67
Add missing break statements for Coverity CIDs #406,407.
...
The code for these was super-wrong, but will only break things when we
reset an option on a platform where sizeof(time_t) is different from
sizeof(int).
2009-10-26 21:35:26 -04:00
Nick Mathewson
071521e02f
Merge commit 'origin/maint-0.2.1'
...
Conflicts:
ChangeLog
2009-10-26 20:15:03 -04:00
Nick Mathewson
56048637a5
Only send the if_modified_since header for a v3 consensus.
...
Spotted by xmux; bugfix on 0.2.0.10-alpha.
(Bug introduced by 20b10859
)
2009-10-26 20:14:11 -04:00
Karsten Loesing
d2b4b49ff0
Reduce log level for someone else sending us weak DH keys.
...
See task 1114. The most plausible explanation for someone sending us weak
DH keys is that they experiment with their Tor code or implement a new Tor
client. Usually, we don't care about such events, especially not on warn
level. If we really care about someone not following the Tor protocol, we
can set ProtocolWarnings to 1.
2009-10-25 23:47:05 -07:00
Roger Dingledine
fa23430496
clean up the XXX comments around bug 1038
2009-10-26 01:32:27 -04:00
Nick Mathewson
afc76a4e71
Fix two bugs found by Coverity scan.
...
One was a simple buffer overrun; the other was a high-speed pointer
collision. Both were introduced by my microdescs branch.
2009-10-19 23:19:42 -04:00
Nick Mathewson
f629687053
Merge branch 'microdesc'
2009-10-19 00:45:47 -04:00
Nick Mathewson
465d4e1cd1
Document some formerly undocumented functions.
2009-10-19 00:30:52 -04:00
Sebastian Hahn
740806c453
Fix compile with warnings problems on Snow Leopard
2009-10-19 01:30:46 +02:00
Nick Mathewson
bb22d8fc45
Add functions to serve microdescs and flavored consensuses.
2009-10-18 18:46:12 -04:00
Nick Mathewson
200c39b66c
Document the microdescriptor code better.
2009-10-18 18:46:12 -04:00
Nick Mathewson
d61b5df9c1
Fix various bugs in microdescriptor caching.
2009-10-18 18:46:07 -04:00
Nick Mathewson
851a980065
Actually remember all the consensus types when we are done generating them.
2009-10-15 15:17:13 -04:00
Nick Mathewson
a19981725d
Parse detached signatures and microdesc networkstatuses correctly.
2009-10-15 15:17:13 -04:00
Nick Mathewson
3471057486
Implement signatures for microdesc consensuses right.
...
This means we need to handle the existence of multiple flavors of signature
in a detached signatures document, generate them correctly, and so on.
2009-10-15 15:17:13 -04:00
Nick Mathewson
d9c71816b1
Generate all the flavors of consensuses when building consensuses.
2009-10-15 15:17:13 -04:00
Nick Mathewson
5576a3a094
Parse detached signature documents with multiple flavors and algorithms.
2009-10-15 15:17:13 -04:00
Nick Mathewson
3b2fc659a8
Refactor consensus signature storage for multiple digests and flavors.
...
This patch introduces a new type called document_signature_t to represent the
signature of a consensus document. Now, each consensus document can have up
to one document signature per voter per digest algorithm. Also, each
detached-signatures document can have up to one signature per <voter,
algorithm, flavor>.
2009-10-15 15:17:13 -04:00
Nick Mathewson
e1ddee8bbe
Code to generate, store, and parse microdescriptors and consensuses.
...
The consensus documents are not signed properly, not served, and not
exchanged yet.
2009-10-15 15:17:13 -04:00
Nick Mathewson
a7ba02f3f1
Add ability to parse one or more m line from a vote.
2009-10-15 15:17:13 -04:00
Nick Mathewson
bdf4839395
Functions to encode microdescriptors and their lines.
2009-10-15 15:17:12 -04:00
Nick Mathewson
c5f7f04aff
Allow signed data to include other hashes later.
...
Previously, we insisted that a valid signature must be a signature of
the expected digest. Now we accept anything that starts with the
expected digest. This lets us include another digest later.
2009-10-15 15:17:12 -04:00
Nick Mathewson
15f4e9600c
Signature-checking code can handle longer digests.
2009-10-15 15:17:12 -04:00
Nick Mathewson
8b2f6b27fd
Make signature-generation code handle different key and digest lengths.
2009-10-15 15:17:12 -04:00
Nick Mathewson
5ef97ddd42
Merge commit 'origin/maint-0.2.1'
...
Conflicts:
ChangeLog
configure.in
contrib/tor-mingw.nsi.in
src/or/config.c
src/win32/orconfig.h
2009-10-15 12:33:22 -04:00
Roger Dingledine
2bee297d57
Move moria1 and Tonga to alternate IP addresses.
2009-10-15 12:14:18 -04:00
Roger Dingledine
2394336426
read the "circwindow" parameter from the consensus
...
backport of c43859c5c1
backport of 0d13e0ed14
2009-10-14 17:07:32 -04:00
Nick Mathewson
83c3f118db
Code to parse and access network parameters.
...
Partial backport of 381766ce4b
.
Partial backport of 56c6d78520
.
2009-10-14 16:15:41 -04:00
Nick Mathewson
71cdd99dd7
Another event2 evdns fix.
2009-10-13 18:57:25 -04:00
Nick Mathewson
81eee0ecff
Fix a crash when using evdns from Libevent 2.
...
When we tried to use the deprecated non-threadsafe evdns
interfaces in Libevent 2 without using the also-deprecated
event_init() interface, Libevent 2 would sensibly crash, since it
has no guess where to find the Libevent library.
Here we use the evdns_base_*() functions instead if they're
present, and fake them if they aren't.
2009-10-13 17:54:04 -04:00
Nick Mathewson
da990d09c3
Merge commit 'public/android'
2009-10-11 23:30:19 -04:00
Roger Dingledine
9d6c79cbbb
fix compile on windows
2009-10-11 17:23:47 -04:00
Roger Dingledine
6265b9f09d
Move dizum to an alternate IP address.
2009-10-11 14:59:14 -04:00
Nick Mathewson
5a6575c2d4
Don't set unreachable from dirvote unless we've been running a while.
...
This is a possible fix for bug 1023, where if we vote (or make a v2
consensus networkstatus) right after we come online, we can call
rep_hist_note_router_unreachable() on every router we haven't connected
to yet, and thereby make all their uptime values reset.
2009-10-10 15:23:00 -04:00
Roger Dingledine
1c62b9d5fa
fix a bug where we were decrementing the wrong bucket
...
i think this doesn't actually affect anything, since linked
conns usually don't impact buckets
2009-10-10 14:52:41 -04:00
Roger Dingledine
746a19e84d
remove some dead code. some of it was tickling coverity.
2009-10-10 13:39:41 -04:00
Sebastian Hahn
e35f9414d6
Fix a memleak when throwing away some build times
...
This was introduced in f7e6e852e8
.
Found by Coverity
2009-10-10 13:41:44 +02:00
Mike Perry
18689317e4
Tweak an assert that shouldn't fire either way.
...
There were however other places where we used to call this
function that might have caused this to fire. Better
safe than sorry now.
2009-10-07 13:05:28 -07:00
Mike Perry
ec05e64a68
Tweak values for when to discard all of our history.
...
This seems to be happening to me a lot on a garbage DSL line.
We may need to come up with 2 threshholds: a high short onehop
count and a lower longer count.
2009-10-07 12:49:13 -07:00
Mike Perry
b918cd8f04
Remove another overzealous assert.
...
Pretimeouts may have build time data, just no timeout data.
2009-10-07 12:24:40 -07:00
Roger Dingledine
b4e0d09202
try to stem the 'sea of fail'
2009-10-01 05:35:24 -04:00
Roger Dingledine
9325b9269c
Ignore one-hop circuits for circuit timeout calc
...
Don't count one-hop circuits when we're estimating how long it
takes circuits to build on average. Otherwise we'll set our circuit
build timeout lower than we should. Bugfix on 0.2.2.2-alpha.
2009-10-01 04:15:45 -04:00
Roger Dingledine
b9e8f0a013
Move Tonga to an alternate IP address
2009-09-30 22:35:05 -04:00
Roger Dingledine
69ecc127e9
Move moria1 to a nearby IP address
2009-09-30 18:46:55 -04:00
Roger Dingledine
53a7636a05
Dir auths reject relays running < Tor 0.1.2.14
...
Directory authorities now reject Tor relays with versions less than
0.1.2.14. This step cuts out four relays from the current network,
none of which are very big.
2009-09-30 18:34:21 -04:00
Mike Perry
f7e6e852e8
Fix 1108: Handle corrupt or large build times state.
...
1108 was actually just a fencepost error in an assert,
but making the state file handling code resilient is a
good idea.
2009-09-29 14:07:04 -04:00
Nathan Freitas
8c585cce39
Include util.h and log.h as relative paths.
...
This shouldn't be necessary, but apparently the Android cross-compiler
doesn't respect -I as well as it should. (-I is supposed to add to the
*front* of the search path. Android's gcc wrapper apparently likes to add to
the end. This is broken, but we need to work around it.)
2009-09-29 00:52:52 -04:00
Nick Mathewson
2e70642c3a
Whitespace fix
2009-09-28 23:50:57 -04:00
Roger Dingledine
768bc04feb
fix two comment bugs for load_stats_file()
2009-09-28 23:25:23 -04:00
Roger Dingledine
b4709066c9
Merge commit 'karsten/fix-another-stats-bug'
2009-09-28 23:23:39 -04:00
Nick Mathewson
3e82981795
Fix some win32 compilation warnings
2009-09-28 19:56:36 -04:00
Karsten Loesing
94b57f9f36
Fix an issue with including stats in extra-info descriptors.
2009-09-28 15:20:21 +02:00
Sebastian Hahn
6a68b50597
Make sure we can't overflow in connection_ap_handshake_send_resolve
...
Found by Coverity
2009-09-27 12:02:02 -04:00
Sebastian Hahn
7f1f6984da
Fix memory leak
...
Some memory could be lost in the error case of
circuit_build_times_parse_state.
Found by Coverity
2009-09-27 12:00:02 -04:00
Roger Dingledine
180a4b6a74
Merge commit 'karsten/stats-fixes-master'
2009-09-24 18:54:01 -04:00
Karsten Loesing
457bebe01a
Fix a couple of smaller issues with gathering statistics.
...
- Avoid memmoving 0 bytes which might lead to compiler warnings.
- Don't require relays to be entry node AND bridge at the same to time to
record clients.
- Fix a memory leak when writing dirreq-stats.
- Don't say in the stats files that measurement intervals are twice as long
as they really are.
- Reduce minimum observation time for requests to 12 hours, or we might
never record usage.
- Clear exit stats correctly after writing them, or we accumulate old stats
over time.
- Reset interval start for buffer stats, too.
2009-09-24 21:58:56 +02:00
Nick Mathewson
b8b2935367
Debugging logs for TLS handshake
...
The big change is to add a function to display the current SSL handshake
state, and to log it everywhere reasonable. (A failure in
SSL23_ST_CR_SRVR_HELLO_A is different from one in
SSL3_ST_CR_SESSION_TICKET_A.)
This patch also adds a new log domain for OR handshaking, so you can pull out
all the handshake log messages without having to run at debug for everything.
For example, you'd just say "log notice-err [handshake]debug-err file
tor.log".
2009-09-24 12:31:22 -04:00
Roger Dingledine
eed5cae9d1
downgrade a log notice at startup
...
This was the only log notice that happened during other
tor invocations, like --verify-config and --list-fingerprint.
Plus, now we think it works, so no need to hear about it.
2009-09-23 04:59:05 -04:00
Nick Mathewson
da1aa66f70
Move testing code into new src/test directory.
2009-09-23 00:24:43 -04:00
Nick Mathewson
d4b54549b8
Refactor unit tests to use the tinytest framework.
...
"Tinytest" is a minimalist C unit testing framework I wrote for
Libevent. It supports some generally useful features, like being able
to run separate unit tests in their own processes.
I tried to do the refactoring to change test.c as little as possible.
Thus, we mostly don't call the tinytest macros directly. Instead, the
test.h header is now a wrapper on tinytest.h to make our existing
test_foo() macros work.
The next step(s) here will be:
- To break test.c into separate files, each with its own test group.
- To look into which things we can test
- To refactor the more fiddly tests to use the tinytest macros
directly and/or run forked.
- To see about writing unit tests for things we couldn't previously
test without forking.
2009-09-23 00:24:43 -04:00
Roger Dingledine
0d13e0ed14
Be more robust to bad circwindow values
...
If the networkstatus consensus tells us that we should use a
negative circuit package window, ignore it. Otherwise we'll
believe it and then trigger an assert.
Also, change the interface for networkstatus_get_param() so we
don't have to lookup the consensus beforehand.
2009-09-22 22:09:33 -04:00
Nick Mathewson
6acfa31d59
Merge commit 'mikeperry/circuittimeout-1103'
2009-09-21 23:35:49 -04:00
Mike Perry
fd7454f9e3
Fix Bug 1103.
...
Don't pass in a quantile that is too high during pretimeout
calcualtion.
2009-09-21 20:01:20 -07:00
Roger Dingledine
54ba86d9d0
downgrade a log severity, since this event has been known
...
to happen and there's nothing the user can do about it
2009-09-21 03:32:28 -04:00
Roger Dingledine
fa63d47f83
Merge branch 'maint-0.2.1'
2009-09-20 23:53:03 -04:00
Roger Dingledine
95008db08d
Revert "Teach connection_ap_can_use_exit about Exclude*Nodes"
...
This reverts commit dc3229313b
.
We're going to do this more thoroughly in 0.2.2.x, and not in
maint-0.2.1.
2009-09-20 23:50:48 -04:00
Nick Mathewson
93b33e15ab
Fix build warnings on OSX 10.5.8
2009-09-20 23:01:43 -04:00
Mike Perry
134266b984
Change the condition on the nonlive timeout counting.
...
Try to clarify things in the comment too.
2009-09-20 18:20:10 -07:00
Roger Dingledine
cf2afcd707
Fix typos and comments, plus two bugs
...
A) We were considering a circuit had timed out in the special cases
where we close rendezvous circuits because the final rendezvous
circuit couldn't be built in time.
B) We were looking at the wrong timestamp_created when considering
a timeout.
2009-09-20 19:50:44 -04:00
Mike Perry
f39bedf250
Implement and document new network liveness algorithm.
...
Based on irc discussion with arma.
2009-09-20 14:51:30 -07:00
Mike Perry
6700e528be
Fix some precision-related asserts in unit tests.
...
Mostly by storing the timeout as milliseconds and not seconds
internally.
2009-09-20 14:43:45 -07:00
Roger Dingledine
cc53e7cb0e
disable the end of circuitbuildtimeout units tests
...
until mike figures out some other way to make them pass reliably
2009-09-18 02:00:20 -04:00
Sebastian Hahn
335b67a354
Fix compile on freebsd
2009-09-18 02:43:45 +02:00
Roger Dingledine
67f280feb3
Let our config abbreviations rewrite more than once
2009-09-17 20:32:42 -04:00
Roger Dingledine
b02b11c4b4
a mish-mash of stuff in my sandbox
2009-09-17 01:58:39 -04:00
Roger Dingledine
ee89061ef2
give proposal 151 a changelog and other touchups
2009-09-17 01:42:33 -04:00
Roger Dingledine
feccaa5c83
Choose early circuit idle timeout better.
...
Don't discard all circuits every MaxCircuitDirtiness, because the
user might legitimately have set that to a very lower number.
Also don't use up all of our idle circuits with testing circuits,
since that defeats the point of preemptive circuits.
2009-09-17 01:41:47 -04:00
Nick Mathewson
b3991ea7d1
Merge commit 'karsten/fix-1073' into maint-0.2.1
2009-09-16 23:36:01 -04:00
Roger Dingledine
4850a3a75f
Merge commit 'mikeperry/circuitbuildtimeout-final'
2009-09-16 21:43:31 -04:00
Mike Perry
43c18746bd
Clarify use of magic number 0.98 with #define.
2009-09-16 18:41:22 -07:00
Roger Dingledine
926ca5befd
Merge branch 'maint-0.2.1'
2009-09-16 21:28:49 -04:00
Roger Dingledine
7d838971dd
Merge commit 'karsten/no-time-maint-0.2.1'
2009-09-16 20:45:01 -04:00
Roger Dingledine
9eb5edc093
Merge commit 'sebastian/specconformance'
2009-09-16 20:37:43 -04:00
Sebastian Hahn
1aac7de1ea
Fix unit tests and compile issues on Snow Leopard
2009-09-16 17:22:21 -07:00
Mike Perry
e2c2fa7a1f
Change liveness value to be a function of the timeout.
...
And also the number of recent circuits used to decide
when the network changes.
2009-09-16 17:20:34 -07:00
Mike Perry
e4e0ce94f0
Add log message so we have accurate build time values.
2009-09-16 17:20:34 -07:00
Mike Perry
5bd60d8a41
Address nickm's issues from his review #1 .
2009-09-16 17:20:29 -07:00
Mike Perry
0352d43917
Move circuitbuildtimeout config check.
...
We want it to be under our control so it doesn't mess
up initialization. This is likely the cause for
the bug the previous assert-adding commit (09a75ad
) was
trying to address.
2009-09-16 15:58:42 -07:00
Mike Perry
09a75ad316
Time for some debugging by asserts.
...
Got a negative timeout value on startup. Need to narrow it down.
2009-09-16 15:55:51 -07:00
Mike Perry
742e08046f
Fix bugs relating to not counting timeouts as circuit builds.
...
Also use bin midpoints for time values.
2009-09-16 15:55:51 -07:00
Mike Perry
67cee75ca2
Document functions and constants.
2009-09-16 15:55:50 -07:00
Mike Perry
c9363df09f
Remove an assert.
...
It seems to fire because of precision issues. Added
more debug info to the warn to try to figure out for sure.
2009-09-16 15:55:50 -07:00
Mike Perry
63be2df84f
Fix issues found by arma in review.
2009-09-16 15:55:36 -07:00
Roger Dingledine
672e2f6908
space/indent cleanups, plus point out three bugs
2009-09-16 15:55:32 -07:00
Mike Perry
4b3bc714a3
Woops. Fix a couple memory leaks.
...
Also change the max timeout quantile to 0.98, so we can
avoid huge synthetic timeout values.
2009-09-16 15:54:37 -07:00
Karsten Loesing
b508e4748f
Remove trailing spaces. As if bytes were free...
...
Also correct some typos.
2009-09-16 15:52:05 -07:00
Mike Perry
535423a3bb
Resolve mode ties in favor of the higher (slower) mode.
2009-09-16 15:52:04 -07:00
Mike Perry
8210336182
More detail for some log msgs.
2009-09-16 15:52:04 -07:00
Mike Perry
6eba08e22f
Use our variable directly for timeout.
...
Using CircuitBuildTimeout is prone to issues with SIGHUP, etc.
Also, shuffle the circuit build times array after loading it
in so that newer measurements don't replace chunks of
similarly timed measurements.
2009-09-16 15:52:04 -07:00
Mike Perry
fca8446949
Fix a couple of assert bugs.
2009-09-16 15:52:03 -07:00
Mike Perry
c4e6b3eadb
Fix timeout edge case when we get enough samples.
...
Also switch Xm calculation to mode, not min.
2009-09-16 15:52:03 -07:00
Mike Perry
95735e5478
Fix the math.h log() conflict.
...
It was compiling, but causing segfaults.
Also, adjust when the timer starts for new test circs
and save state every 25 circuits.
2009-09-16 15:51:17 -07:00
Mike Perry
7ac9a66c8f
Recover from changing network connections.
...
Also add code to keep creating circuits every minute until we
hit our minimum threshhold.
2009-09-16 15:51:16 -07:00
Mike Perry
411b60325b
Factor out the pretimeout handling code.
...
We need to also call it if we're going to calculate alpha
after a normal circuit build.
2009-09-16 15:51:15 -07:00
Mike Perry
b52bce91fc
Write unit tests and fix issues they uncovered.
2009-09-16 15:51:10 -07:00
Mike Perry
04414830fe
Implement the pareto fitting and timeout calculating bits.
2009-09-16 15:48:52 -07:00
Mike Perry
7750bee21d
Clean up Fallon's partially complete GSoC project.
...
The code actually isn't that bad. It's a shame she didn't finish.
Using it as the base for this feature.
2009-09-16 15:48:51 -07:00
Roger Dingledine
2dbf5b7741
Merge branch 'tmp'
2009-09-16 17:18:35 -04:00
Sebastian Hahn
dc3229313b
Teach connection_ap_can_use_exit about Exclude*Nodes
...
To further attempt to fix bug 1090, make sure connection_ap_can_use_exit
always returns 0 when the chosen exit router is excluded. This should fix
bug1090.
2009-09-16 02:29:57 +02:00
Nick Mathewson
ed7283d283
Merge commit 'origin/maint-0.2.1'
...
Resolved conflicts in:
src/or/circuitbuild.c
2009-09-15 19:37:26 -04:00
Nick Mathewson
24c740e5fd
Merge commit 'sebastian/memleak' into maint-0.2.1
2009-09-15 19:35:16 -04:00
Sebastian Hahn
113ba0e727
make some bug 1090 warnings go away
...
When we excluded some Exits, we were sometimes warning the user that we
were going to use the node regardless. Many of those warnings were in
fact bogus, because the relay in question was not used to connect to
the outside world.
Based on patch by Rotor, thanks!
2009-09-16 01:17:51 +02:00
Nick Mathewson
f9226ae030
Merge commit 'origin/maint-0.2.1'
2009-09-15 12:53:44 -04:00
Sebastian Hahn
b73ecdc232
Fix compile on Snow Leopard
2009-09-15 07:13:36 -04:00
Sebastian Hahn
5e01a86b42
some cleanups:
...
documentation fix for get_uint64
remove extra "." from a log line
fix a long line
2009-09-15 07:12:12 -04:00
Roger Dingledine
c43859c5c1
Read "circwindow=x" from the consensus and use it
...
Tor now reads the "circwindow" parameter out of the consensus,
and uses that value for its circuit package window rather than the
default of 1000 cells. Begins the implementation of proposal 168.
2009-09-15 06:33:33 -04:00
Roger Dingledine
40bcab1faf
ConsensusParams config option lists key=value params
...
finishes the authority-operator interface side of proposal 167.
2009-09-15 04:40:08 -04:00
Nick Mathewson
56c6d78520
Parameter access function, with unit tests.
2009-09-14 23:39:08 -04:00
Nick Mathewson
381766ce4b
Implement proposal 167: Authorities vote on network parameters.
...
This code adds a new field to vote on: "params". It consists of a list of
sorted key=int pairs. The output is computed as the median of all the
integers for any key on which anybody voted.
Improved with input from Roger.
2009-09-14 23:21:53 -04:00
Sebastian Hahn
b792afa919
Fix a memory leak when parsing a ns
...
Adding the same vote to a networkstatus consensus leads to a memory leak
on the client side. Fix that by only using the first vote from any given
voter, and ignoring the others.
Problem found by Rotor, who also helped writing the patch. Thanks!
2009-09-14 22:25:08 +02:00
Sebastian Hahn
c1a6fb42ac
Fix a spec conformance issue when parsing a ns vote
...
A vote may only contain exactly one signature. Make sure we reject
votes that violate this.
Problem found by Rotor, who also helped writing the patch. Thanks!
2009-09-14 22:06:21 +02:00
Roger Dingledine
86af2ecbda
minor fixes in some comments
2009-09-06 20:09:08 -04:00
Karsten Loesing
995606a7e1
Avoid calling time(NULL) too often.
...
Found by "rotator".
2009-09-03 10:17:08 +02:00
Roger Dingledine
fcacf22491
Fix obscure 64-bit big-endian hidserv bug
...
Fix an obscure bug where hidden services on 64-bit big-endian
systems might mis-read the timestamp in v3 introduce cells, and
refuse to connect back to the client. Discovered by "rotor".
Bugfix on 0.2.1.6-alpha.
2009-09-02 20:36:11 -04:00
Roger Dingledine
3de5ac9baa
i couldn't break nick's tor_parse_double()
...
i guess that means i should call them unit tests and check them in.
2009-09-02 01:10:10 -04:00
Sebastian Hahn
0a71d1c6a7
Fix compile warnings on Snow Leopard
...
Big thanks to nickm and arma for helping me with this!
2009-09-01 22:16:46 +02:00
Nick Mathewson
1cda6f3e75
Merge commit 'origin/maint-0.2.1'
2009-09-01 15:59:40 -04:00
Sebastian Hahn
d76fd59a7e
Remove a debug printf
2009-09-01 21:58:11 +02:00
Sebastian Hahn
aea9cf1011
Fix compile warnings on Snow Leopard
...
Big thanks to nickm and arma for helping me with this!
2009-09-01 18:36:27 +02:00
Nick Mathewson
cdc8ea2976
Merge commit 'public/bug1076'
2009-09-01 02:01:49 -04:00
Roger Dingledine
075c004095
Add getinfo accepted-server-descriptor. Clean spec.
...
Add a "getinfo status/accepted-server-descriptor" controller
command, which is the recommended way for controllers to learn
whether our server descriptor has been successfully received by at
least on directory authority. Un-recommend good-server-descriptor
getinfo and status events until we have a better design for them.
2009-08-31 18:37:25 -04:00
Karsten Loesing
da219ee924
Reduce log level for bug case that we now know really exists.
2009-09-01 00:16:33 +02:00
Roger Dingledine
a225469ded
Merge branch 'maint-0.2.1'
2009-08-31 16:26:01 -04:00
Roger Dingledine
4c297f74f7
Only send reachability status events on overall success/failure
...
We were telling the controller about CHECKING_REACHABILITY and
REACHABILITY_FAILED status events whenever we launch a testing
circuit or notice that one has failed. Instead, only tell the
controller when we want to inform the user of overall success or
overall failure. Bugfix on 0.1.2.6-alpha. Fixes bug 1075. Reported
by SwissTorExit.
2009-08-31 16:14:41 -04:00
Nick Mathewson
00b37f071d
Revise parsing of time and memory units to handle spaces.
...
When we added support for fractional units (like 1.5 MB) I broke
support for giving units with no space (like 2MB). This patch should
fix that. It also adds a propoer tor_parse_double().
Fix for bug 1076. Bugfix on 0.2.2.1-alpha.
2009-08-31 00:18:55 -04:00
Karsten Loesing
dd8f16beb5
Avoid segfault when accessing hidden service.
2009-08-29 19:41:08 +02:00
Roger Dingledine
0bb59f1c38
Merge branch 'maint-0.2.1'
2009-08-28 03:47:18 -04:00
Roger Dingledine
64f393d56f
Only send netinfo clock_skew to controller if an authority told us so
...
We were triggering a CLOCK_SKEW controller status event whenever
we connect via the v2 connection protocol to any relay that has
a wrong clock. Instead, we should only inform the controller when
it's a trusted authority that claims our clock is wrong. Bugfix
on 0.2.0.20-rc; starts to fix bug 1074. Reported by SwissTorExit.
2009-08-28 03:42:09 -04:00
Karsten Loesing
889c07f1fc
When Tor fails to parse a descriptor of any kind, dump it to disk.
2009-08-26 20:15:47 -04:00
Nick Mathewson
1d9b8a1e16
Merge commit 'karsten/proposal-166-impl-master'
2009-08-26 11:36:40 -04:00
Nick Mathewson
c9203749a2
A changelog entry and a bit more documentation for socks-client
2009-08-26 11:34:45 -04:00
Nick Mathewson
707a6bd659
Merge commit 'public/socks-client'
...
Resolved conflict in:
src/or/or.h
2009-08-26 11:27:19 -04:00
Nick Mathewson
903f9ef50e
Clean up a couple of style issues in the socks-client branch.
2009-08-25 10:30:54 -04:00
Karsten Loesing
8c29b7920a
Add some fixes after discussion with Nick.
...
- Refactor geoip.c by moving duplicate code into rotate_request_period().
- Don't leak memory when cleaning up cell queues.
- Make sure that exit_(streams|bytes_(read|written)) are initialized in all
places accessing these arrays.
- Read only the last block from *stats files and ensure that its timestamp
is not more than 25 hours in the past and not more than 1 hour in the
future.
- Stop truncating the last character when reading *stats files.
The only thing that's left now is to avoid reading whole *stats files into
memory.
2009-08-21 23:02:36 +02:00
Nick Mathewson
b51c592547
Refactor geoip_get_dirreq_history() some more.
...
This patch avoids a bunch of allocations, and avoids using unallocated
memory.
2009-08-21 13:50:32 -04:00
Nick Mathewson
d4a75a222f
Fix a memory leak in summarizing directory request timing.
...
Spotted by Coverity Scan.
2009-08-21 13:33:20 -04:00
Nick Mathewson
daa0326aaa
Add the first 8 bytes of the git commit digest to our versions.
...
Note that unlike subversion revision numbers, it isn't meaningful to
compare these for anything but equality. We define a sort-order anyway,
in case one of these accidentally slips into a recommended-versions
list.
2009-08-21 12:31:13 -04:00
Roger Dingledine
eb829cc330
Survive unparseable cached cert file
2009-08-20 16:56:21 -04:00
Roger Dingledine
7f518873eb
Notice v3 cert parsing failures
...
If any the v3 certs we download are unparseable, we should actually
notice the failure so we don't retry indefinitely. Bugfix on 0.2.0.x;
reported by "rotator".
2009-08-20 16:50:51 -04:00
Nick Mathewson
8771fdfda4
Make consensus_method_is_supported() be the canonical source for its info.
...
Add a new function to derive the declared method list from
consensus_method_is_supported().
2009-08-20 10:04:33 -04:00
Nick Mathewson
f57883a39e
Add basic support for SHA256.
...
This adds an openssl 0.9.8 dependency. Let's see if anybody cares.
2009-08-19 19:43:54 -04:00
Karsten Loesing
75c59d1a92
Some final (?) cleanups of proposal 166 implementation.
2009-08-19 23:36:27 +02:00
Karsten Loesing
93fd0d3755
Fix a couple of bugs that showed up at runtime.
2009-08-19 19:16:00 +02:00
Karsten Loesing
6592cbe3e1
Don't write extra-info document to debug logs.
2009-08-19 17:15:51 +02:00
Karsten Loesing
42229d1d84
Move all *-stats file to subdirectory stats/.
2009-08-19 17:10:40 +02:00
Karsten Loesing
a5508583ee
Include only the last 24 hours of stats in extra-info documents.
2009-08-19 16:30:00 +02:00
Karsten Loesing
4e29f33427
Write all statistics to disk exactly every 24 hours.
2009-08-19 15:41:12 +02:00
Karsten Loesing
dccadb30cd
Clean up proposal 166 and its implementation.
2009-08-18 15:53:08 +02:00
Karsten Loesing
799af41157
Use memory pool for insertion times.
2009-08-17 13:30:11 +02:00
Karsten Loesing
f37af0180d
Implement queue with O(1) operations, and correct some math.
2009-08-17 13:30:11 +02:00
Karsten Loesing
858a8f809d
Reduce cell statistics accuracy from 1 ms to 10 ms.
2009-08-17 13:30:11 +02:00
Karsten Loesing
20c95a3d21
Fix trivial bug when uploading extra-info documents.
2009-08-17 13:30:10 +02:00
Karsten Loesing
9179bcb923
Include contents of *-stats files in descriptor.
2009-08-17 13:30:10 +02:00
Karsten Loesing
d97e95cb62
Remove ./configure option for cell statistics.
2009-08-17 13:30:09 +02:00
Karsten Loesing
ab7729f472
Remove ./configure option for entry and dir request statistics.
2009-08-17 13:29:50 +02:00
Nick Mathewson
b9e45cc508
Merge commit 'mikeperry/bandwidth-voting-final'
2009-08-14 17:12:05 -04:00
Karsten Loesing
9d16a59fcc
Remove ./configure option for exit port statistics.
2009-08-14 14:56:38 +02:00
Nick Mathewson
e0dc2e907e
Merge commit 'origin/maint-0.2.1'
2009-08-12 22:02:07 -04:00
Karsten Loesing
a98643c1b5
Fix possible segmentation fault on directory authorities.
...
The more verbose logs that were added in ee58153
also include a string
that might not have been initialized. This can lead to segfaults, e.g.,
when setting up private Tor networks. Initialize this string with NULL.
2009-08-11 17:33:58 +02:00
Roger Dingledine
afc9da7287
Merge branch 'maint-0.2.1'
2009-08-10 04:17:32 -04:00
Roger Dingledine
e50b7768b9
Send sendmes when we're down 100 cells, not 101.
...
Send circuit or stream sendme cells when our window has decreased
by 100 cells, not when it has decreased by 101 cells. Bug uncovered
by Karsten when testing the "reduce circuit window" performance
patch. Bugfix on the 54th commit on Tor -- from July 2002,
before the release of Tor 0.0.0. This is the new winner of the
oldest-bug prize.
2009-08-10 04:13:18 -04:00
Roger Dingledine
5f0fb9a109
Merge branch 'maint-0.2.1' into tmp_merge
2009-08-10 01:37:29 -04:00
Roger Dingledine
8abe3bac7e
Set up urras as the seventh v3 directory authority.
2009-08-10 01:32:51 -04:00
Mike Perry
9e1fe29beb
Switch over to tor_strtok_r instead of strtok_r.
2009-08-09 18:42:29 -07:00
Mike Perry
cb477f9cc0
Merge commit 'nickm/strtok' into mp-voting-final
2009-08-09 18:23:53 -07:00
Mike Perry
1060b4d824
Fix issues found by Nick in code review.
2009-08-09 18:21:15 -07:00
Nick Mathewson
3886467f38
Add a new tor_strtok_r for platforms that don't have one, plus tests.
...
I don't think we actually use (or plan to use) strtok_r in a reentrant
way anywhere in our code, but would be nice not to have to think about
whether we're doing it.
2009-08-09 17:30:15 -07:00
Jacob Appelbaum
33762b5296
LetsKillNoConnect removes support for .noconnect
...
This is a patch to remove support for .noconnect.
We are removing .noconnect because of a talk at Defcon 17 by Gregory Fleischer.
2009-08-08 19:15:22 -07:00
Roger Dingledine
3e4379c2e7
Disable .exit notation unless AllowDotExit is 1.
2009-08-07 19:26:41 -04:00
Mike Perry
ca676c3924
Display consensus bandwidth to the control port.
...
Also div vote and other bandwidth by 1000, not 1024.
2009-08-06 14:47:08 -07:00
Mike Perry
b074e61ad3
Throw the switch on consensus method 6.
2009-08-06 14:47:04 -07:00
Roger Dingledine
da88e05edc
try loading the bandwidth measurement file on startup too,
...
in case it's broken.
2009-08-06 11:48:03 -07:00
Mike Perry
6fbdf635fa
Implement measured bw parsing + unit tests.
2009-08-06 11:48:03 -07:00
Nick Mathewson
df354a002c
Merge commit 'origin/maint-0.2.1'
...
Resolved onflicts in:
ChangeLog
src/or/config.c
src/or/or.h
2009-07-30 10:16:04 -04:00
Nick Mathewson
4577bda766
Cleaner fix for get_effective_bw(rate|burst), with comment on why it is ok.
2009-07-30 10:14:12 -04:00
Nick Mathewson
efe966944d
Fix signed/unsigned comparison warnings in get_effective_bw(rate|burst)
2009-07-30 09:15:07 -04:00
Roger Dingledine
6249b0fd77
Fix a signed/unsigned compile warning in 0.2.1.19
2009-07-28 18:34:35 -04:00
Roger Dingledine
e8e88922a7
Merge branch 'maint-0.2.1' into master
2009-07-28 18:19:57 -04:00
Sebastian Hahn
3e45445104
Changing MaxAdvertisedBW may not need a republish
...
Relays no longer publish a new server descriptor if they change
their MaxAdvertisedBandwidth config option but it doesn't end up
changing their advertised bandwidth numbers. Bugfix on 0.2.0.28-rc;
fixes bug 1026. Patch from Sebastian.
2009-07-27 23:53:06 -04:00
Roger Dingledine
a73acdd46f
Write fingerprint to file and log without spaces
...
Now it will look like the fingerprints in our bridges documentation,
and confuse fewer users.
2009-07-27 22:51:20 -04:00
Roger Dingledine
0a4e2397c0
Don't leak memory if we get too many create cells
...
Specifically, every time we get a create cell but we have so many already
queued that we refuse it.
Bugfix on 0.2.0.19-alpha; fixes bug 1034. Reported by BarkerJr.
2009-07-27 22:38:09 -04:00
Roger Dingledine
2b63fa40e8
three hacks to workaround bug 1038
...
The problem is that clients and hidden services are receiving
relay_early cells, and they tear down the circuit.
Hack #1 is for rendezvous points to rewrite relay_early cells to
relay cells. That way there are never any incoming relay_early cells.
Hack #2 is for clients and hidden services to never send a relay_early
cell on an established rendezvous circuit. That works around rendezvous
points that haven't upgraded yet.
Hack #3 is for clients and hidden services to not tear down the circuit
when they receive an inbound relay_early cell. We already refuse extend
cells at clients.
2009-07-27 21:58:32 -04:00
Karsten Loesing
7b716878cb
Fix dirreq and cell stats on 32-bit architectures.
...
When determining how long directory requests take or how long cells spend
in queues, we were comparing timestamps on microsecond detail only to
convert results to second or millisecond detail later on. But on 32-bit
architectures this means that 2^31 microseconds only cover time
differences of up to 36 minutes. Instead, compare timestamps on
millisecond detail.
2009-07-27 16:23:53 +02:00
Nick Mathewson
2b0e8fb39f
Merge commit 'ioerror/DirFetchInfoExtraEarly'
...
Conflicts:
ChangeLog
2009-07-25 00:52:54 -04:00
Karsten Loesing
f80537e3e0
Fix unit tests.
...
Now that we require EntryStatistics to be 1 for counting connecting
clients, unit tests need to set that config option, too.
Reported by Sebastian Hahn.
2009-07-24 01:13:33 +02:00
Sebastian Hahn
5c0b418a6f
don't warn about DirReqStatistics when the option is disabled
...
Reported by Zax on #tor
2009-07-23 13:50:18 +02:00
Karsten Loesing
b71bbdc69a
Make exit stats compile on 64-bit machines, too.
2009-07-18 10:35:20 -04:00
Nick Mathewson
022d251cb7
Merge branch 'dirreq-timing'
2009-07-16 15:26:07 -04:00
Nick Mathewson
cbe4327391
Switch dirreq_map to use HT_ functions rather than strmap.
2009-07-16 15:26:01 -04:00
Sebastian Hahn
989e74e5c0
fix long line
2009-07-15 17:26:11 +02:00
Karsten Loesing
8c496d1660
Some tweaks to statistics.
...
Changes to directory request statistics:
- Rename GEOIP statistics to DIRREQ statistics, because they now include
more than only GeoIP-based statistics, whereas other statistics are
GeoIP-dependent, too.
- Rename output file from geoip-stats to dirreq-stats.
- Add new config option DirReqStatistics that is required to measure
directory request statistics.
- Clean up ChangeLog.
Also ensure that entry guards statistics have access to a local GeoIP
database.
2009-07-15 16:32:40 +02:00
Karsten Loesing
416940d93b
Some tweaks to directory request download times.
...
- Use common prefixes DIRREQ_* and dirreq_*.
- Replace enums in structs with bitfields.
2009-07-15 16:14:14 +02:00
Karsten Loesing
85e7f67e1c
Round up results to the next multiple of 4.
2009-07-15 16:12:45 +02:00
Karsten Loesing
4002980d1c
Right, the u in uint stands for unsigned.
2009-07-15 16:12:45 +02:00
Karsten Loesing
3c05132575
Directories now also measure download times of network statuses.
2009-07-15 16:12:45 +02:00
Nick Mathewson
d4b31cf98f
Allow interval and memunit cfg variables to be set to fractions.
2009-07-15 10:02:49 -04:00
Roger Dingledine
05975e2a89
make it compile without warnings
2009-07-14 14:13:04 -04:00
Nick Mathewson
31b72732c6
Merge commit 'karsten/geoipstats-download-resp-master'
...
Conflicts:
src/or/geoip.c
2009-07-14 12:18:27 -04:00
Nick Mathewson
e90843eb68
Merge commit 'karsten/geoipstats-shares-master'
2009-07-14 12:15:24 -04:00
Nick Mathewson
49136bb18f
Merge commit 'karsten/geoipstats-newoverthereistan-master'
2009-07-14 12:14:19 -04:00
Karsten Loesing
409386cede
Handle unsigned ints correctly.
2009-07-14 01:50:55 +02:00
Karsten Loesing
59dd9de858
Write number of rejected requests to geoip-stats file.
2009-07-14 01:46:17 +02:00
Jacob Appelbaum
e7576f92de
Add support for a new option: FetchDirInfoExtraEarly
...
This new option will allow clients to download the newest fresh consensus
much sooner than they normally would do so, even if they previously set
FetchDirInfoEarly. This includes a proper ChangeLog entry and an updated man
page.
2009-07-13 16:30:42 -07:00
Roger Dingledine
b48e3371d7
remove experimental 'getinfo unregistered-servers-'
...
it never really worked, and hasn't been used for years.
2009-07-13 17:34:47 -04:00
Roger Dingledine
9ece0955f7
fix comments and other typos
2009-07-13 17:34:46 -04:00
Karsten Loesing
8f1a973669
Two tweaks to exit-port statistics.
...
Add two functions for round_to_next_multiple_of() for uint32_t and
uint64_t.
Avoid division in every step of the loop over all ports.
2009-07-13 22:43:06 +02:00
Karsten Loesing
707a44a7b0
Replace two %d with %u's.
2009-07-13 22:11:21 +02:00
Karsten Loesing
d1437245c7
Simplify the math to round up to the next multiple of some value.
2009-07-11 00:44:27 +02:00
Karsten Loesing
7fb206e554
Tweak exit port statistics a bit.
...
Introduce a threshold of 0.01% of bytes that must be read and written per
port in order to be included in the statistics. Otherwise we cannot include
these statistics in extra-info documents, because they are too big.
Change the labels "-written" and "-read" so that the meanings are as
intended.
2009-07-09 23:55:13 +02:00
Karsten Loesing
fa2374a163
List unresolved requests in geoip stats as country '??'.
2009-07-09 15:34:53 +02:00
Nick Mathewson
041a7b9896
Merge commit 'karsten/entrystats-master'
...
Conflicts:
ChangeLog
configure.in
src/or/config.c
src/or/or.h
2009-07-07 14:26:50 -04:00
Nick Mathewson
1c1b223910
Merge commit 'karsten/bufferstats-master'
2009-07-07 13:21:33 -04:00
Nick Mathewson
aa0cf31c51
Merge commit 'origin/maint-0.2.1'
...
Conflicts:
ChangeLog
configure.in
contrib/tor-mingw.nsi.in
src/win32/orconfig.h
2009-07-07 12:42:24 -04:00
Nick Mathewson
258b980331
Make "Invalid onion hostname" msg respect SafeLogging.
...
Patch by Roger; fixes bug 1027.
2009-07-07 12:19:04 -04:00
Karsten Loesing
c0b6cb132b
If configured, write entry-node statistics to disk periodically.
2009-07-05 20:48:16 +02:00
Karsten Loesing
b493a2ccb9
If configured, write cell statistics to disk periodically.
2009-07-05 19:53:25 +02:00
Karsten Loesing
c1f6c2ba30
Estimate v2 and v3 shares as mean values over measurement interval.
2009-07-04 22:17:08 +02:00
Karsten Loesing
4d6af73db8
If configured, write per-port exit statistics to disk periodically.
...
[Original patch series from Karsten, revised and squashed by Nick]
2009-07-02 12:37:05 -04:00
Nick Mathewson
078c34e28e
Merge commit 'origin/maint-0.2.1'
...
[Didn't take Karsten's full bug 1024 workaround, since 0.2.2 doesn't
use v0 rend descs.]
2009-07-02 10:20:20 -04:00
Karsten Loesing
3e6bb050dd
Make an attempt to fix bug 1024.
...
The internal error "could not find intro key" occurs when we want to send
an INTRODUCE1 cell over a recently finished introduction circuit and think
we built the introduction circuit with a v2 hidden service descriptor, but
cannot find the introduction key in our descriptor.
My first guess how we can end up in this situation is that we are wrong in
thinking that we built the introduction circuit based on a v2 hidden
service descriptor. This patch checks if we have a v0 descriptor, too, and
uses that instead.
2009-07-02 10:00:28 -04:00
Roger Dingledine
690db1331d
another minor patch to add to 0.2.1.x
...
o Minor features:
- If we're a relay and we change our IP address, be more verbose
about the reason that made us change. Should help track down
further bugs for relays on dynamic IP addresses.
2009-06-30 10:21:30 -04:00
Nick Mathewson
9f28cfe86a
Merge commit 'origin/maint-0.2.1'
2009-06-30 10:13:51 -04:00
Roger Dingledine
e7bc189f7c
the third piece of bug 969 fixing
...
when we write out our stability info, detect relays that have slipped
through the cracks. log about them and correct the problem.
if we continue to see a lot of these over time, it means there's another
spot where relays fall out of the routerlist without being marked as
unreachable.
2009-06-30 10:10:13 -04:00
Roger Dingledine
bdca5476da
the second piece of bug 969 fixing
...
whenever we remove a relay from the main routerlist, tell the
rephist module that it's no longer running.
2009-06-30 10:10:13 -04:00
Roger Dingledine
0cd16c4ad3
the first piece of bug 969 fixing
...
tell the rephist module that a given relay is down whenever
we determine that it's down, not just when we thought it used
to be up.
2009-06-30 10:10:13 -04:00
Nick Mathewson
7ce767181f
Have eventdns set the "truncated" bit correctly.
...
Fixed bug 1022; This isn't actually a live bug in Tor, since in Tor
we never generate large DNS replies.
2009-06-30 10:05:42 -04:00
Nick Mathewson
f466f3d12c
Merge commit 'sebastian/geoipnotice'
2009-06-25 12:09:57 -04:00
Sebastian Hahn
38476e2555
Log a notice about collecting geoip stats
2009-06-25 18:06:52 +02:00
Roger Dingledine
9fc3d87827
stop capping bandwidths we see in the consensus
...
but continue capping bandwidths we see in local server
descriptors, if we have no consensus weights for them.
2009-06-25 11:38:05 -04:00
Nick Mathewson
d2cac1afc3
Merge commit 'origin/maint-0.2.1'
2009-06-24 19:02:00 -04:00
Marcus Griep
d308738919
Ignore control port commands after a QUIT
...
When a QUIT has been issued on a control port connection, then
ignore further commands on that port. This fixes bug 1016.
2009-06-24 00:10:22 -04:00
Marcus Griep
fa89c9f086
Flush long replies over control port on QUIT
...
Marks the control port connection for flushing before closing when
the QUIT command is issued. This allows a QUIT to be issued during
a long reply over the control port, flushing the reply and then
closing the connection. Fixes bug 1015.
2009-06-24 00:10:20 -04:00
Nick Mathewson
39551b494e
Merge commit 'origin/maint-0.2.1'
2009-06-22 14:08:19 -04:00
Roger Dingledine
1aaab8288d
Clients now use bandwidth values in the consensus
...
rather than the bandwidth values in each relay descriptor. This approach
opens the door to more accurate bandwidth estimates once the directory
authorities start doing active measurements. Implements more of proposal
141.
2009-06-22 14:01:34 -04:00
Nick Mathewson
3f4f6f9075
Merge commit 'origin/maint-0.2.1'
...
Conflicts:
ChangeLog
2009-06-22 12:36:06 -04:00
Nick Mathewson
262455527a
Serve DirPortFrontPage even if the write bucket is low.
...
arma's rationale: "I think this is a bug, since people intentionally
set DirPortFrontPage, so they really do want their relay to serve that
page when it's asked for. Having it appear only sometimes (or roughly
never in Sebastian's case) makes it way less useful."
Fixes bug 1013; bugfix on 0.2.1.8-alpha.
2009-06-22 12:34:32 -04:00
Karsten Loesing
e6a1e7001b
Add warning that the results of --enable-geoip-stats are different from those in master.
2009-06-22 11:51:19 -04:00
Nick Mathewson
659fc13da5
Change proxy-address type to tor_addr_t to allow ipv6 proxies.
2009-06-19 12:48:00 -04:00
Nick Mathewson
015189b5df
Move SOCKS reason-decoding switches into reasons.c
2009-06-19 12:40:23 -04:00
Christopher Davis
75472c19c3
Enable Tor to connect through SOCKS 4/5 proxies
...
Added a sanity check in config.c and a check in directory.c
directory_initiate_command_rend() to catch any direct connection attempts
when a socks proxy is configured.
2009-06-19 12:16:15 -04:00
Karsten Loesing
f266ecbeec
Better fix for 997.
2009-06-19 16:26:02 +02:00
Karsten Loesing
20883f5e83
Revert "Backport fix for bug 997."
...
This reverts commit 3847f54945
.
2009-06-19 15:46:13 +02:00
Nick Mathewson
df03d6eca8
Merge commit 'karsten/bug997-hidservfetch'
2009-06-16 16:26:02 -04:00
Karsten Loesing
3847f54945
Backport fix for bug 997.
...
Backporting 6a32beb
and ca8708a
.
2009-06-16 16:25:35 -04:00
Nick Mathewson
0d2976d64b
Merge commit 'origin/maint-0.2.1'
2009-06-16 16:18:16 -04:00
Nick Mathewson
7f8a6c5e92
Revise earlier check for correct IPv4 addr length to check for ==4.
...
We need this to match the check in connection_ap_handshake_socks_resolved().
Found by optimist.
2009-06-16 16:12:06 -04:00
Karsten Loesing
ca8708a9ce
Fix more of bug 997.
...
Fix refetching of hidden service descriptors when all introduction points
have turned out to not work.
2009-06-13 12:21:58 +02:00
Nick Mathewson
74bf885b2d
Whitespace and osx fixes on libevent2 patch.
2009-06-12 15:09:09 -04:00
Nick Mathewson
1e709c79d1
Isolate Libevent API dependency to just main.c and dns.c in src/or.
...
The rest of the code was only including event.h so that it could see
EV_READ and EV_WRITE, which we were using as part of the
connection_watch_events interface for no very good reason.
2009-06-12 14:27:53 -04:00
Nick Mathewson
33b1d714e7
Make Tor compile with Libevent 1.0 again.
2009-06-12 14:27:53 -04:00
Nick Mathewson
c0af3cdfb6
Move the Libvent setup logic into compat_libevent from config.
...
This has been some pretty ugly and voodoo-laden code. I've tried to
clean it up a bit, but more work probably remains.
2009-06-12 14:27:52 -04:00
Nick Mathewson
e5b88dc83f
Update Tor to use Libevent 2.0 APIs when available.
...
This patch adds a new compat_libevent.[ch] set of files, and moves our
Libevent compatibility and utilitity functions there. We build them
into a separate .a so that nothing else in src/commmon depends on
Libevent (partially fixing bug 507).
Also, do not use our own built-in evdns copy when we have Libevent
2.0, whose evdns is finally good enough (thus fixing Bug 920).
2009-06-12 14:27:52 -04:00
Roger Dingledine
845326317d
Check answer_len in the remap_addr case of process_relay_cell_not_open.
...
Fix an edge case where a malicious exit relay could convince a
controller that the client's DNS question resolves to an internal IP
address. Bug found and fixed by "optimist"; bugfix on 0.1.2.8-beta.
2009-06-12 11:22:54 -04:00
Roger Dingledine
cb1617f18e
Check answer_len in the remap_addr case of process_relay_cell_not_open.
...
Fix an edge case where a malicious exit relay could convince a
controller that the client's DNS question resolves to an internal IP
address. Bug found and fixed by "optimist"; bugfix on 0.1.2.8-beta.
2009-06-12 11:18:02 -04:00
Karsten Loesing
6a32beb877
Apply fix for bug 997.
...
Hidden service clients didn't use a cached service descriptor that
was older than 15 minutes, but wouldn't fetch a new one either. Now,
use a cached descriptor no matter how old it is and only fetch a new
one when all introduction points fail. Fix for bug 997. Patch from
Marcus Griep.
2009-06-12 11:39:35 +02:00
Karsten Loesing
77f5ad6b07
Restore changes from f79688d
that got lost somehow during a merge.
2009-06-12 02:05:21 +02:00
Nick Mathewson
358efe1eea
Merge commit 'origin/maint-0.2.1'
2009-06-08 00:01:31 -04:00
Nick Mathewson
20193fc7ab
Avoid a memory corruption problem related to "private" in DirPolicy.
...
This is a posible fix for bug 996.
2009-06-05 19:41:40 -04:00
Nick Mathewson
4945fee65a
Merge commit 'origin/maint-0.2.1'
2009-06-04 03:31:12 -04:00
Nick Mathewson
b262e76563
Fix gprof bottlenecks on exit nodes found by Jacob.
...
Apparently all the stuff that does a linear scan over all the DNS
cache entries can get really expensive when your DNS cache is very
large. It's hard to say how much this will help performance, since
gprof doesn't count time spent in OpenSSL or zlib, but I'd guess 10%.
Also, this patch removes calls to assert_connection_ok() from inside
the read and write callbacks, which are similarly unneeded, and a
little costlier than I'm happy with.
This is probably worth backporting to 0.2.0.
2009-06-03 13:52:03 -04:00
Nick Mathewson
77ffd6b2a7
Merge commit 'origin/maint-0.2.1'
2009-05-31 19:17:22 -04:00
Nick Mathewson
c4c7dcd453
Do not report a node as a "chosen exit" when it is not in fact an exit.
...
Provide a useful warning when launch_circuit tries to make us use a
node we don't want to use. Just give an info message when this is a
normal and okay situation. Fix for logging issues in bug 984.
2009-05-31 19:15:36 -04:00
Nick Mathewson
e8ac2a8477
Make the second argument to routerset_contains_extendinfo const
2009-05-31 19:15:36 -04:00
Nick Mathewson
e84ddead34
Merge branch 'hardware_accel_improvements'
2009-05-31 13:36:50 -04:00
Nick Mathewson
3ca10bb62f
Fix-ups for dynamic OpenSSL engine patch.
...
Include a changelog, and don't try to compare strings with !=.
2009-05-31 13:36:18 -04:00
Nick Mathewson
fd992deeea
Don't attempt to log messages to a controller from a worker thread.
...
This patch adds a function to determine whether we're in the main
thread, and changes control_event_logmsg() to return immediately if
we're in a subthread. This is necessary because otherwise we will
call connection_write_to_buf, which modifies non-locked data
structures.
Bugfix on 0.2.0.x; fix for at least one of the things currently
called "bug 977".
2009-05-30 18:16:24 -04:00
Karsten Loesing
dfebc88d56
Warn and exit when we are configured to measure GeoIP statistics, but have no GeoIP database.
2009-05-30 23:35:21 +02:00
Nick Mathewson
d66c379765
Clean up a bit of C logic, and fix an erroneous warning.
...
(Simplify "if (cond) return 1; return 0;" to "return cond;", and don't
give a warning when we start with accounting on but dirport off.)
2009-05-29 23:28:01 -04:00
Sebastian Hahn
e70fe116d3
Consider *ListenAddress when warning about low ports and hibernation
...
Tas (thanks!) noticed that when *ListenAddress is set, Tor would
still warn on startup when *Port is low and hibernation is active.
The patch parses all the *ListenAddress lines, and checks the
ports. Bugfix on 0.2.1.15-rc
2009-05-30 03:09:39 +02:00
Nick Mathewson
3599e9051e
Restore changes from Karsten's "Remove unused rendversion parameters".
...
These were made undone by a merge.
2009-05-28 16:19:05 -04:00
Nick Mathewson
4913a8c4ba
Merge commit 'origin/maint-0.2.1'
2009-05-28 16:07:49 -04:00
Nick Mathewson
873faffb5a
Two more spelling fix fixes.
2009-05-28 12:26:17 -04:00
Nick Mathewson
260de44313
Fixes to spelling fixes. Thanks, Roger!
2009-05-28 12:22:48 -04:00
Nick Mathewson
cb18fc2190
Merge commit 'origin/maint-0.2.1'
2009-05-27 18:12:18 -04:00
Karsten Loesing
d49711e52c
Fix unit tests that were broken after last fix of #932 .
...
With the last fix of task 932 (5f03d6c
), client requests are only added to
the history when they happen after the start of the current history. This
conflicts with the unit tests that insert current requests first (defining
the start of the client request history) followed by requests in the past.
The fix is to insert requests in chronological order in the unit tests.
2009-05-27 18:04:55 -04:00
Nick Mathewson
ec7e054668
Spell-check Tor.
2009-05-27 17:55:51 -04:00
Nick Mathewson
0e2618dd54
Merge commit 'origin/maint-0.2.1'
2009-05-27 14:20:18 -04:00
Nick Mathewson
181674e9bb
Fix a signed/unsigned comparison warning
2009-05-27 14:19:24 -04:00
Karsten Loesing
54c97c9133
Change the way how directories that are configured with --enable-geoip-stats write geoip stats to disk.
...
- Write geoip stats to disk every 24 hours, not every hour.
- Remove configuration options and define reasonable defaults.
- Clear history of client requests every 24 hours (which wasn't done at
all before).
2009-05-27 19:13:31 +02:00
Karsten Loesing
02a417d4e0
Improve documentation for the last fix of bug 932.
2009-05-27 19:10:55 +02:00
Karsten Loesing
5f03d6c547
Fix bug 932 even more.
...
Ignore connections two hours after switching from bridge to relay or back.
2009-05-27 19:10:54 +02:00
Karsten Loesing
bf7e5d6553
Some cleanups on geoip.c.
...
Use two bitfields for last_seen and action in clientmap_entry_t rather
than having both share a 32-bit. Also, documentation fixes.
2009-05-26 21:32:56 +02:00
Nick Mathewson
b805e5debf
Merge commit 'origin/maint-0.2.1' into master.
...
Conflicts:
ChangeLog
configure.in
contrib/tor-mingw.nsi.in
src/win32/orconfig.h
2009-05-25 16:43:52 -04:00
Nick Mathewson
99c315a473
Use tor_socket_strerror in eventdns.c. Fixes bug 987.
2009-05-25 16:38:50 -04:00
Nick Mathewson
3b47be20ec
Update newer control_event_stream_bandwidth code to revised control impl
2009-05-25 12:55:59 -04:00
Nick Mathewson
b998fed9b9
Remove support for events without the extended format or long names.
...
Supporting the old formats made our code complex; running without them
has been discouraged since 0.2.1.x.
2009-05-25 12:52:25 -04:00
Roger Dingledine
05e55d82b6
simplify options_act()
2009-05-24 20:31:50 -04:00
Roger Dingledine
9a4b0446b0
fix a comment
2009-05-24 20:31:50 -04:00
Sebastian Hahn
f26abf5f54
fix codestyle issues
2009-05-24 02:42:37 +02:00
Martin Peck
7703b887f5
Add support for dynamic OpenSSL hardware crypto acceleration engines.
2009-05-23 16:42:44 -07:00
Jacob Appelbaum
75f963e951
Log the number and size of DNS cache entries on SIGUSR1.
...
Specifically if you send SIGUSR1, it will add two lines to the log file:
May 22 07:41:59.576 [notice] Our DNS cache has 3364 entries.
May 22 07:41:59.576 [notice] Our DNS cache size is approximately 1022656
bytes.
[tweaked a bit by nickm]
2009-05-22 23:33:44 -04:00
Nick Mathewson
a3fadddd4a
Improved bug-957 fix for 0.2.2.
...
Really, our idiocy was that we were calling event_set() on the same
event more than once, which sometimes led to us calling event_set() on
an event that was already inserted, thus making it look uninserted.
With this patch, we just initialize the timeout events when we create
the requests and nameservers, and we don't need to worry about
double-add and double-del cases at all.
2009-05-22 14:06:39 -04:00
Nick Mathewson
4201a3735f
Merge commit 'origin/maint-0.2.1'
2009-05-22 11:56:51 -04:00
Nick Mathewson
1d002a25a2
Finish up the 0.2.1 version of the bug 957 fix.
...
Basically, all this means is downgrading our warning messages to debug
messages, since the bug workaround code here is adequate to stop the
bug.
2009-05-22 11:47:09 -04:00
phobos
678092750b
fix a spelling mistake in config.c for "contries"
2009-05-22 01:26:17 -04:00
Nick Mathewson
79762aac17
Merge commit 'origin/maint-0.2.1'
2009-05-18 16:17:12 -04:00
Nick Mathewson
34030a3d23
Possible fix for crash bug related to event timeouts. [Bug 957]
...
If we ever add an event, then set it, then add it again, there will be
now two pointers to the event in the event base. If we delete one and
free it, the first pointer will still be there, and possibly cause a
crash later.
This patch adds detection for this case to the code paths in
eventdns.c, and works around it. If the warning message ever
displays, then a cleverer fix is in order.
{I am not too confident that this *is* the fix, since bug 957 is very
tricky. If it is, it is a bugfix on 0.2.0.}
2009-05-18 16:12:39 -04:00
Nick Mathewson
14a549552a
Merge branch 'maint-0.2.1' into merge_tmp
2009-05-17 02:11:34 -04:00
Roger Dingledine
2fa5410218
Fix a memory leak when v3 directory authorities load their keys
...
and cert from disk. Bugfix on 0.2.0.1-alpha.
2009-05-17 02:04:59 -04:00
Nick Mathewson
c0515b307c
Fix valgrind error when marking a descriptor as never-downloadable.
...
When we got a descriptor that we (as an authority) rejected as totally
bad, we were freeing it, then using the digest in its RAM to look up its
download status. Caught by arma with valgrind. Bugfix on 0.2.1.9-alpha.
2009-05-17 02:01:09 -04:00
Mike Perry
29bf271ba2
Fix misreporting of stream bandwidths.
2009-05-14 17:52:26 -04:00
potentiate
1b61c8bf37
Fix misreporting of stream bandwidths.
2009-05-14 17:50:06 -04:00
Nick Mathewson
479d21254a
Merge commit 'origin/maint-0.2.1'
2009-05-13 16:55:42 -04:00
Nick Mathewson
a38ed1a235
Use | with flags, not +.
2009-05-13 16:45:59 -04:00
Karsten Loesing
9e97067b2f
Prevent bridges from publishing router descriptors.
...
Bridges are not supposed to publish router descriptors to the directory
authorities. It defeats the point of bridges when they are included in the
public relay directory.
This patch puts out a warning and exits when the node is configured as
a bridge and to publish v1, v2, or v3 descriptors at the same time.
Also fixes part of bug 932.
2009-05-13 16:45:59 -04:00
Nick Mathewson
fc091e8a96
When our bridge status changes, forget old geoip data.
...
This fixes bug 932, where all of our usage totals for users when we
were a regular server would get included in the extrainfo document.
2009-05-13 16:45:59 -04:00
Nick Mathewson
a271c5370a
Merge commit 'origin/maint-0.2.1' into m3
2009-05-12 14:04:51 -04:00
Sebastian Hahn
a28215a150
Warn when hibernation and low-port on non-windows is configured
...
This addresses the first part of bug 918. Users are now warned when
they try to use hibernation in combination with a port below 1024
when they're not on Windows. We don't want to die here, because
people might run Tor as root, use a capabilities system or some
other platform that will allow them to re-attach low ports.
Wording suggested by Marian
2009-05-12 20:00:00 +02:00
Nick Mathewson
5fc08d1920
Merge 0.2.1 onto the development branch.
...
Manually resolved conflicts on version number; all else applied cleanly.
2009-05-12 13:57:58 -04:00
Nick Mathewson
88d81ead83
Better debugging output for bug 977 case.
...
(Don't crash immediately if we have leftover chunks to free after
freeing chunks in a buffer freelist; instead log a debugging message
that might help.)
2009-05-12 13:54:21 -04:00
Nick Mathewson
fdbdb4dc15
Include the *_sha1.i files in their own *_codedigest.c files.
...
This way we do not need to rebuild util.c and/or config.c whenever
any unrelated source file in src/common or src/or has changed.
2009-05-08 12:35:36 -04:00
Karsten Loesing
948835c680
Remove unused rendversion parameters. YAGNI.
2009-05-04 13:46:30 -04:00
Karsten Loesing
f79688ddef
Clients do not request version 0 hidserv descs anymore.
2009-05-04 13:46:30 -04:00
Karsten Loesing
0d68da2381
Drop version 0 hidserv support on service side.
2009-05-04 13:46:29 -04:00
Karsten Loesing
9b32e8c141
Update copyright to 2009.
2009-05-04 11:28:27 -04:00
Karsten Loesing
4ebcc4da34
Update copyright to 2009.
2009-05-02 22:00:54 +02:00
Karsten Loesing
e25fdce900
Documentation fix.
2009-05-02 21:47:03 +02:00
Nick Mathewson
596e852c31
Remove the long-deprecated GETINFO addr-mappings/
2009-05-01 06:25:18 -04:00
Nick Mathewson
6ac3a8b0cd
Command-line option to dump SHA1 digests of all source files.
...
Now, when you call tor --digests, it dumps the SHA1 digest of each
source file that Tor was built with. We support both 'sha1sum' and
'openssl sha1'. If the user is building from a tarball and they
haven't edited anything, they don't need any program that calculates
SHA1. If they _have_ modified a file but they don't have a program to
calculate SHA1, we try to build so we do not output digests.
2009-04-29 14:46:04 -04:00
Sebastian Hahn
5675be39a0
Return -1 in the error case from read_bandwidth_usage.
...
svn:r19367
2009-04-23 22:04:10 +00:00
Karsten Loesing
4e6120cffb
Documentation fix.
...
svn:r19337
2009-04-16 08:25:36 +00:00
Roger Dingledine
39ceda7e05
Raise the minimum bandwidth to be a relay from 20000 bytes to 20480
...
bytes (aka 20KB/s), to match our documentation. Also update
directory authorities so they always assign the Fast flag to relays
with 20KB/s of capacity. Now people running relays won't suddenly
find themselves not seeing any use, if the network gets faster
on average.
svn:r19305
2009-04-12 07:56:58 +00:00
Roger Dingledine
c024928b63
For belt-and-suspenders, relays that don't set Address in their config
...
now avoid using begin_dir for all direct connections.
svn:r19296
2009-04-11 19:40:42 +00:00
Roger Dingledine
419d158c74
make it compile too
...
svn:r19295
2009-04-11 19:22:38 +00:00
Roger Dingledine
9c6b135e1a
play make-believe that addr isn't a uint32_t
...
svn:r19293
2009-04-11 18:21:18 +00:00
Roger Dingledine
fa003351ae
fix the same bug in two more locations (thanks to lark for prodding
...
me further)
svn:r19292
2009-04-11 18:19:57 +00:00
Roger Dingledine
8d82583d97
Finally fix the bug where dynamic-IP relays disappear when their
...
IP address changes: directory mirrors were mistakenly telling them
their old address if they asked via begin_dir, so they never got
an accurate answer about their new address, so they just vanished
after a day. Should fix bugs 827, 883, and 900 -- but alas, only
after every directory mirror has upgraded.
svn:r19291
2009-04-11 18:09:15 +00:00
Roger Dingledine
235a1196b3
only log that at loglevel notice if there's a problem with the
...
version. otherwise there's no reason to tell the user we're
doing behind-the-scenes cleaning.
svn:r19288
2009-04-11 12:06:27 +00:00
Roger Dingledine
48118b228e
Clients replace entry guards that were chosen more than a few months
...
ago. This change should significantly improve client performance,
especially once more people upgrade, since relays that have been
a guard for a long time are currently overloaded.
svn:r19287
2009-04-11 12:00:18 +00:00
Roger Dingledine
7e32f0d5c8
fix a comment
...
svn:r19262
2009-04-11 00:40:11 +00:00
Roger Dingledine
93c0a81491
If the bridge config line doesn't specify a port, assume 443.
...
This makes bridge lines a bit smaller and easier for users to
understand.
Also, remove a duplicate changelog entry from the past.
svn:r19260
2009-04-11 00:16:05 +00:00
Sebastian Hahn
8390787a5f
Directory authorities should accept a descriptor as changed when the relay operator changed the bandwithrate or bandwithburst settings.
...
svn:r19259
2009-04-11 00:12:52 +00:00
Roger Dingledine
c4145e5390
commit sebastian's patch to not require contactinfo when testingtornetwork
...
is set
svn:r19257
2009-04-10 07:02:19 +00:00
Nick Mathewson
d50501e5ed
Fix a few crash bugs related to malormed descriptors. Lark found one; fuzzing found the rest.
...
svn:r19250
2009-04-09 19:58:16 +00:00
Roger Dingledine
ee58153b50
log more verbosely when we accept or decline a router descriptor,
...
to help track whether we received them when a relay operator claims
they got sent.
svn:r19213
2009-04-01 13:02:04 +00:00
Roger Dingledine
b4ceb830e0
if a directory authority declines our server descriptors because it's
...
not new enough, write that in the logs. might be helpful one day.
svn:r19195
2009-03-31 05:24:36 +00:00
Roger Dingledine
7170c5b4f8
Limit uploaded directory documents to be 16M rather than 500K.
...
The directory authorities were refusing v3 consensus votes from
other authorities, since the votes are now 504K. Fixes bug 959;
bugfix on 0.0.2pre17 (where we raised it from 50K to 500K ;).
svn:r19194
2009-03-31 04:03:37 +00:00
Roger Dingledine
793f1ce007
Directory authorities should never send a 503 "busy" response to
...
requests for votes or keys. Bugfix on 0.2.0.8-alpha; exposed by
bug 959.
svn:r19189
2009-03-31 01:29:07 +00:00
Nick Mathewson
b5135f1190
Whitespace cleanup.
...
svn:r19080
2009-03-18 19:30:37 +00:00
Nick Mathewson
c2f8d97212
Do not generate the non-verbose circuit path when generating a circuit event unless we will use it.
...
svn:r19079
2009-03-18 19:30:34 +00:00
Nick Mathewson
a335b43a67
If we have a routerstatus but no routerinfo to name a router, use the routerstatus instead when generating circuit events. Also refactor a little.
...
svn:r19078
2009-03-18 19:30:30 +00:00
Nick Mathewson
e591aafca4
Add a function to get a LongName from a routerstatus. Needed for partial bug 941 fix.
...
svn:r19077
2009-03-18 19:30:26 +00:00
Nick Mathewson
30ec1d1d50
Don't double-free successful_uploads.
...
When we used smartlist_free to free the list of succesful uploads
because we had succeeded in uploading everywhere, we did not actually
set the successful_uploads field to NULL, so later it would get freed
again in rend_service_descriptor_free. Fix for bug 948; bug
introduced in 0.2.1.6-alpha.
svn:r19073
2009-03-18 14:35:24 +00:00
Nick Mathewson
ad7ebec24c
Free very-old descriptors that we do not want to add. Fix for bug 672. Backport candidate
...
svn:r19057
2009-03-16 18:47:45 +00:00
Karsten Loesing
309080b6aa
Make directory usage recording work again. Fixing bug introduced in r17009.
...
svn:r18924
2009-03-11 22:08:37 +00:00
Roger Dingledine
4e094ddc4d
when we get an unrecognized relay streamid, log it
...
svn:r18919
2009-03-11 20:51:47 +00:00
Roger Dingledine
4774e593b8
Bugfix on r17756:
...
Avoid trying to print raw memory to the logs when we decide to
give up on downloading a given relay descriptor. Bugfix on
0.2.1.9-alpha.
svn:r18831
2009-03-09 22:05:17 +00:00
Nick Mathewson
d40cbda2cd
Log cached-at-exit exit policies to try to fix bug 672.
...
svn:r18827
2009-03-09 15:53:37 +00:00
Roger Dingledine
5d50bc3e1d
We were already rejecting relay begin cells with destination port
...
of 0. Now also reject extend cells with destination port or address
of 0. Suggested by lark.
svn:r18812
2009-03-09 00:53:42 +00:00
Nick Mathewson
cbbc0c9c86
Actually use tor_sscanf() to parse untrusted input.
...
svn:r18761
2009-03-03 18:02:36 +00:00
Nick Mathewson
26d83fc04c
Add a simple locale-independent no-surprises sscanf replacement.
...
tor_sscanf() only handles %u and %s for now, which will make it
adequate to replace sscanf() for date/time/IP parsing. We want this
to prevent attackers from constructing weirdly formed descriptors,
cells, addresses, HTTP responses, etc, that validate under some
locales but not others.
svn:r18760
2009-03-03 18:02:31 +00:00
Nick Mathewson
9f8d095e0f
Add and use set/get_uint64 on onion tags. [bug 604; backportable]
...
It seems that 64-bit Sparc Solaris demands 64-bit-aligned access to
uint64_t, but does not 64-bit-align the stack-allocated char array we
use for cpuworker tags. So this patch adds a set/get_uint64 pair, and
uses them to access the conn_id field in the tag.
svn:r18743
2009-03-02 19:15:05 +00:00
Nick Mathewson
27c3b43817
Fix one case of bug 929.
...
svn:r18683
2009-02-23 20:04:51 +00:00
Nick Mathewson
c7f3416a9e
Add some debugging code to try to catch the likely cause of bug 929
...
svn:r18682
2009-02-23 18:57:21 +00:00
Nick Mathewson
261670b57e
Patch from lark: if we get two extend cells for the same circuit id, drop the second. Previously, we had leaked an extend_info if the target connection was not open when the second arrived.
...
svn:r18668
2009-02-21 19:07:05 +00:00
Nick Mathewson
192b701fac
Patch from lark: drop BEGIN cells from a rendevous circuit if they do not originate from the end of the circuit.
...
svn:r18667
2009-02-21 19:07:01 +00:00
Roger Dingledine
1b6688786c
send the newconsensus event if the controller has asked for newconsensus
...
events, not if he's asked for ns events
svn:r18656
2009-02-20 10:25:08 +00:00
Nick Mathewson
b13496b62a
Possible fix for broken country settings in ExcludeExitNodes.
...
It turns out that we weren't updating the _ExcludeExitNodesUnion set's
country numbers when we reloaded (or first loaded!) the IP-to-country
file. Spotted by Lark. Bugfix on 0.2.1.6-alpha.
svn:r18575
2009-02-16 15:15:06 +00:00
Roger Dingledine
d3289c6b87
docdoc and changelog for r18556
...
svn:r18566
2009-02-16 10:39:10 +00:00
Roger Dingledine
d13cc5f989
and list the new event here too
...
svn:r18557
2009-02-16 06:18:44 +00:00
Roger Dingledine
9ded433abb
new controller event NEWCONSENSUS that lists the networkstatus
...
lines for every recommended relay.
still needs docdoc and changelog entry.
svn:r18556
2009-02-16 06:18:03 +00:00
Roger Dingledine
c8474f9d93
If the controller claimed responsibility for a stream, but that
...
stream never finished making its connection, it would live
forever in circuit_wait state. Now we close it after SocksTimeout
seconds. Bugfix on 0.1.2.7-alpha; reported by Mike Perry.
svn:r18516
2009-02-13 04:11:14 +00:00
Nick Mathewson
65dc835773
Revert an erroneous part of the non-fix to bug 326, and add comments to explain why it was erroneous.
...
svn:r18494
2009-02-11 17:23:11 +00:00
Nick Mathewson
6e4afe6f13
I worry that the CLEAR() macro in eventdns.c is hiding bugs. That is sad, because it was meant to make them more detectable. Change it to change stuff to garbage rather than to 0. If no bugs turn up, we can remove it in 0.2.2.x
...
svn:r18493
2009-02-11 17:22:34 +00:00
Nick Mathewson
8d9aadf57c
Port some mostly cosmetic eventdns changes from libevent
...
svn:r18492
2009-02-11 17:22:29 +00:00
Nick Mathewson
356b40f58b
Clients and non-caches do not need to cache unrecognized authority certificates.
...
svn:r18480
2009-02-10 20:28:30 +00:00
Karsten Loesing
34b285b09f
As an exit node, scrub the IP address to which we are exiting in the logs. Bugfix on 0.2.1.8-alpha.
...
svn:r18477
2009-02-10 18:52:47 +00:00
Nick Mathewson
91fece7be2
Don't extend introduction circuits indefinitely.
...
Doing so could run you out of relay_early cells and give you a
senselessly long circuit. Patch from Karsten; may fix bug 878.
svn:r18459
2009-02-10 00:45:30 +00:00
Nick Mathewson
6f90f6f2a2
Retry circuits if the exit node is optional and nonexistant.
...
Previously, when we had the chosen_exit set but marked optional, and
we failed because we couldn't find an onion key for it, we'd just give
up on the circuit. But what we really want to do is try again, without
the forced exit node.
Spotted by rovv. Another case of bug 752. I think this might be
unreachable in our current code, but proposal 158 could change that.
svn:r18451
2009-02-09 16:55:48 +00:00
Nick Mathewson
c7315e65ae
Disable KQUEUE from inside Tor if the OSX version is prior to 10.4.0
...
svn:r18450
2009-02-09 16:07:02 +00:00
Roger Dingledine
28d97f8262
uh, and commit the patch too.
...
svn:r18423
2009-02-09 03:13:14 +00:00
Nick Mathewson
fe987d3a17
Remove some deadcode and use tor_inet_aton uniformly.
...
svn:r18422
2009-02-09 03:13:05 +00:00
Nick Mathewson
2ebdf91a52
Fix a remote-crash bug. This will need a patch release.
...
svn:r18421
2009-02-09 03:13:02 +00:00
Roger Dingledine
3845087b04
decide that mikeperry's bug should be fixed in 0.2.1.x
...
(but not in 0.2.1.12-alpha, sorry)
svn:r18417
2009-02-09 02:50:19 +00:00
Roger Dingledine
decdf4537a
If we're using bridges and our network goes away, be more willing
...
to forgive our bridges and try again when we get an application
request. Bugfix on 0.2.0.x.
svn:r18396
2009-02-04 23:27:35 +00:00
Roger Dingledine
45aeabf8f7
make a note about a clause in connection_edge.c that is probably
...
redundant, and is definitely confusing. we should take it out
in 0.2.2.x and see who squeaks.
svn:r18383
2009-02-04 08:27:36 +00:00
Nick Mathewson
261f49fe26
Fix a possible cause of bug 915 when parsing multiple votes one of which was bad. Bugfix on 0.2.0.8-alpha.
...
svn:r18354
2009-01-31 18:27:38 +00:00
Nick Mathewson
0f2e171653
fix a wide line.
...
svn:r18341
2009-01-30 15:23:44 +00:00
Nick Mathewson
e1f03572ca
Support setting serverdnsrandomizecase during sighup. Backportable, unless too trivial.
...
svn:r18307
2009-01-28 19:53:03 +00:00
Nick Mathewson
f78793879d
Fix a race condition on nameserver reconfiguration.
...
This resolves bug 526, wherein we would crash if the following
events occurred in this order:
A: We're an OR, and one of our nameservers goes down.
B: We launch a probe to it to see if it's up again. (We do this hourly
in steady-state.)
C: Before the probe finishes, we reconfigure our nameservers,
usually because we got a SIGHUP and the resolve.conf file changed.
D: The probe reply comes back, or times out. (There is a five-second
window for this, after B has happens).
IOW, if one of our nameservers is down and our nameserver
configuration has changed, there were 5 seconds per hour where HUPing
the server was unsafe.
Bugfix on 0.1.2.1-alpha. Too obscure to backport.
svn:r18306
2009-01-28 18:26:20 +00:00
Nick Mathewson
e06de61d84
Don't obsolete a very-new connection for having no circuits yet.
...
This fixes the last known case of bug 891, which could happen if two
hosts, A and B, disagree about how long a circuit has been open,
because of clock drift of some kind. Host A would then mark the
connection as is_bad_for_new_circs when it got too old and open a new
connection. In between when B receives a NETINFO cell on the new
conn, and when B receives a conn cell on the new circuit, the new
circuit will seem worse to B than the old one, and so B will mark it
as is_bad_for_new_circs in the second or third loop of
connection_or_group_set_badness().
Bugfix on 0.1.1.13-alpha. Bug found by rovv.
Not a backport candidate: the bug is too obscure and the fix too tricky.
svn:r18303
2009-01-28 17:36:41 +00:00
Nick Mathewson
0d5f4d4e73
Remove some dead code.
...
svn:r18301
2009-01-28 17:36:34 +00:00
Nick Mathewson
8027c8c6dd
Forward-port: Fix bug 893: check AP connections for markedness before expiring them.
...
svn:r18299
2009-01-28 16:30:06 +00:00
Nick Mathewson
ef001cf85d
Actually send the extra_headers content in write_http_response_header_impl. This make X-Descriptor-Now-New get sent. Bugfix on 0.2.0.10-alpha. Spotted by "multiplication".
...
svn:r18297
2009-01-28 16:06:46 +00:00
Roger Dingledine
9fdae765e3
clean up r18287
...
svn:r18288
2009-01-28 07:16:22 +00:00
Roger Dingledine
edff606317
patch from matt to implement 'getinfo status/clients-seen'
...
svn:r18287
2009-01-28 06:50:36 +00:00
Roger Dingledine
59f57a0117
gah. yet another place that needs to be edited when we add
...
a new event. what a mess.
svn:r18277
2009-01-27 04:43:43 +00:00
Nick Mathewson
25c6ff6f55
Support 64-bit time_t. Patch from Matthias Drochner. Partial backport candidate.
...
svn:r18234
2009-01-22 16:28:12 +00:00
Nick Mathewson
8ebceeb352
Make sure that even in the weird fiddly paths that lead to init_keys,
...
crypto_global_init gets called. Also have it be crypto_global_init
that calls crypto_seed_rng, so we are not dependent on OpenSSL's
RAND_poll in these fiddly cases.
Should fix bug 907. Bugfix on 0.0.9pre6. Backport candidate.
svn:r18210
2009-01-21 15:38:39 +00:00
Roger Dingledine
a5a6b9a08a
Let controllers actually ask for the "clients_seen" event. Bugfix
...
on 0.2.1.10-alpha; reported by Matt Edman.
svn:r18201
2009-01-21 03:24:27 +00:00
Nick Mathewson
87124f54d0
This patch changes the default location where config and data files
...
are stored when the --enable-local-appdata option is configured. This
changes the Windows path from %APPDATA% to a host local
%USERPROFILE%\Local Settings\Application Data\ path (aka,
LOCAL_APPDATA).
Patch from coderman.
svn:r18122
2009-01-15 23:07:11 +00:00
Nick Mathewson
a899f5eaf2
make an assert tighter and replace another with an if.
...
svn:r18102
2009-01-14 06:36:33 +00:00
Nick Mathewson
6bf5d49b8a
Now that we can hit the end of router_rebuild_store before chunk_list is set, we need to test it before freeing it.
...
svn:r18101
2009-01-14 06:36:30 +00:00
Nick Mathewson
d7be03427d
Refactor MIN_IPS_TO_NOTE_* macros in geoip.c: simplify code.
...
It was dumb to have an "announce the value if it's over 0" version of
the code coexisting with an "announce the value if it's at least N"
version. Retain the latter only, with N set to 1.
Incidentally, this should fix a Coverity REVERSE_INULL warning.
svn:r18100
2009-01-14 06:20:57 +00:00
Nick Mathewson
2aaf71826d
Fix a compile warning on win32.
...
svn:r18099
2009-01-14 04:03:24 +00:00
Karsten Loesing
42c824b405
True, 17 is greater than 0. But this applies to 4111 as well.
...
svn:r18097
2009-01-13 15:02:32 +00:00
Nick Mathewson
a33452c401
Fix up (I hope) most ot the things that coverity suddenly claimed were REVERSE_INULL. This is what we get for bragging about being down to 0 issues.
...
svn:r18096
2009-01-13 14:43:51 +00:00
Nick Mathewson
c32a4ce6b3
Do the tor_assert hack everywhere in test_crypto_aes_iv.
...
svn:r18095
2009-01-13 14:43:46 +00:00
Nick Mathewson
dbc8a44bae
Fix ServerDNSRandomizeCase so that setting it to 0 works.
...
Bugfix on 0.2.1.7-alpha. Backport candidate. Fixes bug 905.
svn:r18063
2009-01-10 14:38:14 +00:00
Nick Mathewson
a0a5440826
Make the last bunch of libevent version detection silliness work on macosx.
...
svn:r18015
2009-01-07 21:13:02 +00:00
Nick Mathewson
a6504cdea7
Check that Libevent header version matches Libevent library version.
...
Unfortunately, old Libevents don't _put_ a version in their headers, so
this can get a little tricky. Fortunately, the only binary-compatibility
issue we care about is the size of struct event. Even more fortunately,
Libevent 2.0 will let us keep binary compatiblity forever by letting us
decouple ourselves from the structs, if we like.
svn:r18014
2009-01-07 21:05:02 +00:00
Roger Dingledine
c123163043
Discard router descriptors as we load them if they are more than
...
five days old. Otherwise if Tor is off for a long time and then
starts with cached descriptors, it will try to use the onion
keys in those obsolete descriptors when building circuits. Bugfix
on 0.2.0.x. Fixes bug 887.
svn:r17993
2009-01-07 02:13:42 +00:00
Roger Dingledine
18ffea77ae
actually find the right identity_digest to blame when we get
...
a destroy cell from our first hop.
svn:r17991
2009-01-07 00:30:12 +00:00
Roger Dingledine
bf33182459
well, that was a disaster. this time for sure.
...
svn:r17989
2009-01-06 22:20:31 +00:00
Roger Dingledine
c052494a4f
no actual changes besides a seg fault on startup, i meant
...
svn:r17986
2009-01-06 21:42:05 +00:00
Roger Dingledine
cdda852cec
simplify. no actual changes i think. ;)
...
svn:r17985
2009-01-06 21:31:46 +00:00
Roger Dingledine
b36a98ff5a
When our circuit fails at the first hop (e.g. we get a destroy
...
cell back), avoid using that OR connection anymore, and also
tell all the one-hop directory requests waiting for it that they
should fail. Bugfix on 0.2.1.3-alpha.
svn:r17984
2009-01-06 21:28:48 +00:00
Nick Mathewson
462f64b6b9
Make outgoing DNS requests respect OutboundBindAddress.
...
Fixes the bug part of bug 789.
svn:r17983
2009-01-06 20:50:55 +00:00
Roger Dingledine
4f27e73aaa
clarify which relay gave us the good netinfo cell
...
svn:r17973
2009-01-06 19:21:47 +00:00
Roger Dingledine
68806c7fb7
When a relay gets a create cell it can't decrypt (e.g. because it's
...
using the wrong onion key), we were dropping it and letting the
client time out. Now actually answer with a destroy cell. Bugfix
on 0.0.2pre8.
svn:r17970
2009-01-06 19:03:15 +00:00
Roger Dingledine
0955a1b9e1
Jan 06 13:03:57.309 [info] networkstatus_set_current_consensus(): Loaded an obsolete consensus. Discarding.
...
Jan 06 13:03:57.309 [warn] Couldn't load consensus networkstatus from "bridge/cached-consensus"
doesn't need a real warn.
svn:r17969
2009-01-06 18:06:49 +00:00
Nick Mathewson
5e44581412
Clean up (and mark for 0.2.2.) comments relating to non-beauty of current bug-743 fix.
...
svn:r17966
2009-01-06 17:37:22 +00:00
Nick Mathewson
6f1ceaefaa
Slightly better messages on ControlListenAddress 0.0.0.0
...
svn:r17963
2009-01-06 16:57:42 +00:00
Roger Dingledine
e127072318
Prevent bridge relays from serving their 'extrainfo' document
...
to anybody who asks, now that extrainfo docs include potentially
sensitive aggregated client geoip summaries.
svn:r17958
2009-01-06 16:03:38 +00:00
Nick Mathewson
9abfb564a0
Make dirserv_get_routerdesc_fingerprints() treat extrainfos with send_unencrypted==0 correctly. Irrelevant, since we will soon never send them at all.
...
svn:r17953
2009-01-06 15:37:51 +00:00
Roger Dingledine
d95b63f1e4
Bugfix on r13098. Backport candidate.
...
When we made bridge authorities stop serving bridge descriptors over
unencrypted links, we also broke DirPort reachability testing for
bridges. So bridges with a non-zero DirPort were printing spurious
warns to their logs. Bugfix on 0.2.0.16-alpha. Fixes bug 709.
svn:r17945
2009-01-06 07:13:24 +00:00
Nick Mathewson
f772fc0c36
apply a variant of rovv's bug 872 patch, and document that we want a better solution for 0.2.2.x.
...
svn:r17924
2009-01-05 20:52:14 +00:00
Roger Dingledine
e3388230c4
Bridge relays that had DirPort set to 0 would stop fetching
...
descriptors shortly after startup, and then briefly resume
after a new bandwidth test and/or after publishing a new bridge
descriptor. Bridge users that try to bootstrap from them would
get a recent networkstatus but would get descriptors from up to
18 hours earlier, meaning most of the descriptors were obsolete
already. Reported by Tas; bugfix on 0.2.0.13-alpha.
svn:r17920
2009-01-05 18:54:11 +00:00
Roger Dingledine
9e75c06197
If the cached networkstatus consensus is more than five days old,
...
discard it rather than trying to use it. In theory it could
be useful because it lists alternate directory mirrors, but in
practice it just means we spend many minutes trying directory
mirrors that are long gone from the network. Helps bug 887 a bit;
bugfix on 0.2.0.x.
svn:r17917
2009-01-05 16:56:11 +00:00
Mike Perry
da430cfcf7
Preserve reporting of stream end reasons to the local control
...
port. They were lost in the changes for Proposal 148.
svn:r17911
2009-01-05 14:14:57 +00:00
Karsten Loesing
fe9790740f
Use doxygen-style comments instead of C-style comments.
...
svn:r17893
2009-01-04 23:44:43 +00:00
Nick Mathewson
743c6c8277
OpenBSD malloc.h believes that you should be able to detect headers with autoconf, or build without warnings, but not both. So never include malloc.h on OpenBSD. Backport candidate.
...
svn:r17891
2009-01-04 22:47:42 +00:00
Karsten Loesing
26482e855b
Document some variables used for generating statistics on usage of V0 hidden service directory authorities.
...
svn:r17890
2009-01-04 19:59:35 +00:00
Nick Mathewson
92ce533f71
Another round of downgrading removing or postponing XXXX021 issues. Some remain, though.
...
svn:r17888
2009-01-04 19:47:21 +00:00
Nick Mathewson
9c94b428d9
Fix the oldest bug in a while: stop accepting 1.2.3 as a valid IPv4 address on any platform.
...
svn:r17887
2009-01-04 19:47:17 +00:00
Nick Mathewson
360a059948
Fix an xxx021: do not remove routerinfos as too old and unlisted unless we have a consensus. Backport candidate.
...
svn:r17886
2009-01-04 19:47:12 +00:00
Nick Mathewson
c4b8fef362
Remove svn $Id$s from our source, and remove tor --version --version.
...
The subversion $Id$ fields made every commit force a rebuild of
whatever file got committed. They were not actually useful for
telling the version of Tor files in the wild.
svn:r17867
2009-01-04 00:35:51 +00:00
Nick Mathewson
9201586ed5
Another attempt at fixing coverity scan CID 361.
...
svn:r17863
2009-01-03 23:06:12 +00:00
Nick Mathewson
9c20441bcb
Only set sin_len/sin6_len when they exist.
...
svn:r17851
2009-01-02 20:57:10 +00:00
Roger Dingledine
89d268848f
take out my IMPOSSIBLE_TO_DOWNLOAD+1 hack
...
svn:r17850
2009-01-02 20:46:32 +00:00
Nick Mathewson
48f2ce298b
Try harder to make sure we zero-out the extraneous sockaddr fields and that we set sockaddr_len. Conceivably a backport candidate, though nothing has yet been sen to break.
...
svn:r17849
2009-01-02 20:39:38 +00:00
Nick Mathewson
b07baba879
Increment n_download_failures up to IMPOSSIBLE_TO_DOWNLOAD-1, not up to IMPOSSIBLE_TO_DOWNLOAD.
...
svn:r17835
2008-12-31 17:22:18 +00:00
Roger Dingledine
dfc6555ddd
switch over the bridge descriptor download mechanism to
...
use the same download mechanism as other places.
i had to make an ugly hack around "IMPOSSIBLE_TO_DOWNLOAD+1".
we should unhack that sometime.
svn:r17834
2008-12-31 14:19:57 +00:00
Roger Dingledine
9ea7e7f0cd
fix a bug in download failure logging; don't do this "stop
...
downloading forever" thing with bridge descriptor downloads.
svn:r17833
2008-12-31 14:11:46 +00:00
Karsten Loesing
9a04358d87
Debug code for task 878.
...
svn:r17828
2008-12-30 11:43:50 +00:00
Nick Mathewson
52932d6f1a
Remove some code that is #ifdefed out, and that we no longer seem to use, if we ever did.
...
svn:r17827
2008-12-30 04:16:49 +00:00
Nick Mathewson
ffe22fab9b
Indeed, arma was right. There was one ntohl too many in debug_ntop in eventdns.c
...
svn:r17826
2008-12-30 04:08:45 +00:00
Roger Dingledine
c190842a34
point out the bug location to nick. unless i'm wrong.
...
svn:r17825
2008-12-30 02:36:11 +00:00
Nick Mathewson
3a8a2cb2de
Downgrade some xxx021s, comment more on others, etc
...
svn:r17823
2008-12-29 20:17:24 +00:00
Nick Mathewson
8625297cee
Actually log reasons on unusable guards again.
...
svn:r17822
2008-12-29 20:17:20 +00:00
Nick Mathewson
d640e2ab00
Spec compliance: if weighted MTBF of a router is at least 5 days, always vote it as Stable.
...
svn:r17821
2008-12-29 20:17:18 +00:00
Nick Mathewson
f7fb1bf931
Refactor sockaddr family match check into a new function
...
svn:r17820
2008-12-29 19:57:17 +00:00
Nick Mathewson
83491796ee
Explain why the XXXX021 in connection_or.c was there, and explain why it doesn' actually need to get fixed in 0.2.1, I think.
...
svn:r17819
2008-12-29 19:57:13 +00:00
Nick Mathewson
45bd6c650d
Replace kludgy assert with something a little less awful, and avoid needless strlcpy in rend descriptor encoding.
...
svn:r17818
2008-12-29 19:57:08 +00:00
Nick Mathewson
76a2e11f91
Downgrade the last xxx021 in routerparse. The duplicate code stands for now.
...
svn:r17817
2008-12-29 19:57:04 +00:00
Nick Mathewson
c1c7f982d9
Do not not cannibalize a circuit that has run out of RELAY_EARLY cells. Partial bug 878 fix.
...
svn:r17815
2008-12-29 19:55:17 +00:00
Nick Mathewson
145ead96ed
Do not cannibalize a circuit that has run out of RELAY_EARLY cells. Partial bug 878 fix.
...
svn:r17814
2008-12-29 19:55:13 +00:00
Nick Mathewson
a332805a55
Extact parse-the-token-arguments to its own function, and change it to a single-pass algorithm. This simplifies the parsing code and speeds it up a little.
...
svn:r17812
2008-12-29 16:54:56 +00:00
Nick Mathewson
fa6e72dc4b
Remove a call to find_whitespace_eos that didn't actually do anything.
...
svn:r17811
2008-12-29 16:54:51 +00:00
Nick Mathewson
a42e82b0de
While I'm at it, refactor control.c a little so that the dead code no longer exists.
...
svn:r17810
2008-12-29 14:21:25 +00:00
Nick Mathewson
272b007268
coverity thinks it's dumb to check networkstatus_v2_list in one place and not another. Coverity has a point, even though the check may be redundant. CID 361.
...
svn:r17809
2008-12-29 14:06:47 +00:00
Nick Mathewson
2c4097e99d
More compilation tweaks on Android: fix two clear errors in our code that apparently the compiler cares about there.
...
svn:r17808
2008-12-29 04:01:58 +00:00
Nick Mathewson
e8a3fa91a6
Use a consistent naming standard for header file guard macros, taking care not to collide with any system headers. This tripped us up on Android.
...
svn:r17805
2008-12-29 02:21:02 +00:00
Nick Mathewson
46f8ef8116
Switch address comparisons in policies to be exact rather than semantic. Until we do ipv6 exit policies and until we know whether we even allow ::ffff:0:0/96 addresses, there is no point in doing "semantic" comparisons. This was also showing up on oprofile.
...
svn:r17803
2008-12-29 01:47:33 +00:00
Nick Mathewson
870fd18b8f
Refactor some exit-policy-related functions that showed up in oprofile.
...
Specifically, split compare_tor_addr_to_addr_policy() from a loop with a bunch
of complicated ifs inside into some ifs, each with a simple loop. Rearrange
router_find_exact_exit_enclave() to run a little faster. Bizarrely,
router_policy_rejects_all() shows up on oprofile, so precalculate it per
routerinfo.
svn:r17802
2008-12-29 01:47:28 +00:00
Nick Mathewson
ae71b52945
remove the responsibility for setting listensocklen to the function that made the sockaddr
...
svn:r17799
2008-12-27 15:46:13 +00:00
Roger Dingledine
365c72246c
partial move to letting bridge descriptor fetches use our new (well,
...
new from their perspective) directory download schedule abstraction.
not done yet, but i'd better get this out of my sandbox before nick
does another sweeping change. :)
svn:r17798
2008-12-27 07:30:47 +00:00
Roger Dingledine
5519e633ec
New controller event "clients_seen" to report a geoip-based summary
...
of which countries we've seen clients from recently. Now controllers
like Vidalia can show bridge operators that they're actually making
a difference.
svn:r17796
2008-12-27 06:50:07 +00:00
Nick Mathewson
0c5e03fa21
Remove a deprecated controller alias; make another one generate a warning.
...
svn:r17793
2008-12-27 00:20:08 +00:00
Nick Mathewson
a87335472c
Make connection_create_listener take a sockaddr_len, not just a sockaddr whose length we try to divine.
...
svn:r17792
2008-12-27 00:20:06 +00:00
Nick Mathewson
b3b14bf25d
Add some early checks to keep ipv6 addresses from failing by accident. Now, they fail on purpose, at least till 0.2.2.something.
...
svn:r17791
2008-12-26 22:51:25 +00:00
Nick Mathewson
61722638ea
Refactor tor_addr_compare_masked() so that CMP_SEMANTIC makes more sense, and has decent semantics for maskbits; and so that CMP_EXACT works right for bits==0.
...
svn:r17788
2008-12-26 20:37:18 +00:00
Nick Mathewson
f7adc017c4
Document and make more conservative the logic for picking the size of the bloom filter to use for retaining descriptors.
...
svn:r17786
2008-12-26 17:35:36 +00:00
Nick Mathewson
0f9f45ff33
Document the pk operation count fields in rephist.c, and move them into a struct for clarity, and change their type to what we actually want to cast them to.
...
svn:r17784
2008-12-26 17:35:12 +00:00
Nick Mathewson
df5e8f65bc
Add more missing documentation, and correct an error in container.c documentation: Don't introduce two parameters called n when you're calling an algorithm O(n).
...
svn:r17783
2008-12-26 17:35:08 +00:00
Roger Dingledine
2a42986c96
ok, fair enough, some of these variables were time_t's after all
...
svn:r17777
2008-12-25 20:16:22 +00:00
Roger Dingledine
4ff04fda77
so which is it? TIME_MAX or INT_MAX? pick INT_MAX for now.
...
svn:r17772
2008-12-25 15:42:03 +00:00
Roger Dingledine
a12c3f2c86
some fixes i found in my sandbox
...
svn:r17771
2008-12-25 15:37:47 +00:00
Nick Mathewson
272e64e674
Use the literal parse of an address in dns_resolve_impl if parsing the address as an ipv4 or ipv6 address _succeeded_. Not if it failed. Bug introduced in r17707 (post 0.2.1.8-alpha), and found by xiando.
...
svn:r17758
2008-12-24 02:38:07 +00:00
Nick Mathewson
df608fef45
Checkpoint my big bug-891 patch.
...
svn:r17757
2008-12-24 02:38:04 +00:00
Nick Mathewson
ac2f6b608a
Patch from Sebiastian for bug 888: mark a descriptor as "Impossible" if we reject it after downloading it so that we do not download it again
...
svn:r17756
2008-12-23 21:17:52 +00:00
Nick Mathewson
e6bf9fdf94
Remove bogus extern declaration for unused (and nonexistant) field from test.c
...
svn:r17755
2008-12-23 17:56:39 +00:00
Nick Mathewson
558e9899e4
Document most undocumented variables.
...
svn:r17754
2008-12-23 17:56:31 +00:00
Nick Mathewson
b4d387c28b
Make freelist_len in memarea.c static; document a few variables.
...
svn:r17741
2008-12-22 19:14:08 +00:00
Nick Mathewson
7d79bec54d
Expose bench_* functions via test cli
...
svn:r17740
2008-12-22 19:00:09 +00:00
Nick Mathewson
b68379b13b
Add DOCDOC entries for undocumented static and global variables.
...
svn:r17739
2008-12-22 19:00:05 +00:00
Nick Mathewson
43b111535a
Make doxygen not complain about the way we spell CRLFNUL in control.c
...
svn:r17735
2008-12-22 17:53:30 +00:00
Nick Mathewson
1e5f457461
Fix most DOCDOCs remaining and/or added by redox.
...
svn:r17734
2008-12-22 17:53:04 +00:00
Nick Mathewson
167d266dbf
Documentation and conformance for WRA_* returns.
...
shahn: "Add some documentation for the WRA_* family of functions, also make
sure that (hopefully) all functions that return was_router_added_t
don't return ints directly and that they don't refer to integers in
their documentation anymore."
svn:r17731
2008-12-22 16:37:20 +00:00
Nick Mathewson
1e666bfcc1
Partially apply bug 891 parch from forest: check EXTEND cell address against real_addr, not addr. I have questions about the rest of the patch: see the flyspray entry.
...
svn:r17730
2008-12-22 16:22:04 +00:00
Nick Mathewson
1725c0c8a5
Add DOCDOC comments for all undocumented functions. Add missing *s to other comments so that they will get recognized as doxygen.
...
svn:r17729
2008-12-22 14:56:28 +00:00
Nick Mathewson
55348884b5
Fix all of the doxygen warnings not pertaining to missing documentation.
...
svn:r17727
2008-12-22 14:56:16 +00:00
Roger Dingledine
df89748388
fix typo noticed by wood
...
svn:r17726
2008-12-22 09:52:56 +00:00
Roger Dingledine
0f6514e041
some windows users are outraged that tor refuses to work even
...
when their clock and date are correct, if their timezone is
totally wrong. now we at least tell them.
svn:r17725
2008-12-22 09:10:06 +00:00
Roger Dingledine
0c6ff7d990
the default should not be the notify the poster, unless something
...
more extreme happens. the default should be to be quiet unless
something more extreme happens.
at least, this doesn't generate complaints anymore. perhaps that
means it is working better? :)
svn:r17724
2008-12-22 06:25:49 +00:00
Roger Dingledine
7262bf5eab
fix a fun bug on r17656 that was making us send HTTP/1.0 404 as
...
the message body, no matter the message headers, when answering
a descriptor or extrainfo post request.
svn:r17723
2008-12-22 06:21:28 +00:00
Nick Mathewson
e36c7a74bd
Yet still more propagating of things that need to be was_router_added_t now.
...
svn:r17722
2008-12-22 05:21:49 +00:00
Nick Mathewson
98a376fab1
More propagating of things that need to be was_router_added_t now.
...
svn:r17721
2008-12-22 04:53:11 +00:00
Nick Mathewson
df22dcb602
WRA_MORE_SEVERE is not WRA_GET_MORE_SEVERE.
...
svn:r17720
2008-12-22 04:36:52 +00:00
Karsten Loesing
61055ae719
gabelmoo has a new IP address (once more).
...
svn:r17717
2008-12-22 00:48:10 +00:00
Nick Mathewson
029be5ad02
Move in-addr.arpa parsing and generation into address.c, and simplify the code that does it elsewhere. Incidentally, this lets exit servers answer requests for ip6.arpa addresses.
...
svn:r17707
2008-12-19 18:52:00 +00:00
Nick Mathewson
a259af179b
When we need to open a new origin circuit, log why.
...
svn:r17705
2008-12-19 18:51:49 +00:00
Nick Mathewson
16f1d4cb72
Doc RRS_DONT_REMOVE_OLD; improve router_rebuild_store documentation.
...
svn:r17704
2008-12-19 18:51:44 +00:00
Nick Mathewson
8c90a4b7ee
More approx_time() calls. Noted by forest.
...
svn:r17702
2008-12-19 18:51:35 +00:00
Nick Mathewson
c67bd80487
Make cell pools always-on.
...
svn:r17692
2008-12-18 17:28:50 +00:00
Nick Mathewson
c3e4b12e7f
Why were we using gettimeofday() in second_elapsed_callback? We were only ever looking at the tv_sec field.
...
svn:r17691
2008-12-18 17:19:23 +00:00
Nick Mathewson
bf80e2df3f
Replace calls to time(NULL) that occur on the order of once per read, one per write, or once per cell with calls to a function that looks at a cached value of time. This is tricksy to benchmark, since it will only help on systems where time() is a syscall and syscalls are relatively slow.
...
svn:r17690
2008-12-18 17:19:04 +00:00
Nick Mathewson
b91335117f
Document the purpose argument of circuit_find_to_cannibalize
...
svn:r17689
2008-12-18 17:18:14 +00:00
Nick Mathewson
122170c1d3
Downlgrade tweak, and answer lots of XXX021s. No actual code fixes in this patch.
...
svn:r17686
2008-12-18 16:11:24 +00:00
Nick Mathewson
c449e6e5be
whitespace fixes.
...
svn:r17683
2008-12-18 16:11:08 +00:00
Nick Mathewson
ecaee1d927
Remove fixed xxx020s; downgrade unfixed ones.
...
(The unfixed ones are being downgraded to regular XXXs mainly on the rationale that they don't seem to be exploding Tor, and they were apparently not showstoppers for 0.2.0.x-final.)
svn:r17682
2008-12-18 16:11:03 +00:00
Nick Mathewson
f9133f2528
Fix a memory leak of one address string per DNSPort request.
...
svn:r17681
2008-12-18 15:00:27 +00:00
Nick Mathewson
148e4e8837
Do not leak the DNS server port structure.
...
svn:r17680
2008-12-18 15:00:18 +00:00
Nick Mathewson
4911ec627b
Call release_lockfile() before exiting.
...
svn:r17679
2008-12-18 15:00:13 +00:00
Nick Mathewson
290b6f54a3
Make unit tests slower but more reliable by disabling an old optimization.
...
To turn it back on, re-define CACHE_GENERATED_KEYS option in test.c.
svn:r17677
2008-12-18 06:12:19 +00:00
Nick Mathewson
8ba2a15a49
Fix more leaks in unit tests.
...
svn:r17676
2008-12-18 06:02:23 +00:00
Nick Mathewson
1b735e46dd
Make it possible to call set_onion_key twice without leaking RAM.
...
svn:r17673
2008-12-18 05:40:57 +00:00
Nick Mathewson
cebdf93949
Fix bug 889: share deep-copied keys between threads to avoid races in reference counts. Bugfix on 0.1.0.1-rc.
...
svn:r17672
2008-12-18 05:28:27 +00:00
Roger Dingledine
7b5be147ee
fix a minor memory leak if we start up as a relay but don't
...
have any files in the cached-status/ directory
svn:r17671
2008-12-18 05:15:11 +00:00
Nick Mathewson
d597b23c42
Massage a little code to hopfully please coverity.
...
svn:r17669
2008-12-18 04:45:51 +00:00
Nick Mathewson
f3f6daf819
Avoid nop call to control_event_or_authdir_new_descriptor that makes coverity think we are dereferencing a null pointer. It is safe, I think, but entirely too clever for our own good.
...
svn:r17668
2008-12-18 04:45:47 +00:00
Nick Mathewson
676175103d
Fix a valgrind-located memory stomp. Bugfix on 0.2.1.6-alpha.
...
svn:r17667
2008-12-18 04:27:23 +00:00
Nick Mathewson
5c235cb5ec
Fix memory leak in rend_cache_store_v2_desc_as_client(), and refactor the function to use the "goto err" idiom.
...
svn:r17665
2008-12-18 00:11:49 +00:00
Nick Mathewson
1510d50fab
Oops: SeverDNS->ServerDNS.
...
svn:r17664
2008-12-17 23:20:07 +00:00
Nick Mathewson
7d92053286
Remove RedirectExit feature; it has been deprecated since 0.2.0.3-alpha
...
svn:r17663
2008-12-17 23:02:04 +00:00
Nick Mathewson
6693f32530
Resolve many DOCDOCs.
...
svn:r17662
2008-12-17 22:58:20 +00:00
Nick Mathewson
2ad36f68c8
Rename ServerDNSAllowBrokenResolvConf to ServerDNSAllowBrokenConfig.
...
(Many users have no idea what a resolv.conf is, and shouldn't be forced to learn. The old option will keep working for now.)
Also, document it.
svn:r17661
2008-12-17 22:58:14 +00:00
Roger Dingledine
03f413f5c7
declare that we're putting out 0.2.1.9-alpha next week
...
svn:r17659
2008-12-17 22:46:00 +00:00
Roger Dingledine
048f2a179b
Clip the MaxCircuitDirtiness config option to a minimum of 10
...
seconds. Warn the user if lower values are given in the
configuration. Bugfix on 0.1.0.1-rc. Patch by Sebastian.
Clip the CircuitBuildTimeout to a minimum of 30 seconds. Warn the
user if lower values are given in the configuration. Bugfix on
0.1.1.17-rc. Patch by Sebastian.
svn:r17657
2008-12-17 22:32:17 +00:00
Nick Mathewson
33e2053ebc
Make return code from router_add_to_routerlist a nice sensible enum. Based on patch from Sebastian.
...
svn:r17656
2008-12-17 21:50:01 +00:00
Nick Mathewson
2de9bd7bae
Rename a couple of v2-networkstatus-only fields so that it is clear they are v2-networkstatus-only.
...
svn:r17652
2008-12-17 17:20:48 +00:00
Nick Mathewson
f43bcdc063
Use ctags and a python script to find identifiers that are never used anywhere, and remove the ones that we really want gone.
...
svn:r17651
2008-12-17 17:20:42 +00:00
Nick Mathewson
fc5e686b19
Whitespace fix.
...
svn:r17650
2008-12-17 17:20:36 +00:00
Nick Mathewson
1beb1c113b
Add some missing documentation in or.h
...
svn:r17649
2008-12-17 17:20:31 +00:00
Nick Mathewson
0dc724d19c
Make ALLOW_INVALID_* into an enum.
...
svn:r17648
2008-12-17 17:20:26 +00:00
Nick Mathewson
d0e1cc6fe2
Remove the no-longer-used incoming_cmd_type field from control_connection_t.
...
svn:r17647
2008-12-17 17:20:22 +00:00
Nick Mathewson
68a6935afb
Change CELL_DIRECTION_* to an enum.
...
svn:r17646
2008-12-17 17:20:19 +00:00
Nick Mathewson
44e19a4949
Oops; remove extraneous comma.
...
svn:r17644
2008-12-17 15:04:43 +00:00
Nick Mathewson
7678ac5193
Move edge-only flags from connection_t to edge_connection_t.
...
svn:r17643
2008-12-17 14:59:28 +00:00
Nick Mathewson
26632d59dd
Rename or_is_obsolete and move it to or_connection_t where it belongs.
...
svn:r17642
2008-12-17 14:59:19 +00:00
Nick Mathewson
e53ffaa4e4
Don't extend circuits over noncanonical connections with mismatched addresses.
...
Also, refactor the logic to check whether we will use a connection or
launch a new one into a new function.
svn:r17628
2008-12-15 21:17:53 +00:00
Nick Mathewson
51c29e1e24
Apply rovv's bug 805 fix: take more care never to prefer a non-canonical connection.
...
svn:r17627
2008-12-15 21:17:43 +00:00
Roger Dingledine
5822e14dc9
When a stream at an exit relay is in state "resolving" or
...
"connecting" and it receives an "end" relay cell, the exit relay
would silently ignore the end cell and not close the stream. If
the client never closes the circuit, then the exit relay never
closes the TCP connection. Bug introduced in Tor 0.1.2.1-alpha;
reported by "wood".
svn:r17625
2008-12-14 19:40:56 +00:00
Roger Dingledine
2ad06eef11
comment tweak
...
svn:r17624
2008-12-14 19:39:54 +00:00
Nick Mathewson
a4a481d81c
Implement proposal 148: Make client stream end reasons uniform.
...
This patch makes every RELAY_COMMAND_END cell that we send pass through one of two functions: connection_edge_end and relay_send_end_cell_from_edge. Both of these functions check the circuit purpose, and change the reason to MISC if the circuit purpose means that it's for client use.
svn:r17612
2008-12-12 20:30:42 +00:00
Nick Mathewson
5fb2ab1e65
Implement the /tor/keys/fp-sk/ URL format. That mostly finishes the server side of 157.
...
svn:r17611
2008-12-12 19:05:36 +00:00
Nick Mathewson
69ce955484
Add cross-certification to authority key certificates. Partial implementation of proposal 157.
...
svn:r17610
2008-12-12 18:31:39 +00:00
Nick Mathewson
519de7970e
Do not discard sign on return values of iv crypto functions in tests. May fix CID 9. Might not.
...
svn:r17603
2008-12-11 21:11:31 +00:00
Nick Mathewson
7e351a6341
Note that a couple of line in control.c are supposed to be dead-code.
...
I'm hoping not to have to litter the rest of our codebase with Coverity ignores, but I think these are the only one we need right now.
svn:r17602
2008-12-11 21:11:28 +00:00
Nick Mathewson
02e26ebc49
If we are building under Coverity, enable geoip_stats and instrument_downloads.
...
This makes sure that a) optional code gets analyzed too, and b) it doesn't
look like dead code to Coverity.
svn:r17601
2008-12-11 21:11:26 +00:00
Nick Mathewson
b20694758e
Fix two more unit-test bugs (deadcode this time) spotted by Coverity run 7.
...
CIDs == 357, 356.
svn:r17599
2008-12-11 21:11:19 +00:00
Nick Mathewson
04ec7d1f98
Now that tor_assert is no longer using a broken force-to-boolean formulation, we can tor_assert a bitfield without a gcc compile error.
...
svn:r17598
2008-12-11 20:28:50 +00:00
Nick Mathewson
d9aa57253d
Fix error in last unit test mem-leak-fixing.
...
svn:r17596
2008-12-11 19:41:03 +00:00
Nick Mathewson
bb02f919f1
Refactor find_first_by_keyword into one variant that can return NULL and one that can't.
...
This makes it easier for us to avoid errors where we we forgot to list a keyword as mandatory, and easier for Coverity to detect cases like this too.
svn:r17595
2008-12-11 19:40:58 +00:00
Nick Mathewson
f3b52e331e
Avoid multiple descriptor-fetch connections to authorities. Fixes bug 366.
...
svn:r17594
2008-12-11 19:12:55 +00:00
Nick Mathewson
043b4fc59e
Add a PDS_ flag to exclude authorities from which we are fetching descs.
...
Yes, this is maybe a little overspecific. Part of a bug 366 fix.
svn:r17593
2008-12-11 19:12:48 +00:00
Nick Mathewson
29f5a65a16
Change directory_get_from_dirserver to take a set of flags to be passed to pick_(trusted_)dirserver. This lets us make its interface smarter, and makes code that calls it a little more readable.
...
svn:r17592
2008-12-11 19:12:45 +00:00
Nick Mathewson
4e69284e89
Fix wide line in main.c
...
svn:r17587
2008-12-11 17:23:00 +00:00
Nick Mathewson
240ee1866b
Add experimental support for learning svn revision number in git-svn based repositories. Fancy.
...
svn:r17581
2008-12-11 06:52:24 +00:00
Nick Mathewson
d7563ee231
Fix memory leaks in test_util_smartlist_* functions.
...
svn:r17580
2008-12-11 06:18:09 +00:00
Nick Mathewson
595e77c8d7
Fix memory leaks in test_v3_networkstatus.
...
svn:r17579
2008-12-11 06:18:01 +00:00
Nick Mathewson
6ffb4d4ab6
Fix memory leaks in test_dir_format
...
svn:r17578
2008-12-11 06:17:59 +00:00
Nick Mathewson
d8027aa689
Fix a logic error that would automatically reject all but the first configured DNS server. Bugfix on 0.2.1.5-alpha. Possible fix for part of 813/868. Spotted by coderman
...
svn:r17569
2008-12-10 22:57:41 +00:00
Nick Mathewson
53d3f812bd
Add new internal-use-only option for controllers to use to prevent SIGHUP from reloading the configuration. Fixes bug 856.
...
svn:r17567
2008-12-10 22:17:02 +00:00
Nick Mathewson
9aa706e20c
Bug 691 fix: do not shutdown Tor servers right away if the network is down.
...
svn:r17566
2008-12-10 20:45:31 +00:00
Nick Mathewson
426b53d85a
Apply patch from Karsten to fix bug 879. Backport candidate.
...
svn:r17562
2008-12-10 18:16:58 +00:00
Nick Mathewson
7aa7d1a3e7
Give a better error when something has changed our descriptor cache out from under us. Based on patch from Karsten. Addresses bug 885.
...
svn:r17550
2008-12-10 03:01:26 +00:00
Roger Dingledine
d7bf7e0b32
When a directory authority gives us a new guess for our IP address,
...
log which authority we used. Hopefully this will help us debug
the recent complaints about bad IP address guesses.
svn:r17549
2008-12-10 01:46:51 +00:00
Roger Dingledine
4053b47459
note a potential bug in status events. need to look at spec to
...
see if it's really a bug.
svn:r17548
2008-12-10 01:35:21 +00:00
Roger Dingledine
145e589b6c
Resume using the correct "REASON=" stream when telling the
...
controller why we closed a stream. Bugfix in 0.2.1.1-alpha.
svn:r17547
2008-12-10 01:34:24 +00:00
Nick Mathewson
ab75c0d9e3
remove a bogus comment. Now that there is no undocumented synonym for EXTENDED_EVENTS, we do not need to point out that EXTENDED_EVENTS is documented
...
svn:r17542
2008-12-09 23:10:38 +00:00
Nick Mathewson
a7b4a7b9f8
Finally remove deprecated-since-0.1.2.4-alpha EXTENDED_FORMAT synonym for EXTENDED_EVENTS
...
svn:r17538
2008-12-09 19:55:19 +00:00
Nick Mathewson
0280a72500
Add a new status event for consensus arrival
...
svn:r17535
2008-12-09 18:16:41 +00:00
Nick Mathewson
b32bac88e8
Mark DirPortFrontPage as a FILENAME rather than a STRING. Right now this has no effect.
...
svn:r17520
2008-12-08 18:00:34 +00:00
Roger Dingledine
b1c8fb7058
this function is no longer used.
...
svn:r17515
2008-12-08 00:09:28 +00:00
Roger Dingledine
e5be0504ab
When the client is choosing entry guards, now it selects at most
...
one guard from a given relay family. Otherwise we could end up with
all of our entry points into the network run by the same operator.
Suggested by Camilo Viecco. Fix on 0.1.1.11-alpha.
Not a backport candidate, since I think this might break for users
who only have a given /16 in their reachableaddresses, or something
like that.
svn:r17514
2008-12-08 00:04:29 +00:00
Roger Dingledine
f31c16d993
Directory mirrors no longer fetch the v1 directory or
...
running-routers files. They are obsolete, and nobody asks for them
anymore. This is the first step to making v1 authorities obsolete.
svn:r17513
2008-12-07 23:53:39 +00:00
Jacob Appelbaum
48aca3c999
Small whitespace fix to properly format if () {} statement.
...
svn:r17503
2008-12-07 01:51:56 +00:00
Jacob Appelbaum
f70146ca91
This helps return a better error message when the file supplied to DirPortFrontPage is missing.
...
svn:r17502
2008-12-07 01:48:30 +00:00
Roger Dingledine
21892d8a9c
cleanups on r17500
...
svn:r17501
2008-12-07 01:34:45 +00:00
Jacob Appelbaum
6b178b46ef
New DirPortFrontPage option that takes an html file and publishes it as "/" on the DirPort. Now relay operators can provide a disclaimer without needin to set up a separate webserver. There's a sample disclaimer in contrib/tor-exit-notice.html.
...
svn:r17500
2008-12-07 01:21:19 +00:00
Jacob Appelbaum
cf75162a0c
Add comment clarifying OpenSSL usage.
...
svn:r17498
2008-12-07 01:14:49 +00:00
Nick Mathewson
af03faa1a6
Fix more leaks in test_util_memarea().
...
svn:r17491
2008-12-05 02:25:39 +00:00
Nick Mathewson
475fbbbccc
Fix a resource leak in test_dir_formats()
...
svn:r17488
2008-12-05 02:05:39 +00:00
Nick Mathewson
1affbd3464
Split test_util_smartlist into manageable chunks; make them free memory properly.
...
svn:r17487
2008-12-05 01:58:35 +00:00
Nick Mathewson
30377823c3
Add a few more tests to our tests so that our tests make sense to coverity. CIDs 139, 138, 137.
...
svn:r17486
2008-12-05 01:49:15 +00:00
Nick Mathewson
e06442b648
Add a couple of sanity-checks for return values that coverity thinks we ought to have. CIDs 337, 335.
...
svn:r17485
2008-12-05 01:35:49 +00:00
Nick Mathewson
a26188cee9
fix bug 880: find the end of an authority cert by looking for the first ----END SIGNATURE----- after the first dir-key-certification, not for the first ----END SIGNATURE. Harmless bug, but it made us non-spec-compliant.
...
svn:r17470
2008-12-03 03:42:19 +00:00
Nick Mathewson
bd6b3072f9
Change logging code to use fds instead of stdio. Fixes bug 861, and probably makes logging slightly faster. Not a backport candidate: bug 861 is too obscure and harmless.
...
svn:r17456
2008-12-02 23:36:58 +00:00
Nick Mathewson
9c65195449
Apply rovv's patch for bug 864: avoid null error on detached signature handling failure.
...
svn:r17446
2008-12-02 19:13:23 +00:00
Roger Dingledine
2d8f7a4ff6
clarify that 'resolve' relay cells nul-terminate the hostname, just
...
like 'begin' relay cells.
svn:r17442
2008-12-02 17:35:05 +00:00
Roger Dingledine
984dc51f26
clean up some log messages
...
svn:r17406
2008-11-29 11:55:30 +00:00
Roger Dingledine
a53ebd20f0
whitespace fix
...
svn:r17379
2008-11-24 02:02:48 +00:00
Nick Mathewson
c7910c3bc9
Consider GetNetworkParams() nameserver parsing to have suceeded if even one nameserver can be added. Log more useful info about what exactly is failing when we fail to add a nameserver.
...
svn:r17368
2008-11-22 21:46:34 +00:00
Roger Dingledine
0b7a2a505e
prepare_for_poll() -- plus its mysterious cousin, prepare_for_pool() --
...
are long gone.
svn:r17351
2008-11-21 14:07:57 +00:00
Nick Mathewson
0fa698d84f
apply sebastian's bug 867 fix: make routerset_equal() work as documented with NULL arguments
...
svn:r17287
2008-11-16 18:25:20 +00:00
Karsten Loesing
6d7951c022
Fix a possible segfault when establishing an exit connection. Bugfix on 0.2.1.5-alpha.
...
svn:r17275
2008-11-16 01:52:44 +00:00
Nick Mathewson
c36ddcbabf
Apparently sparc64 is way more strict about uint16_t access alignment than I had thought: it gave bus errors when messing with var-cell headers. Maybe this patch will fix bug 862.
...
svn:r17262
2008-11-12 14:41:44 +00:00
Nick Mathewson
8f1952bf11
Be even _more_ careful when signatures are bogus.
...
svn:r17252
2008-11-11 17:14:12 +00:00
Nick Mathewson
3970c34f10
Only replace the detached signatures object when we actually added or replaced at least one signature.
...
svn:r17250
2008-11-11 16:52:07 +00:00
Nick Mathewson
997aea74dc
Fix from rovv: when adding a detached signature, do not automatically assume it is good just because we are adding it. We might also be adding it because it was the first signature we saw for a given voter.
...
svn:r17248
2008-11-11 16:35:46 +00:00
Nick Mathewson
00a90177fa
oops, remove debugging log message.
...
svn:r17247
2008-11-11 16:02:23 +00:00
Nick Mathewson
8157b8b766
be less aggressive about deleting expired certs. based on patch from rovv. partial fix for bug 854.
...
svn:r17246
2008-11-11 16:01:57 +00:00
Nick Mathewson
e08cbe2029
Add PURPOSE= field to getinfo circuit-status. With luck, controllers are ignoring extra fields (like they are supposed to) and this will not break any controllers.
...
svn:r17245
2008-11-11 15:59:24 +00:00
Nick Mathewson
6c50ab6e61
Document a couple of functions.
...
svn:r17239
2008-11-10 20:40:01 +00:00
Roger Dingledine
c62d5f6a5c
beg nick for some documentation on the locking functions
...
svn:r17233
2008-11-10 00:48:13 +00:00
Roger Dingledine
4d8799b987
we missed a case when printing circuit purposes in circ events.
...
svn:r17230
2008-11-09 23:56:29 +00:00
Nick Mathewson
9f1e06bd0e
but to not attempt to download a specific certificate we already have.
...
svn:r17214
2008-11-07 15:01:49 +00:00
Nick Mathewson
bda4ca065c
Aaaaand, do not reset the download count just because we have a certificate that is listed in a consensus.
...
svn:r17212
2008-11-07 14:57:14 +00:00
Nick Mathewson
aa405f29e6
fix up signs in r17208
...
svn:r17211
2008-11-07 14:17:46 +00:00
Nick Mathewson
5e2cdc1666
When we get a duplicated certificate, treat it as a failure and increment the download count. Do not claim to be downloading certificates that we merely want.
...
svn:r17209
2008-11-07 14:01:44 +00:00
Nick Mathewson
a15bdd3edd
patch from karsten to not use or accept expired certs. fixes bug 851.
...
svn:r17208
2008-11-07 13:38:49 +00:00
Roger Dingledine
bc128c0b03
vidalia asks us for the value of the Group config option. but now
...
it's obsolete. which causes us to inform the user every time, even
though the user can't do anything about it other than get confused.
now it's an info-level log by default.
svn:r17206
2008-11-07 04:38:58 +00:00
Roger Dingledine
14773f42a7
now that we drop privs more thoroughly, switch_id() is no longer
...
idempotent. so now we remember if we've succeeded, and if so we
don't even try.
svn:r17204
2008-11-07 04:34:47 +00:00
Roger Dingledine
d27337bf17
i needed a piece of the 'patching patches' action too
...
svn:r17202
2008-11-07 03:39:19 +00:00
Steven Murdoch
9d68ed08e9
Patch from Jacob Appelbaum and me to make User option more robust, properly set supplementary groups, deprecated the Group option, and log more information on credential switching
...
svn:r17200
2008-11-07 02:06:12 +00:00
Nick Mathewson
6e3de8530e
Remove bug 811/845 debugging code
...
svn:r17199
2008-11-07 01:50:37 +00:00
Nick Mathewson
a38026bb06
fix wide lines
...
svn:r17198
2008-11-07 01:48:55 +00:00
Nick Mathewson
3ebd1ebeca
The chunk_size field in memarea_t was never actually set. Remove the whole thing.
...
svn:r17195
2008-11-05 20:34:22 +00:00
Nick Mathewson
3f858b5b26
Fix a compile error found under pcc. It wants single-quites to be escaped in strings, it seems.
...
svn:r17191
2008-11-05 18:03:14 +00:00
Karsten Loesing
b31e2c2491
(a - b) / 2 != a - (b / 2); this is the reason why tunneled directory requests and client-side introduction circuits don't time out after the intended 30 seconds (task #847 ). Bugfix on r17106. Found by miner.
...
svn:r17189
2008-11-05 10:40:29 +00:00
Nick Mathewson
73c6cb8353
Fix unit test failure related to intro point parsing.
...
svn:r17188
2008-11-03 16:36:15 +00:00
Nick Mathewson
7b45d530b0
Add some debugging logs for bug 811/845.
...
svn:r17186
2008-11-03 15:46:05 +00:00
Roger Dingledine
ebe4ef12b9
when building preemptive circuits, ignore streams that have a
...
chosen exit node in mind already. otherwise we get tricked into
trying to build a new circuit that will handle them.
svn:r17184
2008-11-03 07:00:56 +00:00
Roger Dingledine
3e5a584d37
fix the other half of r17091. now that best_support can be -1,
...
we were complaining about no support for our one-hop streams,
when in fact choose_good_exit_server_general() has no business
caring about one-hop streams. patch from miner.
svn:r17181
2008-11-01 23:49:14 +00:00
Nick Mathewson
c534b96e58
Fix an assertion failure on double-marked circuits, and a double-mark.
...
svn:r17179
2008-11-01 20:27:41 +00:00
Nick Mathewson
0c9dfffe5a
Implement the 0x20-hack to make DNS poisoning harder against us, especially when resolving large names. Add a cfg option to disable it, since apparently 3/10 of a percent of servers get it wrong.
...
svn:r17171
2008-10-29 19:20:02 +00:00
Nick Mathewson
c8a5e2d588
Work better with tools that resist DNS poisoning by using the 0x20 hack: make DNSPort replies perserve case.
...
svn:r17170
2008-10-29 15:31:26 +00:00
Nick Mathewson
accb4a680f
make layer_hint check a little stricter.
...
svn:r17164
2008-10-27 16:57:18 +00:00
Nick Mathewson
ee31e0829e
Verify cpath_layer match on rendezvous cells too. Fixes another case of bug 446. Based on patch from rovv.
...
svn:r17162
2008-10-27 16:46:45 +00:00
Karsten Loesing
c53f1f83e7
gabelmoo has a new IP address.
...
svn:r17160
2008-10-27 15:04:45 +00:00
Nick Mathewson
b166a43cb6
Fix another case of refusing to use a chosen exit node because we think it will reject _mostly_ everything. Based on patch from rovv. See bug 752.
...
svn:r17139
2008-10-21 17:09:04 +00:00
Nick Mathewson
5e762e6a5c
Fix the rest of bug 619: reject *:* servers should not do DNS lookups, even if broken clients send them RELAY_BEGIN cells. Patch from rovv.
...
svn:r17138
2008-10-21 16:51:59 +00:00
Nick Mathewson
b593fd5c20
Patch from rovv: send back END cell in response to connect attempts to nonexistent hidden service port.
...
svn:r17137
2008-10-21 16:41:20 +00:00
Roger Dingledine
bca46cc628
backport candidate:
...
The "ClientDNSRejectInternalAddresses" config option wasn't being
consistently obeyed: if an exit relay refuses a stream because its
exit policy doesn't allow it, we would remember what IP address
the relay said the destination address resolves to, even if it's
an internal IP address. Bugfix on 0.2.0.7-alpha; patch by rovv.
svn:r17135
2008-10-17 22:08:49 +00:00
Roger Dingledine
e3127e874e
fix grammar in a log message
...
svn:r17131
2008-10-16 17:13:28 +00:00
Roger Dingledine
bbf0f5a266
explain patch4 better. whee.
...
svn:r17111
2008-10-15 21:12:51 +00:00
Roger Dingledine
a5769eefa4
patch4 from proposal 155:
...
Hidden services start out building five intro circuits rather
than three, and when the first three finish they publish a service
descriptor using those. Now we publish our service descriptor much
faster after restart.
svn:r17110
2008-10-15 20:59:48 +00:00
Roger Dingledine
d06182f0bd
add patch2 from proposal 155:
...
Launch a second client-side introduction circuit in parallel
after a delay of 15 seconds (based on work by Christian Wilms).
svn:r17108
2008-10-15 18:52:06 +00:00
Roger Dingledine
4520500cde
put in karsten's patch #1 for proposal 155, modified
...
svn:r17106
2008-10-15 00:36:09 +00:00
Nick Mathewson
846e40d193
Patch from rovv: when we have no pending streams, choose exits with choose_good_exit_server_general() rather than with circuit_get_unhandled_ports() and friends. Bugfix on 0.1.1.x, at least.
...
svn:r17091
2008-10-14 17:05:52 +00:00
Roger Dingledine
d7cfa1f56c
Minor fix in the warning messages when you're having problems
...
bootstrapping; also, be more forgiving of bootstrap problems when
we're still making incremental progress on a given bootstrap phase.
svn:r17066
2008-10-13 03:34:29 +00:00
Roger Dingledine
c9bddb24b2
another coverity-found memory leak
...
svn:r17062
2008-10-12 03:21:05 +00:00
Roger Dingledine
95aace5aae
minor memory leak found by coverity
...
svn:r17061
2008-10-12 03:19:17 +00:00
Roger Dingledine
bb1f488dbe
fix typo in log entry
...
svn:r17050
2008-10-08 10:47:23 +00:00
Roger Dingledine
e7f5a07ff4
Make rend_cache_store() use the same return error codes as its v2
...
equivalent: I got a lonely "Failed to fetch rendezvous descriptor."
in my log file, even when the connection worked.
svn:r17028
2008-10-02 07:32:13 +00:00
Roger Dingledine
c7af43a624
Now NodeFamily and MyFamily config options allow spaces in
...
identity fingerprints, so it's easier to paste them in.
Suggested by Lucky Green.
svn:r17021
2008-10-01 03:41:33 +00:00
Nick Mathewson
ccede03cc0
Switch a should-benee-dless check for an assert.
...
svn:r17018
2008-09-30 13:59:12 +00:00
Roger Dingledine
f2708dd40f
a few more tweaks
...
svn:r17010
2008-09-30 09:32:26 +00:00
Roger Dingledine
49a250b208
i *think* this is equivalent. somebody should check me on it though.
...
svn:r17009
2008-09-30 08:45:40 +00:00
Roger Dingledine
7247838a25
v3 authorities write down all the votes they used for the consensus
...
to the datadir, for debugging.
svn:r17008
2008-09-29 23:13:43 +00:00
Nick Mathewson
25f8335528
Include circuit purposes in circuit events. Now all circuit events are extended; this makes the code simpler.
...
svn:r17007
2008-09-29 22:34:22 +00:00
Nick Mathewson
9d950f7d25
Nobody calls circuit_launch_by_nickname; remove it.
...
svn:r17006
2008-09-29 20:44:29 +00:00
Roger Dingledine
26aa741169
Remove the old v2 directory authority 'lefkada' from the default
...
list. It has been gone for many months.
svn:r17005
2008-09-29 19:27:20 +00:00
Nick Mathewson
ae3ce7b387
Patch from mwenge: update TrackHostExits mapping expiry times when the mappings are used, so that they expire a while after their last use, not a while after their creation.
...
svn:r17004
2008-09-29 14:53:53 +00:00
Nick Mathewson
57db1c1a7d
Tweak the dbg-stability.txt code to log everything else that influences router stability calculations.
...
svn:r17003
2008-09-29 14:40:34 +00:00
Roger Dingledine
9678f166a8
If we have correct permissions on $datadir, we complain to stdout
...
and fail to start. But dangerous permissions on
$datadir/cached-status/ would cause us to open a log and complain
there. Now complain to stdout and fail to start in both cases. Fixes
bug 820, reported by seeess.
svn:r16998
2008-09-29 10:09:05 +00:00
Roger Dingledine
c846979ab7
Fix a bug where an unreachable relay would establish enough
...
reachability testing circuits to do a bandwidth test -- if
we already have a connection to the middle hop of the testing
circuit, then it could establish the last hop by using the existing
connection. Bugfix on 0.1.2.2-alpha, exposed when we made testing
circuits no longer use entry guards in 0.2.1.3-alpha.
svn:r16997
2008-09-29 09:36:42 +00:00
Nick Mathewson
99755f374d
Fix 0/0 calculation in get_weighted_fractional_uptime().
...
svn:r16994
2008-09-28 15:48:36 +00:00
Nick Mathewson
bb1685318c
Commit fix for bug 807 from mwenge: send CLOSED controller event for reverse dns resolve, not FAILED.
...
svn:r16985
2008-09-26 20:25:35 +00:00
Nick Mathewson
745e5b0e22
Make sure ExcludeSingleHopRelays works for an exit.
...
svn:r16984
2008-09-26 19:09:12 +00:00
Nick Mathewson
e147e867be
Proposal 152 implementation from Josh Albrecht, with tweaks.
...
svn:r16983
2008-09-26 18:58:45 +00:00
Nick Mathewson
87eb230c01
Put the start-of-downtime value in the start-of-downtime buffer so that we do not put junk in the dbg-stability.txt file
...
svn:r16982
2008-09-26 18:31:22 +00:00
Nick Mathewson
e7e12236ac
Code to serve a current stability calculations from /tor/dbg-stability.txt. Untested: somebody please run this on an authority and let me know if it is broken.
...
svn:r16981
2008-09-26 18:02:48 +00:00
Nick Mathewson
283b95e463
Make tests pass again by adding an opt hidden-service-dir to the example routerinfo output.
...
svn:r16980
2008-09-26 17:58:35 +00:00
Nick Mathewson
ae33d3ead7
Apply rovv's fix for bug 824.
...
svn:r16975
2008-09-26 15:30:26 +00:00
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
e06f140f97
Whitespace fixes.
...
svn:r16967
2008-09-25 20:22:17 +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
Nick Mathewson
b2c7090da6
Make it easier for dmalloc to see if keys are leaking; remove a test-only key leak.
...
svn:r16965
2008-09-25 17:37:00 +00:00
Nick Mathewson
06f96363fd
Remove now-needless _tor_dmalloc_free helper.
...
svn:r16964
2008-09-25 17:36:09 +00:00
Nick Mathewson
a7e383af19
More test memory-management fixes
...
svn:r16963
2008-09-25 15:20:38 +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
7f805aca2b
Split test_crypto() into manageable pieces.
...
svn:r16959
2008-09-24 20:55:38 +00:00
Karsten Loesing
5f457e4fa6
Minor correction of commentation.
...
svn:r16958
2008-09-24 17:33:07 +00:00
Nick Mathewson
8bc1536a9e
Add patch 4 from Karsten for proposal 121, slightly modified. Karsten should definitely re-review the bits I changed.
...
svn:r16955
2008-09-24 14:44:29 +00:00
Nick Mathewson
75977fd79b
Patch from roger for 752, but with more comments: When we get an A.B.exit:P address, and B would reject most connections to P, but we do not know whether it would allow A, then allow the connection to procede. Bugfix, amusingly, on 0.0.9rc5.
...
svn:r16944
2008-09-23 20:25:01 +00:00
Nick Mathewson
545b317e1f
Fix for bug 797 (by arma, with tweaks): always use create_fast for circuits where we do not know an onion key.
...
svn:r16942
2008-09-23 20:13:23 +00:00
Nick Mathewson
f28fc83ea5
More logging for mtbf/wfu calculations.
...
svn:r16941
2008-09-23 18:24:20 +00:00
Karsten Loesing
e4942e809e
Exclude v0 rendezvous descriptors when considering republication.
...
svn:r16939
2008-09-23 09:30:57 +00:00
Roger Dingledine
6a7abbd25d
ok, but inaccurate error strings worse
...
svn:r16938
2008-09-23 08:57:30 +00:00
Roger Dingledine
0fc0d5266c
identical error strings in different contexts bad
...
svn:r16937
2008-09-23 08:54:03 +00:00
Nick Mathewson
b0c48d8e45
Oops; we need to make sure that DNS request names are matched in the _questions_ section of the replies. Rejecting answers whether the _answers_ section did not match made us reject A records waiting at the end of a CNAME record. Bug 823.
...
svn:r16933
2008-09-22 20:06:25 +00:00
Roger Dingledine
4fd9880540
give rend_client_desc_here a slightly more accurate name
...
svn:r16916
2008-09-16 10:26:15 +00:00
Roger Dingledine
38f2272d5d
patch from karsten for bug 814. whew.
...
svn:r16915
2008-09-16 10:17:04 +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
Roger Dingledine
2bde30efa6
read_to_buf should take an int *error_socket and return it.
...
svn:r16909
2008-09-14 08:35:41 +00:00
Roger Dingledine
7f2fd34645
stop telling us every time we fetch a consensus. that's not really news.
...
svn:r16908
2008-09-14 07:17:44 +00:00
Roger Dingledine
dbb481c169
Serve the latest v3 networkstatus consensus via the control
...
port. Use "getinfo dir/status-vote/current/consensus" to fetch it.
svn:r16907
2008-09-14 04:07:29 +00:00
Roger Dingledine
4045ef72f5
make it explicit that the uncompressed cached dir items are nul-terminated
...
(they are, but now we should keep them that way)
svn:r16906
2008-09-14 03:36:54 +00:00
Roger Dingledine
2d95accc75
Allow ports 465 and 587 in the default exit policy again. We had
...
rejected them in 0.1.0.15, because back in 2005 they were commonly
misconfigured and ended up as spam targets. We hear they are better
locked down these days.
svn:r16898
2008-09-13 10:04:42 +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
Nick Mathewson
b322348e8a
Fix more actual test leaks
...
svn:r16831
2008-09-10 05:34:03 +00:00
Nick Mathewson
45205126fe
Fix some apparent leaks in voting. If authorities suddenly start segfaulting, this could be a patch to look harder at.
...
svn:r16830
2008-09-10 05:33:49 +00:00
Nick Mathewson
aa69d586ea
Make buffer unit tests handle resource leaks properly.
...
svn:r16823
2008-09-10 00:16:32 +00:00
Nick Mathewson
38f56608d9
Make more unit tests handle resource leaks properly.
...
svn:r16822
2008-09-10 00:11:53 +00:00
Karsten Loesing
52fbfc5d45
Correct indentation.
...
svn:r16819
2008-09-09 22:19:41 +00:00
Roger Dingledine
659f1651e0
tweak karsten's patch
...
svn:r16818
2008-09-09 21:09:15 +00:00
Roger Dingledine
2c14705a4d
patch from karsten to fix more of bug 767
...
svn:r16817
2008-09-09 21:08:02 +00:00
Nick Mathewson
f95d7c189b
Refactor unit test macros and tor_free_all() logic a bit so as to make it easier to free memory on failing tests, in order to suppress scanner warnings and to make dmalloc() usable with tests.
...
svn:r16816
2008-09-09 20:43:31 +00:00
Roger Dingledine
fa64d8041f
minor cleanups on karsten's patch
...
svn:r16810
2008-09-09 09:21:21 +00:00
Roger Dingledine
ef7af1d61e
karsten's patch for bug 767.
...
svn:r16808
2008-09-09 08:41:58 +00:00
Roger Dingledine
d37fae2f4e
Catch and report a few more bootstrapping failure cases when Tor
...
fails to establish a TCP connection. Cleanup on 0.2.1.x.
svn:r16803
2008-09-09 06:25:39 +00:00
Nick Mathewson
aacda9cd8e
We should not alter an addr_policy_t that has been canonicalized.
...
svn:r16802
2008-09-09 03:48:01 +00:00
Nick Mathewson
baeb260ad1
Refactor use of connection_new so that we get more verifiable typesafety.
...
svn:r16785
2008-09-05 22:09:44 +00:00
Nick Mathewson
339f094056
Refactor some code and add some asserts based on scanner results.
...
svn:r16783
2008-09-05 21:19:53 +00:00
Nick Mathewson
d5b2dab31d
Fix a malloc that should have been a tor_malloc
...
svn:r16780
2008-09-05 20:53:39 +00:00
Nick Mathewson
0b8117a5c0
Fix numerous memory leaks: some were almost impossible to trigger, and some almost inevitable.
...
svn:r16779
2008-09-05 20:52:15 +00:00
Nick Mathewson
a56a072f29
It is probably some kind of misdeed to say for (i=0;i<2;++i) { A=i?x:y; foo(bar(A)); } rather than foo(bar(x)); foo(bar(y)); . Also, it can confuse tools.
...
svn:r16777
2008-09-05 20:04:27 +00:00
Nick Mathewson
c33dde4ac1
Fix mingw build with --enable-gcc-warnings set.
...
svn:r16759
2008-09-04 21:58:09 +00:00
Nick Mathewson
3f2b7078d2
Use warn_too_many_conns() when accept() fails with a resource limit.
...
svn:r16751
2008-09-04 15:22:55 +00:00
Nick Mathewson
f80ac31d74
Add a lockfile to the Tor data directory to avoid situations where two Tors start with the same datadir, or where a --list-fingerprints races with a server to create keys, or such.
...
svn:r16722
2008-09-01 20:06:26 +00:00
Roger Dingledine
cfff21e78a
backport candidate:
...
If not enough of our entry guards are available so we add a new
one, we might use the new one even if it overlapped with the
current circuit's exit relay (or its family). Anonymity bugfix
pointed out by rovv.
svn:r16698
2008-08-31 06:33:39 +00:00
Nick Mathewson
32549ad95e
Double oops: revert accidentally committed local geoipc.c debugging hack.
...
svn:r16687
2008-08-29 17:02:26 +00:00
Nick Mathewson
730f1b6d3f
Oops. Make warn_too_many_conns() actually work.
...
svn:r16686
2008-08-29 17:01:15 +00:00
Nick Mathewson
6bf1dec945
Oops; set address families on nameservers.
...
svn:r16674
2008-08-27 14:12:10 +00:00
Nick Mathewson
2625eb204f
Fix a memory leak when freeing routerstatuses with exit policy summaries. Patch from mwenge.
...
svn:r16659
2008-08-25 23:19:58 +00:00
Roger Dingledine
c5fef3c57f
commit jake's patch to include strings with socks5 error numbers
...
svn:r16657
2008-08-25 21:02:22 +00:00
Roger Dingledine
8a9b6204ca
get rid of some magic constants i found while walking
...
jake through socks4 and socks5 failure codes
svn:r16651
2008-08-25 07:06:55 +00:00
Nick Mathewson
239cbe99ba
Oops. Linux has no sa_len field.
...
svn:r16627
2008-08-22 18:00:26 +00:00
Nick Mathewson
0800b332a0
r17847@tombo: nickm | 2008-08-22 12:08:56 -0400
...
ipv6: make server-side dns cache remember for each address an ipv6 addr and an ipv4 addr. This fix is just the struct side.
svn:r16622
2008-08-22 16:24:47 +00:00
Nick Mathewson
fc52d85b7c
r17846@tombo: nickm | 2008-08-22 11:54:00 -0400
...
Make dns resolver code more robust: handle nameservers with IPv6 addresses, make sure names in replies match requested names, make sure origin address of reply matches the address we asked.
svn:r16621
2008-08-22 16:24:43 +00:00
Roger Dingledine
8f5642edbc
Relays now reject risky extend cells: if the extend cell includes
...
a digest of all zeroes, or asks to extend back to the relay that
sent the extend cell, tear down the circuit. Ideas suggested
by rovv.
svn:r16605
2008-08-20 05:21:43 +00:00
Roger Dingledine
cc8b2247bf
make r16598 compile on 64-bit too
...
svn:r16604
2008-08-20 05:15:08 +00:00
Karsten Loesing
a8035b5fc3
Update doxygen documentation.
...
svn:r16599
2008-08-19 19:01:41 +00:00
Nick Mathewson
24f1d29be1
Apply proposal 121 patch 3, with minor tweaks and a few comments.
...
svn:r16598
2008-08-19 15:41:28 +00:00
Peter Palfrader
87a5962abb
All the controller things want their stuff in v2 format. Well then, maybe that's already sufficient
...
svn:r16578
2008-08-17 08:26:02 +00:00
Peter Palfrader
d3be2cb7fb
And tell us more in another error case
...
svn:r16577
2008-08-17 08:14:57 +00:00
Peter Palfrader
ab9078fca0
Change a warning/bug message
...
svn:r16576
2008-08-17 08:11:21 +00:00
Peter Palfrader
3c0b0ccca9
Two consensus fixes: always reset has_* to 0, and use a buffer of proper length for exitsummaries.
...
svn:r16575
2008-08-17 08:01:23 +00:00
Peter Palfrader
4eecd27b42
Make trunk build again under -DEXPORTMALLINFO
...
svn:r16559
2008-08-15 14:03:37 +00:00
Nick Mathewson
fcf817f897
Switch global_identifier on connections to a 64-bit field and move it to connection_t. When procession onionskins, look up the connection by this field rather than by addr:port. This will keep us from dropping onionskins. How many dropped circuits are dropped because of this bug?
...
svn:r16558
2008-08-15 13:55:01 +00:00
Peter Palfrader
521f8c791f
spaceman
...
svn:r16555
2008-08-14 23:09:48 +00:00
Peter Palfrader
8cc3d6e22d
Add exitpolicy summaries to the consensus
...
svn:r16554
2008-08-14 23:01:31 +00:00
Peter Palfrader
e27b448c57
Do not split stored exit policy summary into type(accept/reject) and portlist. At least not just yet
...
svn:r16553
2008-08-14 23:01:21 +00:00
Peter Palfrader
41730a893c
Rename a field so weasel likes it better
...
svn:r16552
2008-08-14 23:01:09 +00:00
Peter Palfrader
ceae7ed960
Add bw to consensus
...
svn:r16551
2008-08-14 23:00:57 +00:00
Peter Palfrader
82f8050ac4
Parse policies and weight (bw) into routerstatuses
...
svn:r16550
2008-08-14 23:00:44 +00:00
Peter Palfrader
e8de3ff54d
If we are lucky the whitespace nazis will not have noticed these things yet
...
svn:r16549
2008-08-14 18:01:20 +00:00
Peter Palfrader
fdba26f213
minor comment/doxygen fix
...
svn:r16548
2008-08-14 18:01:09 +00:00
Peter Palfrader
7c4106135a
Give bw in kb/sec in votes/consensus
...
svn:r16544
2008-08-14 12:37:59 +00:00
Peter Palfrader
ff32708d0e
Having a reject-all policy summarized with a lack of summary is stupid. Explicitly mention them as reject 1-65535.
...
svn:r16543
2008-08-14 12:37:50 +00:00
Peter Palfrader
2f91a3528a
testsuite: Now that we add (pretty useless, but still) routerinfos to the routerlist for every one of our routerstatuses in the votes we pass again. yay
...
svn:r16542
2008-08-14 12:37:42 +00:00
Peter Palfrader
6317cc2956
Only fetch the routerinfo_t in routerstatus_format_entry() if we are going to need it
...
svn:r16541
2008-08-14 12:37:34 +00:00
Peter Palfrader
a6ade97f67
Properly move forward char pointer after appending stuff to the string
...
svn:r16540
2008-08-14 12:37:28 +00:00
Peter Palfrader
056157984b
Disable test suite for today
...
svn:r16539
2008-08-14 12:37:21 +00:00
Peter Palfrader
b246c4de9b
asserting(s) is better than segfaulting if it turns out to be NULL later
...
svn:r16538
2008-08-14 12:37:14 +00:00
Peter Palfrader
1a2c6b41e3
Do not show policy and bw in v2 statuses
...
svn:r16537
2008-08-14 12:37:07 +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
Peter Palfrader
91f654f2ff
This bunch of functions really should be static
...
svn:r16535
2008-08-14 11:24:03 +00:00
Peter Palfrader
171a7d4b0f
Fix an overflow when counting rejects for *, truncate exit summaries after 1000 chars
...
svn:r16530
2008-08-13 19:25:18 +00:00
Peter Palfrader
adcea0f332
Think of the poor children in Antarctica who still have to work on 4" screens
...
svn:r16528
2008-08-13 12:46:13 +00:00
Peter Palfrader
0d807068a3
A few testcases for policy summaries
...
svn:r16527
2008-08-13 12:46:06 +00:00
Peter Palfrader
c4e8fe11db
Also special case "accept 1-65535" case, do not leak in non-exit case
...
svn:r16526
2008-08-13 12:46:00 +00:00
Peter Palfrader
8ef2fe4b37
Return NULL for policies that do not allow any exits
...
svn:r16525
2008-08-13 12:45:53 +00:00
Peter Palfrader
4a74b9a7df
Fix condition statement for accept items, fix two asserts
...
svn:r16524
2008-08-13 12:45:44 +00:00
Peter Palfrader
34e083dde1
Make sure we don't run off the end of the list
...
svn:r16523
2008-08-13 12:45:34 +00:00
Peter Palfrader
b2344a9e4d
Move policy_summarize() prototype to or.h
...
svn:r16522
2008-08-13 12:45:28 +00:00
Peter Palfrader
49a616e0fa
Create string representation of exit summaries
...
svn:r16521
2008-08-13 12:45:23 +00:00
Peter Palfrader
7eaf5bd848
Nickm says I'm going to hell, but if I write that in a comment he might just save my soul
...
svn:r16520
2008-08-13 12:45:15 +00:00
Peter Palfrader
1adc12546e
implement policy_summary_accept and policy_summary_reject together with a set of helpers
...
svn:r16519
2008-08-13 12:45:09 +00:00
Peter Palfrader
f5adde1a17
Start with exit policy summaries
...
svn:r16518
2008-08-13 12:45:01 +00:00
Nick Mathewson
97245376d9
Next patch from Karsten: client-side configuration stuff for proposal 121.
...
svn:r16510
2008-08-12 16:12:26 +00:00
Nick Mathewson
30422b5df1
Rate-limit "too-many-sockets" messages; they can get needlessly verbose.
...
svn:r16480
2008-08-09 15:35:37 +00:00
Nick Mathewson
60a0ae198d
Patch cleanups from karsten
...
svn:r16479
2008-08-09 15:13:28 +00:00
Nick Mathewson
7994f49d43
Fix bug in my changes to karsten's patch
...
svn:r16477
2008-08-08 16:45:22 +00:00
Nick Mathewson
a8ddac96d8
handle ipv6 in socks5 requests.
...
svn:r16476
2008-08-08 16:41:59 +00:00
Nick Mathewson
22259a0877
The first of Karsten's proposal 121 patches: configure and maintain client authorization data. Tweaked a bit: see comments on or-dev.
...
svn:r16475
2008-08-08 14:36:11 +00:00
Nick Mathewson
f6879caa04
Try once again to make BSD compilation happy.
...
svn:r16474
2008-08-08 12:58:17 +00:00
Nick Mathewson
39f88641c1
r17692@tombo: nickm | 2008-08-07 22:41:26 -0400
...
Fix more compile errors on BSD pf stuff. How about now?
svn:r16472
2008-08-08 02:41:34 +00:00
Nick Mathewson
5ab6fe0051
r17680@tombo: nickm | 2008-08-07 16:06:30 -0400
...
Add a missing safe_str for a debug_log_message. Fix the bad part of bug 674.
svn:r16462
2008-08-07 20:06:40 +00:00
Nick Mathewson
b81d70addb
Oops. On recent linux kernels we were not detecting the linux/netfilter_ipv4.h header properly, since we needed to have in_addr and in6_addr and __u32 defined before trying to include it. Fix that.
...
svn:r16460
2008-08-07 19:39:52 +00:00
Nick Mathewson
48848537bc
r17667@tombo: nickm | 2008-08-07 15:13:30 -0400
...
Make the TransPort input code handle IPv6 addresses, I hope. This code may not compile. Possibly fix bug 796.
svn:r16459
2008-08-07 19:13:39 +00:00
Nick Mathewson
d9601c65e0
r17666@tombo: nickm | 2008-08-07 15:12:30 -0400
...
Make tor_addr_from_sockaddr also give away the port in a useful format
svn:r16458
2008-08-07 19:13:35 +00:00
Nick Mathewson
635f3c8aee
r17664@tombo: nickm | 2008-08-06 12:32:09 -0400
...
Patch from Christopher Davis: open /dev/pf before dropping privileges. Fixes bug 782. Backport candidate.
svn:r16450
2008-08-06 16:32:17 +00:00
Nick Mathewson
9855c1d06f
r17645@31-33-44: nickm | 2008-08-05 16:28:01 -0400
...
Make unspecified addresses also cause connection_is_rate_limited to say 0.
svn:r16437
2008-08-05 20:28:03 +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
Peter Palfrader
0cfb68454e
Document that we break ties in favor of smaller SD digest if there are still ties after comparing the published timestamp
...
svn:r16432
2008-08-05 18:54:23 +00:00
Roger Dingledine
d01813a8dd
Take out the TestVia config option, since it was a workaround for
...
a bug that was fixed in Tor 0.1.1.21.
svn:r16409
2008-08-05 00:12:05 +00:00
Roger Dingledine
d5bb361977
minor fixes
...
svn:r16407
2008-08-04 23:59:38 +00:00
Karsten Loesing
d166b9dc45
Make check-spaces happy.
...
svn:r16406
2008-08-04 23:39:07 +00:00
Roger Dingledine
2a417700b4
don't log-warn on a bootstrapping status event if the recommendation
...
is to ignore.
svn:r16405
2008-08-04 23:38:32 +00:00
Karsten Loesing
1fe07f66f4
In some edge cases it occurs that the router descriptor of a previously picked introduction point becomes obsolete. In that case, don't stick to using that introduction point, but simply give up on it. Reverts some part of r15825.
...
svn:r16404
2008-08-04 23:35:12 +00:00
Karsten Loesing
ff9c3c006f
Remove dead code that was left from marking HiddenService(Exclude)Nodes obsolete in task 754.
...
svn:r16401
2008-08-04 22:42:27 +00:00
Karsten Loesing
3c9cd463d2
Fix a false assertion when extending a circuit to a relay to which a connection is already established. In that case the circuit should not need to memorize extend info for that relay. circuitbuild.c:389 contains a similar assertion.
...
svn:r16375
2008-08-03 17:45:24 +00:00
Karsten Loesing
ee44eadf4c
Fix a bug when generating router descriptors: The address part of exit policies was uninitialized.
...
svn:r16372
2008-08-03 12:43:18 +00:00
Roger Dingledine
fd4a30d198
bump to 0.2.1.3-alpha
...
svn:r16369
2008-08-03 05:35:42 +00:00
Roger Dingledine
bf066be654
note a feature (bugfix) we should do one day
...
svn:r16368
2008-08-03 05:35:18 +00:00
Nick Mathewson
1a76cd179a
When a struct ends with char a[1], the size of all earlier members of the struct is _not_ sizeof(st)-1; compilers add alignment. Problem spotted by rovv. Backport candidate.
...
svn:r16302
2008-07-31 12:18:14 +00:00
Nick Mathewson
186097906d
r17436@tombo: nickm | 2008-07-30 09:03:19 -0400
...
Move n_addr, n_port, and n_conn_id_digest fields of circuit_t into a separately allocated extend_info_t. Saves 22 bytes per connected circuit_t on 32-bit platforms, and makes me more comfortable with using tor_addr_t in place of uint32_t n_addr.
svn:r16257
2008-07-30 13:04:32 +00:00
Nick Mathewson
507b01357a
r17426@tombo: nickm | 2008-07-28 20:34:03 -0400
...
More test coverage for tor_addr_t; fix a couple of bugs.
svn:r16234
2008-07-29 00:34:50 +00:00
Nick Mathewson
056d97da0c
r17391@pc-10-8-1-079: nickm | 2008-07-25 17:11:17 +0200
...
Tor_addr_compare did a semantic comparison, such that ::1.2.3.4 and 1.2.3.4 were "equal". we sometimes need an exact comparison. Add a feature to do that.
svn:r16210
2008-07-25 15:11:21 +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
9da0482007
r17358@pc-10-8-1-079: nickm | 2008-07-25 16:41:03 +0200
...
Split out the address manipulation functions from compat and util: they were about 21% of the total of those, and spread out too much.
svn:r16208
2008-07-25 14:43:24 +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
dff1ef7d06
r17337@aud-055: nickm | 2008-07-24 10:17:43 +0200
...
Refactor the is_vote field of networkstatus_t to add a third possibility ("opinion") in addition to vote and opinion. First part of implementing proposal 147.
svn:r16166
2008-07-24 09:22:27 +00:00
Nick Mathewson
ea95ce25b6
r17323@aud-055: nickm | 2008-07-23 17:58:25 +0200
...
Implement most of proposal 110.
svn:r16156
2008-07-23 15:58:38 +00:00
Nick Mathewson
2748afe609
r17322@aud-055: nickm | 2008-07-23 16:50:50 +0200
...
Make circid_t and streamid_t get used instead of uint16_t; it is possible we will soon want to make circid_t change to uint32_t.
svn:r16155
2008-07-23 15:58:30 +00:00
Nick Mathewson
15b2b8bd69
r17309@aud-055: nickm | 2008-07-23 16:05:43 +0200
...
Patch from Christian Wilms: remove (HiddenService|Rend)(Exclude)?Nodes options. They never worked properly, and nobody seems to be using them. Resolves bug 754.
svn:r16144
2008-07-23 14:07:32 +00:00
Nick Mathewson
cc46b23248
r17308@aud-055: nickm | 2008-07-23 15:57:41 +0200
...
In connection_edge_destroy, send a stream status control event when we have an AP connection. Previously, we would send an event when the connection was AP and non-AP at the same time. This didn't work so well. Patch from Anonymous Remailer (Austria). Backport candidate.
svn:r16143
2008-07-23 14:07:26 +00:00
Nick Mathewson
087094961b
r17302@aud-055: nickm | 2008-07-23 14:55:28 +0200
...
Never allow a circuit to be created with the same circid as a circuit that has been marked for close. May be a fix for bug 779. Needs testing. Backport candidate.
svn:r16136
2008-07-23 12:55:55 +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
bdcbd23e23
Stop trying to detect versions of Tor on the server-side older than 0.1.1.15-rc; they simply do not work any more. Also add comment about how or_is_obsolete is a terrible field name.
...
svn:r15982
2008-07-16 13:15:11 +00:00
Roger Dingledine
267e61d0f3
When relays do their initial bandwidth measurement, don't limit
...
to just our our entry guards for the test circuits. Otherwise we
tend to have multiple test circuits going through a single entry
guard, which makes our bandwidth test less accurate. Fixes part
of bug 654; patch contributed by Josh Albrecht.
(Actually, modify Josh's patch to avoid doing that when you're
a bridge relay, since it would leak more than we want to leak.)
svn:r15850
2008-07-11 21:42:09 +00:00
Nick Mathewson
787c66b70f
r16917@tombo: nickm | 2008-07-11 12:55:26 -0400
...
Remove token enum constant in routerparse.c that we do not actually use.
svn:r15841
2008-07-11 17:08:05 +00:00
Karsten Loesing
9231858ff5
Fix bug 763. When a hidden service is giving up on an introduction point candidate that was not included in the last published rendezvous descriptor, don't reschedule publication of the next descriptor.
...
svn:r15825
2008-07-10 21:02:01 +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
Nick Mathewson
0f8761f9fa
fix typos in last patch spotted by sebastian and karsten
...
svn:r15700
2008-07-06 18:47:27 +00:00
Nick Mathewson
615c64efb8
Apply fix from chrisw: call connection_ap_attach_pending when we get a rendezvous2 or rendezvous_established call. This is a bit brute-foce, but it is better than we had before, and might not even show up on profiles. Backport candidate, once tested.
...
svn:r15699
2008-07-06 18:34:45 +00:00
Karsten Loesing
28296ad6e8
Correct punctuation.
...
svn:r15690
2008-07-06 13:59:36 +00:00
Roger Dingledine
c411f83211
forward-port r15576
...
svn:r15577
2008-06-30 23:27:11 +00:00
Roger Dingledine
45742ce0b0
Make directory servers include the X-Your-Address-Is: http header in
...
their responses even for begin_dir conns. Now clients who only ever use
begin_dir connections still have a way to learn their IP address. Should
fix bug 737. Reported by goldy.
svn:r15571
2008-06-30 21:52:39 +00:00
Roger Dingledine
aec928e0b6
Send a bootstrap problem "warn" event on the first problem if the
...
reason is NO_ROUTE (that is, our network is down).
svn:r15443
2008-06-24 08:00:30 +00:00
Roger Dingledine
b7d00bd52e
whoops, i shouldn't've left that in
...
svn:r15434
2008-06-23 18:51:12 +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
8fa912a8c5
If we close our OR connection because there's been a circuit
...
pending on it for too long, we were telling our bootstrap status
events "REASON=NONE". Now tell them "REASON=TIMEOUT".
svn:r15369
2008-06-20 04:42:17 +00:00
Roger Dingledine
94dabd2c23
If you're using bridges, generate "bootstrap problem" warnings
...
as soon as you run out of working bridges, rather than waiting
for ten failures -- which will never happen if you have less than
ten bridges.
svn:r15368
2008-06-20 04:34:39 +00:00
Roger Dingledine
dd50ffb1de
Big bridge bugfixes. Backport candidates.
...
If you have more than one bridge but don't know their keys,
you would only learn a request for the descriptor of the first one
on your list. (Tor considered launching requests for the others, but
found that it already had a connection on the way for $0000...0000
so it didn't open another.)
If you have more than one bridge but don't know their keys, and the
connection to one of the bridges failed, you would cancel all
pending bridge connections. (After all, they all have the same
digest.)
svn:r15366
2008-06-20 03:13:16 +00:00
Roger Dingledine
d76d0493d6
start sending "COUNT=%d RECOMMENDATION=%s" key/values on bootstrap
...
problem status events, so the controller can hear about problems even
before tor decides they're worth reporting for sure.
svn:r15357
2008-06-19 04:50:06 +00:00
Roger Dingledine
ad6b2e7523
check-spaces, fix a typo
...
svn:r15355
2008-06-18 20:14:25 +00:00
Roger Dingledine
c6a94718cd
Directory authorities shouldn't complain about bootstrapping
...
problems just because they do a lot of reachability testing and
some of the connection attempts fail.
svn:r15348
2008-06-18 07:34:04 +00:00
Roger Dingledine
50d3adb819
I was on the second paragraph of my or-dev mail explaining why I chose to
...
set starting=1 to avoid potential bugs with having it conflict with 0,
which I used to mean uninitialized, when I realized I would be writing
many more lame-sounding paragraphs in the future. Just start it at 0
and handle the bugs.
svn:r15346
2008-06-18 05:35:19 +00:00
Nick Mathewson
ed174245c6
implement more fine-tuning options for stats code
...
svn:r15345
2008-06-18 04:34:52 +00:00
Karsten Loesing
024de76e5d
I was told there is an extend_info_free(). I won't leak memory again. I won't leak memory again. I won't ...
...
svn:r15335
2008-06-17 19:13:05 +00:00
Karsten Loesing
693d7e3e35
When establishing a hidden service, introduction points that originate from cannibalized circuits are completely ignored and not included in rendezvous service descriptors. Bugfix on 0.2.0.14-alpha. Backport candidate.
...
svn:r15332
2008-06-17 17:10:03 +00:00
Roger Dingledine
1ad83d74b1
Send an initial "Starting" bootstrap status event, so we have a
...
state to start out in.
svn:r15326
2008-06-17 08:15:42 +00:00
Roger Dingledine
c19392469d
add a getinfo so vidalia can query our current bootstrap state, in case
...
it attaches partway through and wants to catch up.
matt, is this a good format for you, or is there an even better format?
svn:r15325
2008-06-17 08:01:43 +00:00
Peter Palfrader
efeea9f6de
Fix .z suffix for intrumented download stats once more
...
svn:r15316
2008-06-16 22:40:26 +00:00
Peter Palfrader
6880df52eb
Fix .z suffix for intrumented download stats
...
svn:r15315
2008-06-16 22:39:23 +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
6299f4429a
Clean up a macro/cpp interaction related to bug 707. Also, add a new "filename" config value type which is currently just a synonym for string, but which might be subject to expansion later.
...
svn:r15305
2008-06-16 18:09:53 +00:00
Nick Mathewson
44452c2756
r16341@tombo: nickm | 2008-06-15 22:04:25 -0400
...
Allow spaces to be omitted in approved-router file fingerprints. Requested by arma.
svn:r15296
2008-06-16 02:08:30 +00:00
Nick Mathewson
96bf9cd4c5
Comments and doc tweaks on Karsten's testing-dir-networks patch
...
svn:r15254
2008-06-14 16:11:37 +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
97c06691b9
Malloc does not return size_t. (bug noticed by lodger.)
...
svn:r15252
2008-06-14 15:42:29 +00:00
Peter Palfrader
54b3b48802
Make unit tests pass again
...
svn:r15237
2008-06-13 23:24:11 +00:00
Roger Dingledine
6dee2bad83
note a bug that karsten found
...
svn:r15236
2008-06-13 23:05:48 +00:00
Roger Dingledine
5ded5b58a4
> why would it need an anonymized connection?
...
> ah.
> yes, i think you're right. i was thinking 3-hop, but i think it is 1-hop.
svn:r15235
2008-06-13 22:52:17 +00:00
Peter Palfrader
4ef606b8fc
implement proposal 138: removing down routers from consensus
...
svn:r15230
2008-06-13 21:22:49 +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
Peter Palfrader
1f3dc9b22b
Asking for a conditional consensus at .../consensus/<fingerprints> would crash
...
a dirserver if it did not already have a consensus.
svn:r15227
2008-06-13 18:58:58 +00:00
Roger Dingledine
52d3be06f1
steal some of the bootstrap phase strings from vidalia
...
svn:r15193
2008-06-13 06:23:46 +00:00
Nick Mathewson
bcde95509d
Actually reinstate errors that did not work on windows, and add a comment about reading the documentation of the S_CASE and E_CASE macros before adding new cases to the switch statements there.
...
svn:r15179
2008-06-13 03:52:58 +00:00
Roger Dingledine
b50206a9d2
ignore some errnos in hopes of building on windows again
...
svn:r15178
2008-06-13 02:07:17 +00:00
Roger Dingledine
6bd006bdb8
you can't strcasecmp on 20-byte digests
...
what if they contain nuls?
(worse, what if they *don't* contain nuls? ;)
svn:r15149
2008-06-11 22:46:31 +00:00
Nick Mathewson
a886e86cbd
r16171@tombo: nickm | 2008-06-11 13:47:41 -0400
...
Lower number of syscalls used to write data to ordinary sockets through use of writev. Disabled till I have time to test it.
svn:r15133
2008-06-11 17:56:52 +00:00
Roger Dingledine
62b507fee0
forward-port r15129, but also note the real way we should fix it.
...
svn:r15130
2008-06-11 11:12:29 +00:00
Roger Dingledine
8c85eef9b0
start sending "bootstrap problem" status events when we're having troubles
...
reaching relays.
svn:r15116
2008-06-11 01:14:23 +00:00
Roger Dingledine
42f21007a3
consolidate all our edge/circ/orconn reason-to-foo-or-back functions
...
svn:r15115
2008-06-11 00:17:02 +00:00
Karsten Loesing
33f846b313
In very rare situations new hidden service descriptors were published earlier than 30 seconds after the last change to the service, with the 30 seconds being the current voodoo saying that a descriptor is stable.
...
svn:r15113
2008-06-10 23:31:55 +00:00
Roger Dingledine
15680ce8d2
some cleanups in preparation for moving stuff around
...
svn:r15112
2008-06-10 23:13:14 +00:00
Roger Dingledine
45cc25c019
minor fixes and notes
...
svn:r15111
2008-06-10 23:00:11 +00:00
Nick Mathewson
67a1658da5
Fix last geoip bugs.
...
svn:r15106
2008-06-10 20:11:59 +00:00
Nick Mathewson
16b62a01e4
a couple more geoip bugfixes
...
svn:r15105
2008-06-10 19:51:48 +00:00
Nick Mathewson
e3d1ad67f6
r16139@tombo: nickm | 2008-06-10 15:25:23 -0400
...
Small formatting fixes for geoip-stats file.
svn:r15104
2008-06-10 19:25:25 +00:00
Nick Mathewson
8d484b64e4
r16137@tombo: nickm | 2008-06-10 15:10:55 -0400
...
sign error
svn:r15103
2008-06-10 19:11:02 +00:00
Nick Mathewson
1ec5705445
r16133@tombo: nickm | 2008-06-10 15:06:43 -0400
...
Pointers do not make good ints.
svn:r15102
2008-06-10 19:06:48 +00:00
Nick Mathewson
8fa2e80257
r16132@tombo: nickm | 2008-06-10 14:39:19 -0400
...
Whitespace fix
svn:r15101
2008-06-10 19:06:46 +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
d0a4ad3a1c
r16127@tombo: nickm | 2008-06-10 14:03:01 -0400
...
Improved code for counting clients by country: support recording by number of directory status requests in addition to number of IPs seen.
svn:r15097
2008-06-10 18:08:56 +00:00
Roger Dingledine
f4e12fa66d
make the 'bootstrap problem' stuff quieter while i'm messing with it
...
svn:r15094
2008-06-09 22:15:08 +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
baa3cea213
Start noticing and reporting bootstrapping failures too. It looks like
...
we never bothered learning why OR conns fail, so next step is to add some
infrastructure for that.
svn:r15091
2008-06-09 18:32:43 +00:00
Peter Palfrader
dba6d8c55a
also count number of downloads, not just the bytes
...
svn:r15090
2008-06-09 17:07:53 +00:00
Roger Dingledine
ac795353c4
fix a bug where we were never reporting the
...
"Finishing handshake with entry guard" bootstrap phase
svn:r15087
2008-06-09 07:01:52 +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
1ca2ead8c4
when we haven't had any application requests lately, don't bother
...
logging when we have expired a bunch of descriptors.
svn:r15074
2008-06-09 05:13:33 +00:00
Roger Dingledine
3bb5d3ba6d
include tags in the bootstrap status events. also document the
...
bootstrapping process and how the phases break down.
svn:r15020
2008-06-08 02:53:32 +00:00
Roger Dingledine
00fcd66218
actually start sending the bootstrap status event, so matt
...
can start playing with it on his side.
svn:r15009
2008-06-07 09:26:41 +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
56658956a1
minor comment cleanup and xxx
...
svn:r15006
2008-06-07 05:01:22 +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
6782682ac6
changing v2 network status doesn't require us to recompute
...
anything about whether enough v3 dir info is here.
svn:r14969
2008-06-05 09:01:18 +00:00
Roger Dingledine
2c84c10196
remove some networkstatus consensus warnings for unnamed / invalid
...
relays. they weren't very specific, and were confusing people before
we reduced their log severity. now nobody even knows they exist.
svn:r14968
2008-06-05 08:20:23 +00:00
Nick Mathewson
fa0989fd67
Make unit tests pass again: new geoip behavior had freaked out.
...
svn:r14949
2008-06-04 18:38:37 +00:00
Roger Dingledine
b8bde32c3a
forward-port r14934
...
svn:r14936
2008-06-04 09:02:25 +00:00
Roger Dingledine
c6b3cf4b96
documentation bug
...
svn:r14935
2008-06-04 08:59:14 +00:00
Roger Dingledine
00405468aa
forward-port r14930
...
svn:r14931
2008-06-04 07:41:22 +00:00
Roger Dingledine
f3d679d4cc
blind-forward-port that, while i'm at it
...
svn:r14929
2008-06-04 07:08:05 +00:00
Peter Palfrader
01c1a355c2
Also add create/create fast/extends to the dir-usage stats.
...
svn:r14900
2008-06-02 15:09:35 +00:00
Peter Palfrader
cfb1f554e2
Make note_request() accessible from outside of directory.c
...
svn:r14899
2008-06-02 15:09:29 +00:00
Peter Palfrader
716558a6a1
Instrument all downloads that pass through connection_dir_client_reached_eof()
...
svn:r14897
2008-06-02 15:09:19 +00:00
Nick Mathewson
3a469018e5
Fix warning when compiling with dmalloc.
...
svn:r14829
2008-05-29 14:37:56 +00:00
Nick Mathewson
ac330d9ba7
New code to implement proposal for local geoip stats. Only enabled with --enable-geoip-stats passed to configure.
...
svn:r14802
2008-05-29 02:29:35 +00:00
Nick Mathewson
a335b94c8f
On win32, default to looking for the geoip file in the same directory as torrc. This is a dumb hack; it should turn into a general mechanism.
...
svn:r14796
2008-05-29 01:22:30 +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
Roger Dingledine
277dce9ecf
document the handle-comments-in-geoip file
...
svn:r14785
2008-05-28 21:10:46 +00:00
Nick Mathewson
6641152514
Fix some warnings.
...
svn:r14781
2008-05-28 18:34:10 +00:00
Nick Mathewson
bd3b86df3b
Several geoip changes/fixes as requested.
...
svn:r14780
2008-05-28 18:31:57 +00:00
Roger Dingledine
7f61dafe8d
include the geoip file in the tarball, and load it by default
...
when tor starts.
this breaks rpms and maybe other packages.
svn:r14764
2008-05-28 04:37:34 +00:00
Nick Mathewson
4ea2a4595e
Fix the first part of bug 681, as suggested by Robert Hogan on or-talk.
...
svn:r14754
2008-05-27 21:02:36 +00:00
Nick Mathewson
9975c4f6f8
Fix part of bug 681: always reattach tunneled directory connections, regardless of the setting for LeaveStreamsUnattached
...
svn:r14750
2008-05-27 20:26:40 +00:00
Nick Mathewson
09cd8fa371
r19795@catbus: nickm | 2008-05-16 14:54:24 -0400
...
Rename tor_addr_t manipulation functions for a consistent style.
svn:r14639
2008-05-16 19:19:49 +00:00
Nick Mathewson
0b6b356f71
r19725@catbus: nickm | 2008-05-13 08:47:18 -0400
...
Forward-port: update authority keys affected by Debian OpenSSL bug (See CVE-2008-0166 or http://lists.debian.org/debian-security-announce/2008/msg00152.html )
svn:r14603
2008-05-13 12:47:27 +00:00
Nick Mathewson
e1ef199cf6
r19714@catbus: nickm | 2008-05-12 17:11:47 -0400
...
Fwdport Bugfix: an authority signature is "unrecognized" if we lack a dirserver entry for it, even if we have an older cached certificate that says it is recognized. This affects clients who remove entries from their dirserver list without clearing their certificate cache.
svn:r14597
2008-05-12 21:12:21 +00:00
Nick Mathewson
42dc560b1a
r19705@catbus: nickm | 2008-05-12 11:40:15 -0400
...
Actually load the legacy key, not just the authority key twice.
svn:r14594
2008-05-12 15:40:36 +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
Nick Mathewson
f3f6ecef48
r19690@catbus: nickm | 2008-05-11 22:13:31 -0400
...
Implement a proposal to let a directory authority migrate its identity key without ceasing to sign consensuses.
svn:r14584
2008-05-12 02:14:01 +00:00
Roger Dingledine
755cbe5d44
cosmetic patch by Bernhard M. Wiedemann, so our comments follow
...
the socks5 protocol better
svn:r14552
2008-05-04 09:36:48 +00:00
Nick Mathewson
6d5a9c81b0
r19496@catbus: nickm | 2008-05-02 19:10:29 -0400
...
Even compile errors need closing quotes.
svn:r14533
2008-05-02 23:11:43 +00:00
Roger Dingledine
5ad9dc2244
apply patch from lodger to simplify code a bit
...
svn:r14474
2008-04-25 18:42:42 +00:00
Peter Palfrader
4fa1c69c44
Only using v3 authorities and using the proper digest works better
...
svn:r14455
2008-04-24 21:29:47 +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
eaad3ab395
Spec compliance: sort id fingerprints in consensus get requests
...
svn:r14450
2008-04-24 15:39:10 +00:00
Peter Palfrader
901ee58c53
Enable conditional consensus downloading starting with 0.2.1.1-alpha servers
...
svn:r14449
2008-04-24 15:39:08 +00:00
Peter Palfrader
9d181ec106
Fix doxygen comments to not use <> for metavars since they have to be valid HTML
...
svn:r14447
2008-04-24 15:39:01 +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
Peter Palfrader
006b5762d3
Implement the server part of the consensus-by-authority-fpr proposal
...
svn:r14445
2008-04-24 15:38:54 +00:00
Roger Dingledine
d5be900986
forward-port the severity fixes
...
svn:r14442
2008-04-24 05:32:55 +00:00
Nick Mathewson
d02d6660a8
r15308@tombo: nickm | 2008-04-23 16:46:48 -0400
...
Free baddir and badexit policy lists on exit. fixes bug 672. only affects authorities.
svn:r14431
2008-04-23 20:47:53 +00:00
Nick Mathewson
05b184de01
r15304@tombo: nickm | 2008-04-23 16:31:40 -0400
...
Forward-port: I had apparently broken OSX and Freebsd by not initializing threading before we initialize the logging system. This patch should do so, and fix bug 671.
svn:r14430
2008-04-23 20:32:31 +00:00
Roger Dingledine
5dc8062afa
what, we went from v4 to v6?
...
svn:r14428
2008-04-23 18:37:24 +00:00
Roger Dingledine
a1366be7ee
forward-port r14421
...
svn:r14424
2008-04-23 00:31:20 +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
d72b256f4f
When we choose to abandon a new entry guard because we think our
...
older ones might be better, close any circuits pending on that
new entry guard connection. Bugfix on 0.1.2.8-beta; found by lodger.
svn:r14417
2008-04-22 18:38:25 +00:00
Nick Mathewson
bc95a4dbcb
r15283@tombo: nickm | 2008-04-22 13:43:45 -0400
...
Correctly notify one-hop connections when a circuit build has failed. possible fix for bug 669. found by lodger.
svn:r14415
2008-04-22 17:44:28 +00:00
Nick Mathewson
21592ad429
r15278@tombo: nickm | 2008-04-22 13:17:37 -0400
...
Apply patch from mwenge to fix bug 646: makes stream events for dns requests get generated more consistently.
svn:r14413
2008-04-22 17:21:12 +00:00
Nick Mathewson
e623d9baff
r15277@tombo: nickm | 2008-04-22 13:14:18 -0400
...
Note a place to refactor.
svn:r14412
2008-04-22 17:21:09 +00:00
Nick Mathewson
ef9c34688c
r15273@tombo: nickm | 2008-04-22 12:32:28 -0400
...
apply patch from lodger: reject requests for reverse-dns lookup of names in private address space. make non-exits reject all dns requests. Fixes bug 619.
svn:r14410
2008-04-22 16:32:55 +00:00
Nick Mathewson
6e979489dc
r15269@tombo: nickm | 2008-04-22 12:23:30 -0400
...
Fix bug 663: warn less verbosely about clock skew from netinfo cells
svn:r14408
2008-04-22 16:23:47 +00:00
Peter Palfrader
0cbecbe050
Fix a pair of comments
...
svn:r14405
2008-04-22 15:20:46 +00:00
Nick Mathewson
1b9c06ab96
r15230@tombo: nickm | 2008-04-17 16:18:08 -0400
...
Do not allocate excess space for named_flag and unnamed_flag in dirvote.c. Fixes bug 662. Not a dangerous bug: sizeof(int*) is at least as big as sizeof(int) everywhere.
svn:r14391
2008-04-17 20:23:13 +00:00
Roger Dingledine
5e299b5e01
minor fixes that have been accumulating
...
svn:r14378
2008-04-16 00:12:44 +00:00
Roger Dingledine
2b4ff1718f
forward-port r14375 and try to make it less likely to happen again
...
svn:r14377
2008-04-16 00:10:39 +00:00
Roger Dingledine
20f927c2dd
forward-port r14373
...
svn:r14374
2008-04-15 23:06:31 +00:00
Nick Mathewson
b927ede48c
r15161@31-33-107: nickm | 2008-04-10 11:11:58 -0400
...
Make dumpstats() log the size and fullness of openssl-internal buffers, so I can test my hypothesis that many of them are empty, and my alternative hypothesis that many of them are mostly empty, against the null hypothesis that we really need to be burning 32K per open OR connection on this.
svn:r14350
2008-04-10 15:12:24 +00:00
Nick Mathewson
4901ee0a8c
r19273@catbus: nickm | 2008-04-09 14:44:23 -0400
...
Do a slightly better fix for r14329: don't call time() quite so much. Also note the time(NULL) hack we wanted to do in the TODO.
svn:r14334
2008-04-09 18:44:50 +00:00
Nick Mathewson
186df044cd
r19262@catbus: nickm | 2008-04-09 14:05:20 -0400
...
When writing relay cells to a buffer, update timestamp_last_added_nonpadding. Bugfix on 0.2.0.1-alpha. Backport candidate.
svn:r14329
2008-04-09 18:05:47 +00:00
Nick Mathewson
31153d6374
r19243@catbus: nickm | 2008-04-08 13:28:59 -0400
...
Use a freelist to hold a few recent memarea chunks. We do a kazillion memarea allocs and frees; that cant be good for us.
svn:r14319
2008-04-08 17:29:05 +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
0c9efd6a1e
r19231@catbus: nickm | 2008-04-07 12:45:58 -0400
...
Update last_listed_as_valid_until for new routers based on v2 networkstatus as well as consensus networkstatus.
svn:r14317
2008-04-08 17:06:38 +00:00
Nick Mathewson
2d68487e7f
r19229@catbus: nickm | 2008-04-07 12:28:22 -0400
...
Add a new SMARTLIST_FOREACH_JOIN macro to iterate through two sorted lists in lockstep. This happens at least 3 times in the code so far, and is likely to happen more in the future. Previous attempts to do so proved touchy, tricky, and error-prone: now, we only need to get it right in one place.
svn:r14309
2008-04-07 16:28:34 +00:00
Nick Mathewson
85db675911
r19202@catbus: nickm | 2008-04-04 17:18:47 -0400
...
Make last_served_at optional; make last_listed_as_valid_until take account (partially) of v2 statuses.
svn:r14299
2008-04-04 21:18:56 +00:00
Nick Mathewson
68407e6a9c
r19199@catbus: nickm | 2008-04-03 15:01:05 -0400
...
Fix bug 641 and 650, I think.
svn:r14297
2008-04-03 19:01:16 +00:00
Roger Dingledine
1ac11591d2
a potential fix for bug 641.
...
svn:r14281
2008-04-02 20:48:36 +00:00
Roger Dingledine
39c402c29f
when add_file_log() fails, tell us why.
...
svn:r14277
2008-04-01 21:05:31 +00:00
Nick Mathewson
d43a9d9440
r19152@catbus: nickm | 2008-03-30 23:20:11 -0400
...
Make unit tests pass again after Link protocol list change.
svn:r14254
2008-03-31 03:20:55 +00:00
Nick Mathewson
006530f037
r19140@catbus: nickm | 2008-03-30 14:13:36 -0400
...
Note in our router descriptors that we actually support link protocol version 2, now that it seems to work.
svn:r14246
2008-03-30 18:14:55 +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
e89bf1c573
r19109@catbus: nickm | 2008-03-27 16:05:18 -0400
...
Replace a syntax error and a log message that was never emitted with a simple assert. Asserts are fun and easy.
svn:r14224
2008-03-27 20:05:44 +00:00
Peter Palfrader
9d132fbde6
Add --hush switch.
...
New --hush command-line option similar to --quiet. While --quiet disables all
logging to the console on startup, --hush limits the output to messages of
warning and error severity.
svn:r14222
2008-03-27 17:25:49 +00:00
Nick Mathewson
968ad93b0a
r19093@catbus: nickm | 2008-03-27 12:43:58 -0400
...
Only log a notice that dmalloc has been set up if it fails. Actually, since we have not added a temp log yet, I am not sure this ever does anything.
svn:r14216
2008-03-27 16:46:39 +00:00
Nick Mathewson
4e6b6e3ad7
r19092@catbus: nickm | 2008-03-27 12:43:29 -0400
...
Stop supporting anything besides CMD_RUN_TOR in ntmain.c. Based on patch from Sebastian Hahn.
svn:r14215
2008-03-27 16:46:36 +00:00
Nick Mathewson
12b217bce8
r19091@catbus: nickm | 2008-03-27 12:42:57 -0400
...
Stop reading torrc when all we want to do is --hash-password. Fix based on patch from Sebastian Hahn. Backport candidate.
svn:r14214
2008-03-27 16:46:34 +00:00
Nick Mathewson
02acee891c
r19089@catbus: nickm | 2008-03-27 11:05:23 -0400
...
Free some static hashtables and the log mutex on exit. Backport candidate.
svn:r14212
2008-03-27 15:05:28 +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
944bd3dbed
r19074@catbus: nickm | 2008-03-26 17:08:32 -0400
...
Start new address policies with refcount of 1, not 2. Backport candidate once tested more.
svn:r14204
2008-03-26 21:08:39 +00:00
Nick Mathewson
e8cc756c13
r19072@catbus: nickm | 2008-03-26 13:50:24 -0400
...
Add code to debug memory area size. Use results of this code to set a couple of area sizes more sanely.
svn:r14201
2008-03-26 17:50:27 +00:00
Nick Mathewson
745f3c859a
r19066@catbus: nickm | 2008-03-26 13:24:15 -0400
...
Initialize logging before we log anything. Bugfix on 0.2.0.x-alpha.
svn:r14199
2008-03-26 17:25:16 +00:00
Nick Mathewson
762d82cf74
r19062@catbus: nickm | 2008-03-26 12:56:25 -0400
...
Fix whitespace
svn:r14197
2008-03-26 16:56:37 +00:00
Nick Mathewson
3af9e099f7
r19061@catbus: nickm | 2008-03-26 12:53:18 -0400
...
Now that every thing in routerparse.c is switched over to use memareas, there is no need to keep the heap-allocated token code.
svn:r14196
2008-03-26 16:56:34 +00:00
Nick Mathewson
6edab8569a
r19060@catbus: nickm | 2008-03-26 12:44:19 -0400
...
Make v2 hidden service descriptors use the new area allocation logic. This works for me, but Karsten should definitely have a look at it.
svn:r14195
2008-03-26 16:56:31 +00:00
Nick Mathewson
e4ebe3409e
r19049@catbus: nickm | 2008-03-26 12:33:25 -0400
...
Add new stacklike, free-all-at-once memory allocation strategy. Use it when parsing directory information. This helps parsing speed, and may well help fragmentation some too. hidden-service-related stuff still uses the old tokenizing strategies.
svn:r14194
2008-03-26 16:33:33 +00:00
Nick Mathewson
df6b256bc0
r19041@catbus: nickm | 2008-03-25 16:20:42 -0400
...
More unit tests to improve coverage.
svn:r14185
2008-03-25 20:20:45 +00:00
Nick Mathewson
41deb5cd7b
r19039@catbus: nickm | 2008-03-25 12:15:58 -0400
...
Add some unit tests, particularly for AES counter mode.
svn:r14180
2008-03-25 16:16:05 +00:00
Roger Dingledine
9047361007
Mar 24 08:43:30.014 [debug] circuit_find_to_cannibalize(): Hunting for
...
a circ to cannibalize: purpose 5, uptime 0, capacity 4, internal 0
svn:r14166
2008-03-24 18:43:01 +00:00
Roger Dingledine
13174b8f97
fix r14162 so it was what i meant. sometimes precedence is surprising!
...
svn:r14164
2008-03-24 07:24:09 +00:00
Roger Dingledine
a9acdb8f53
when our onehop circuits were failing, nobody was telling the
...
streams. so they waited 120 seconds before timing out. this
was particularly bad during bootstrapping, if an authority is
down or not answering right.
svn:r14163
2008-03-24 05:48:51 +00:00
Roger Dingledine
c26c77d24d
If our create-fast cell is mysteriously never answered for a begindir
...
attempt, notice more quickly. Some of our bootstrapping attempts have a 60
second delay while we sit there wondering why we're getting no response.
svn:r14162
2008-03-24 03:50:21 +00:00
Roger Dingledine
52b267b987
make it build, too
...
svn:r14151
2008-03-21 21:59:57 +00:00
Nick Mathewson
b5b77f8bf3
r19004@catbus: nickm | 2008-03-21 15:18:43 -0400
...
Use RAND_poll() again: the bug that made us stop using it has been fixed.
svn:r14150
2008-03-21 19:18:57 +00:00
Roger Dingledine
7ed6406ce9
forward-port 14113-r14115
...
svn:r14116
2008-03-18 23:12:41 +00:00
Nick Mathewson
e96d22e914
r18941@catbus: nickm | 2008-03-18 14:59:43 -0400
...
Likely fix for bug 632: do not call start_reading on a placeholder connection.
svn:r14109
2008-03-18 19:00:12 +00:00
Nick Mathewson
a62a24036d
r18937@catbus: nickm | 2008-03-18 14:50:39 -0400
...
Fix the other lingering part of bug 617: make ClientDNSRejectInternalAddresses actually work.
svn:r14107
2008-03-18 18:51:34 +00:00
Nick Mathewson
ba915e4211
r18913@catbus: nickm | 2008-03-18 10:30:39 -0400
...
16, not 64.
svn:r14094
2008-03-18 14:30:46 +00:00
Roger Dingledine
31d185a23b
point out another bug for nick. and if it's *not* a bug, that's
...
stunning and i want to know why. :)
svn:r14088
2008-03-18 03:08:48 +00:00
Roger Dingledine
2117abbe3f
forward-port the 0.2.0.22-rc changelog entry, plus remove
...
some duplicate items.
svn:r14086
2008-03-18 02:39:34 +00:00
Nick Mathewson
fe1b2a4ed4
r18900@catbus: nickm | 2008-03-17 18:32:25 -0400
...
Fix tests and routerdesc behavior on trunk.
svn:r14084
2008-03-17 22:32:28 +00:00
Nick Mathewson
e17e6371d1
r18896@catbus: nickm | 2008-03-17 16:10:54 -0400
...
Fix bug in earlier bugfix. Note stupidness of allowing NULL policies at all. Disallow empty exit policies in router descriptors.
svn:r14082
2008-03-17 20:10:57 +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
9a24158c69
r18880@catbus: nickm | 2008-03-17 12:51:24 -0400
...
Fix policy-related crash bug found by lodger.
svn:r14077
2008-03-17 16:51:48 +00:00
Nick Mathewson
296289de82
r18873@catbus: nickm | 2008-03-17 00:06:31 -0400
...
oops. guard status logging change had a bug. it is non-obvious how to make the code perfect atm; just make it work.
svn:r14070
2008-03-17 04:07:56 +00:00
Nick Mathewson
e6b617bf05
r18872@catbus: nickm | 2008-03-16 23:56:48 -0400
...
Only dump all guard node status to the log when the guard node status actually changes. Downgrade the 4 most common remaining INFO log messages to DEBUG.
svn:r14069
2008-03-17 04:07:51 +00:00
Nick Mathewson
c59f66709d
r18862@catbus: nickm | 2008-03-16 23:33:11 -0400
...
Part of fix for bug 617: allow connection_ap_handshake_attach_circuit() to mark connections, to avoid double-mark warnings. Note that this is an incomplete refactoring.
svn:r14066
2008-03-17 03:37:54 +00:00
Nick Mathewson
bd547e3cfc
r18861@catbus: nickm | 2008-03-16 23:22:56 -0400
...
Fix a couple of bugs in setting control log callback severity.
svn:r14065
2008-03-17 03:37:52 +00:00
Nick Mathewson
46155aca17
r18804@catbus: nickm | 2008-03-13 18:18:31 -0400
...
Refactor log domain mask code so that nobody outside of log.c has to use SEVERITY_MASK_IDX. It is error-prone.
svn:r14016
2008-03-13 22:18:38 +00:00
Peter Palfrader
925ba96508
downgrade get_interface_address6 logging severity to LOG_DEBUG.
...
get_interface_address6() fails regardless of the allocator used,
wever logging to the original severity of 0 causes an assert
error only with the bsd allocator. weird.
svn:r14005
2008-03-13 16:15:16 +00:00
Nick Mathewson
365f16b199
r18787@catbus: nickm | 2008-03-13 11:11:52 -0400
...
Make set-option functions return sensible error codes from an enum, not mysterious negative integers
svn:r14004
2008-03-13 15:11:56 +00:00
Peter Palfrader
24884bb3ed
Use proper log levels with get_interface_address6() calls so we do not die in an assert error because of invalid log levels. Should a failure here fail our test suite?
...
svn:r14003
2008-03-13 15:10:35 +00:00
Nick Mathewson
11e464c331
r18753@catbus: nickm | 2008-03-11 14:56:39 -0400
...
Make some assert()s into tor_assert()s. Make some tor_assert()s called from logging into assert()s, and document why.
svn:r13977
2008-03-11 18:56:41 +00:00
Nick Mathewson
4b65ea0ec0
r18730@catbus: nickm | 2008-03-11 00:47:04 -0400
...
Forward-port: Fix the SVK version detection logic to work right on a branch: tolerate multiple "copied from" tags and only look at the first.
svn:r13959
2008-03-11 04:47:07 +00:00
Nick Mathewson
8b24e01599
r18723@catbus: nickm | 2008-03-11 00:25:30 -0400
...
Fix bug spotted by mwenge: a server_event should not be a sever_event. Also, fix compile errors in config.c and control.c with --enable-gcc-warnings.
svn:r13957
2008-03-11 04:30:14 +00:00
Peter Palfrader
2704a2e129
And appease the whitespace nazis among us
...
svn:r13950
2008-03-10 12:43:47 +00:00
Peter Palfrader
79f1ee8a2d
Implement LOADCONF control command
...
The LOADCONF control command allows posting a config file to Tor
over the control interface. This config file is then loaded as if
it had been read from disk. Sending a HUP signal to Tor will make
it try to load its old config from disk again, thereby forgetting
the config loaded with this command.
svn:r13948
2008-03-10 12:41:52 +00:00
Peter Palfrader
bc4095c70c
different exit codes for options_init_from_string()
...
Change options_init_from_string() so that it returns different exit codes in the
error case, depending on what went wrong. Also push the responsibility to log
the error to the caller.
svn:r13947
2008-03-10 12:41:49 +00:00
Peter Palfrader
8c71d7ea16
options_init_from_torrc(): split off options_init_from_string()
...
svn:r13946
2008-03-10 12:41:44 +00:00
Peter Palfrader
947fd064a3
Store options we got from commandline seperately from bare argv/argc
...
svn:r13945
2008-03-10 12:41:40 +00:00
Peter Palfrader
00d64fd213
options_init_from_torrc(): move code that loads torrc into its own function
...
move code that loads torrc from disk and sets torrc_fname into its own function
svn:r13944
2008-03-10 12:41:36 +00:00
Peter Palfrader
ded55fa296
options_init_from_torrc(): tread non-existing torrc like empty torrc.
...
Tread the case of a non-existing conffile, when allowed, exactly like the one
with an empty torrc.
svn:r13943
2008-03-10 12:41:33 +00:00
Peter Palfrader
e8f4d79ec1
options_init_from_torrc(): move code that looks for torrc into its own function
...
Part of options_init_from_torrc()'s job was looking for -f flags (to specify
an alternate config file) on the command line, complaining if more than one
is given or the given does not exist. If none is given then use the compiled-in
default location, accepting if it does not exist. This logic has been moved
into its own function in an attemped to make options_init_from_torrc() easier
to deal with.
svn:r13942
2008-03-10 12:41:29 +00:00
Peter Palfrader
4118e319c7
options_init_from_torrc(): Split argv processing into two parts
...
Split the argv processing loop into two poarts, one that deals with
figuring out which conffile to use, and the other that figures out
which "command" (hash fingerprint, verify config, list fpr, run tor)
the user asked for.
There is a third part further down that imports command line args
into the config but that is not touched.
svn:r13941
2008-03-10 12:41:26 +00:00
Peter Palfrader
8987bd2fd9
If we decrement incoming_cmd's length when receiving the ending CRLF "." CRLF for a multi-line control command, also truncate the string by nul-terminating it in the correct place.
...
svn:r13939
2008-03-10 12:13:43 +00:00
Roger Dingledine
0df1564298
forward-port recent changes
...
svn:r13935
2008-03-10 07:50:09 +00:00
Nick Mathewson
7587e16796
r18639@catbus: nickm | 2008-03-07 20:11:48 -0500
...
Change semantics of add-a-log functions to copy severity setup: that is way less error-prone. Fix up config.c to act accordingly.
svn:r13888
2008-03-08 01:11:54 +00:00
Nick Mathewson
f56ba5f3d6
r18630@catbus: nickm | 2008-03-05 17:31:33 -0500
...
Implement domain-selection for logging. Source is documented; needs documentation in manpage (maybe). For now, see doxygen comment on parse_log_severity_config in log.c
svn:r13875
2008-03-05 22:31:39 +00:00
Peter Palfrader
9e7b4400dc
minor cleanup
...
in options_act() we set running_tor to options->command == CMD_RUN_TOR
once and used that in all but one place. Now we use running_tor in that
place also.
svn:r13819
2008-03-03 12:48:13 +00:00
Roger Dingledine
5bf0a01011
forward-port r13799 and the 0.2.0.21-rc changelog
...
svn:r13808
2008-03-02 22:29:04 +00:00
Roger Dingledine
cf3e1b1309
we should consider dumping the v1 directory stuff from 0.2.1.x.
...
perhaps we would even replace the v1 directory with a static
page saying 'this is a tor server, let me tell you what that is'.
svn:r13797
2008-03-01 17:47:41 +00:00
Roger Dingledine
c5a7ff8e43
forward-port r13777
...
svn:r13778
2008-02-29 01:45:06 +00:00
Nick Mathewson
eefe2a3562
r18462@catbus: nickm | 2008-02-27 14:15:57 -0500
...
Add better warnings for the error that produced bug 614, and downgrade from a tor_assert() to a tor_fragile_assert().
svn:r13752
2008-02-27 19:19:34 +00:00
Nick Mathewson
d14f8f2547
r14516@tombo: nickm | 2008-02-27 03:10:26 -0500
...
Write some unit tests for a few functions and cases that needed them.
svn:r13751
2008-02-27 08:10:28 +00:00
Roger Dingledine
e7f3d6f76c
fix most of pnx's warnings on irix64
...
svn:r13706
2008-02-24 23:39:53 +00:00
Nick Mathewson
3452486ac6
r14422@tombo: nickm | 2008-02-24 17:09:56 -0500
...
Whitespace fixes
svn:r13700
2008-02-24 22:11:18 +00:00
Nick Mathewson
ee8dce3084
r14421@tombo: nickm | 2008-02-24 17:05:18 -0500
...
Patch from mwenge: always willingly serve our own extrainfo from the controlport
svn:r13699
2008-02-24 22:11:12 +00:00
Nick Mathewson
dde81de3dd
r14419@tombo: nickm | 2008-02-24 16:55:11 -0500
...
Patch from tup: use sizeof sockaddr_un as the size of a unix sockaddr. Fixes unix controlsocket binding on openbsd.
svn:r13697
2008-02-24 22:11:00 +00:00
Nick Mathewson
e0de72dd87
r14410@tombo: nickm | 2008-02-23 16:51:46 -0500
...
Fix the last of the -Wshorten-64-to-32 warnings.
svn:r13696
2008-02-24 22:10:08 +00:00
Roger Dingledine
31f72a3d80
Servers that don't know their own IP address should go to the
...
authorities for their first directory fetch, even if their DirPort
is off or if they don't know they're reachable yet. This will help
them bootstrap better. Bugfix on 0.2.0.18-alpha; fixes bug 609.
svn:r13688
2008-02-23 23:39:16 +00:00
Roger Dingledine
cd4b95e402
Make "HashedControlPassword" an alias for "__HashedControlSessionPassword"
...
if it appears on the commandline. should help with bug 586.
svn:r13683
2008-02-22 23:20:28 +00:00
Nick Mathewson
7589765ae9
r14401@tombo: nickm | 2008-02-22 15:33:42 -0500
...
Fix a really stupid parthensis error noticed by mwenge.
svn:r13681
2008-02-22 20:33:47 +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
5ec5a747d7
Quiet the "Exitrouter '%s' seems to be more restrictive than its exit
...
policy. Not using this router as exit for now." message, since it
legitimately appears every so often and there's no need to alarm users.
svn:r13677
2008-02-22 14:31:40 +00:00
Nick Mathewson
e68760ac0f
r14388@tombo: nickm | 2008-02-21 22:44:28 -0500
...
More 64-to-32 fixes.
svn:r13672
2008-02-22 03:44:36 +00:00
Nick Mathewson
69300eb606
r14374@tombo: nickm | 2008-02-21 16:57:39 -0500
...
Fix all remaining shorten-64-to-32 errors in src/common. Some were genuine problems. Many were compatibility errors with libraries (openssl, zlib) that like predate size_t. Partial backport candidate.
svn:r13665
2008-02-21 21:57:47 +00:00
Roger Dingledine
1cd90948ab
maybe appease the overflow detectors more
...
svn:r13663
2008-02-21 21:56:04 +00:00
Nick Mathewson
daefbfe691
r14371@tombo: nickm | 2008-02-21 16:13:18 -0500
...
Fix all -Wshorten-64-to-32 warnings that appear on my macbook.
svn:r13662
2008-02-21 21:15:31 +00:00
Nick Mathewson
5c03f82a65
r18345@catbus: nickm | 2008-02-21 13:45:04 -0500
...
Do the last part of arma's fix for bug 437: Track the origin of every addrmap, and use this info so we can remove all the trackhostexits-originated mappings for a given exit.
svn:r13660
2008-02-21 18:45:11 +00:00
Nick Mathewson
0ba2bfeef6
r14363@31-33-219: nickm | 2008-02-21 11:11:33 -0500
...
Answer the next-to-last XXX020rc item.
svn:r13658
2008-02-21 16:12:01 +00:00
Nick Mathewson
e2f25558b9
r14362@31-33-219: nickm | 2008-02-21 11:01:10 -0500
...
Change some of our log messages related to closed TLS connections in order to better reflect reality.
svn:r13657
2008-02-21 16:11:58 +00:00
Nick Mathewson
e18ee2a2ab
r14357@31-33-219: nickm | 2008-02-21 10:39:11 -0500
...
Fix bug-handling code for unhandled write errors, so that it does not try to flush any data on the failed connection. Bugfix on 0.1.2.x.
svn:r13655
2008-02-21 15:39:26 +00:00
Nick Mathewson
41eca067a1
r14356@31-33-219: nickm | 2008-02-21 10:38:26 -0500
...
Defer a couple of XXX020rc items, based on recommendation from arma.
svn:r13654
2008-02-21 15:39:24 +00:00
Nick Mathewson
8b1789c71f
r18336@catbus: nickm | 2008-02-21 09:33:15 -0500
...
Patch from Sebastian Hahn: remove obsolete timeval manipulation functions.
svn:r13653
2008-02-21 14:33:20 +00:00
Roger Dingledine
b3c0d066e5
other cleanups that have been sitting in my sandbox
...
svn:r13649
2008-02-21 09:01:32 +00:00
Roger Dingledine
a60f7caa54
start allowing clients to give up on trackhostexits targets if
...
five circuit attempts fail for a given stream. part of the fix
for bug 437. still an XXX020rc remaining.
svn:r13648
2008-02-21 09:00:54 +00:00
Roger Dingledine
18a209ffe6
Even though the man page said that "TrackHostExits ." should
...
work, nobody had ever implemented it. Bugfix on 0.1.0.x.
svn:r13647
2008-02-21 08:08:13 +00:00
Roger Dingledine
828c707812
Change the behavior of "getinfo status/good-server-descriptor"
...
so it doesn't return failure when any authority disappears.
svn:r13645
2008-02-21 06:06:45 +00:00
Roger Dingledine
b28a342e35
resolve one more, and leave two for nick.
...
svn:r13644
2008-02-21 05:53:50 +00:00
Roger Dingledine
1812a22a60
If we're trying to flush the last bytes on a connection (for
...
example, when answering a directory request), reset the
time-to-give-up timeout every time we manage to write something
on the socket. Bugfix on 0.1.2.x.
svn:r13643
2008-02-21 05:51:09 +00:00
Roger Dingledine
8889229407
and another useful answer
...
svn:r13642
2008-02-21 05:42:12 +00:00
Roger Dingledine
0ddc9d5707
answer one of nick's XXX020rc's usefully
...
svn:r13641
2008-02-21 05:38:19 +00:00
Nick Mathewson
063ced8903
r18296@catbus: nickm | 2008-02-20 23:30:11 -0500
...
Answer one xxx020 item; move 7 other ones to a new "XXX020rc" category: they should get fixed before we cut a release candidate. arma: please review these to see whether you have fixes/answers for any. Please check out the other 14 XXX020s to see if any look critical for the release candidate.
svn:r13640
2008-02-21 04:30:14 +00:00
Nick Mathewson
47e6247673
r18294@catbus: nickm | 2008-02-20 22:42:44 -0500
...
Fix a spelling error and clean up a recent veracode-induced integer overflow check. Both spotted by Chris Palmer.
svn:r13639
2008-02-21 03:42:56 +00:00
Nick Mathewson
1df0647c66
r18291@catbus: nickm | 2008-02-20 22:35:32 -0500
...
Resolve all DOCDOC issues, and document some other undocumented code, and fix a changelog entry.
svn:r13638
2008-02-21 03:38:46 +00:00
Nick Mathewson
ae507a61cc
r18288@catbus: nickm | 2008-02-20 21:18:38 -0500
...
Recover from bad tracked-since value in mtbf history file. This may finally close bug 537.
svn:r13636
2008-02-21 02:18:41 +00:00
Nick Mathewson
0e9dcfab97
r18286@catbus: nickm | 2008-02-20 21:10:33 -0500
...
Fix a bug that kept buf_find_string_offset from finding a string at the very end of the buffer. Add a unit test for this. Also, do not save a pointer to a chunk that might get reallocated by buf_pullup().
svn:r13635
2008-02-21 02:10:38 +00:00
Nick Mathewson
3b58f9929f
r18283@catbus: nickm | 2008-02-20 18:58:31 -0500
...
Fix assertion when searching for a string in an empty chunk.
svn:r13634
2008-02-20 23:58:48 +00:00
Nick Mathewson
304bdfdc6b
r18279@catbus: nickm | 2008-02-20 18:38:48 -0500
...
Log message to try to detect error in buffers.c
svn:r13633
2008-02-20 23:38:57 +00:00
Nick Mathewson
8b8d38162b
r18278@catbus: nickm | 2008-02-20 18:29:07 -0500
...
Unit tests for buf_find_string_offset()
svn:r13632
2008-02-20 23:38:55 +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
93aa335516
r18269@catbus: nickm | 2008-02-20 17:28:24 -0500
...
Apply patch from Sebastian Hahn: stop imposing an arbitrary maximum on the number of file descriptors used for busy servers. Bug reported by Olaf Selke.
svn:r13626
2008-02-20 22:28:26 +00:00
Nick Mathewson
384a8ab777
r18267@catbus: nickm | 2008-02-20 16:57:45 -0500
...
Suppress signed/unsigned comparison warnings in buffers.c
svn:r13624
2008-02-20 21:57:48 +00:00
Nick Mathewson
7521ef9a00
r18264@catbus: nickm | 2008-02-20 12:48:21 -0500
...
fix bufs in buf_pos_t implementation.
svn:r13623
2008-02-20 17:48:39 +00:00
Nick Mathewson
5dd9d16b94
r18263@catbus: nickm | 2008-02-20 12:45:15 -0500
...
Oops. not supposed to use tor_assert() in eventdns.c
svn:r13622
2008-02-20 17:48:37 +00:00
Nick Mathewson
dc949b846a
r18259@catbus: nickm | 2008-02-20 12:03:15 -0500
...
Make the last of the veracode warning issues get fixed.
svn:r13620
2008-02-20 17:03:16 +00:00
Nick Mathewson
cefe0a1959
r18255@catbus: nickm | 2008-02-20 11:44:55 -0500
...
Add asserts and refactor some comparisons in order to fix some veracode-identified issues. Note a bug in buffers.c
svn:r13618
2008-02-20 16:57:39 +00:00
Roger Dingledine
1c8bd320be
pass bucket sizes num_read and num_written around as size_ts
...
rather than ints
svn:r13610
2008-02-20 02:17:41 +00:00
Roger Dingledine
f2ed011813
We were comparing the raw BridgePassword entry with a base64'ed
...
version of it, when handling a "/tor/networkstatus-bridges"
directory request. Now compare correctly. Noticed by Veracode.
svn:r13609
2008-02-20 02:05:28 +00:00
Roger Dingledine
f34d46e7dd
similarly, don't throw around an int for the uint8_t circ->state
...
svn:r13608
2008-02-20 01:01:09 +00:00
Roger Dingledine
7427cf5d56
don't throw around an int for relay_command if we're going to
...
squeeze it into a uint8_t later. also reported by veracode.
svn:r13607
2008-02-20 00:57:37 +00:00
Roger Dingledine
0977c29196
notice an integer overflow if we ever get source files with more
...
than 65k lines in them. also pointed out by veracode.
svn:r13606
2008-02-20 00:46:09 +00:00
Roger Dingledine
e9474ed28e
if you thought r13604 was a kludge, how about this.
...
svn:r13605
2008-02-20 00:30:41 +00:00
Roger Dingledine
56a7c9238e
be more clear about a possible integer underflow problem. this
...
should probably be fixed better somehow.
svn:r13604
2008-02-20 00:11:52 +00:00
Roger Dingledine
e0beb6cc5e
check return value for crypto_pk_asn1_encode here too. thanks veracode.
...
svn:r13603
2008-02-19 23:59:16 +00:00
Nick Mathewson
260c37c14c
r18236@catbus: nickm | 2008-02-19 18:55:21 -0500
...
Explain why I am right and veracode is wrong in routerparse.c line 1141. Using math!
svn:r13602
2008-02-19 23:57:06 +00:00
Roger Dingledine
913f66278c
rearrange our assert so we don't possibly overflow rh.length before
...
triggering the assert. reported by veracode.
svn:r13601
2008-02-19 23:54:17 +00:00
Nick Mathewson
0399538b90
r18233@catbus: nickm | 2008-02-19 18:46:07 -0500
...
Count sockets returned from socketpair() too. This is probably not the socket counting bug.
svn:r13600
2008-02-19 23:46:08 +00:00
Roger Dingledine
707da4f73f
start checking the return value of crypto_pk_asn1_encode() while
...
we're trying to establish an introduction point. bug reported
by veracode.
svn:r13599
2008-02-19 23:33:02 +00:00
Nick Mathewson
42c4670e27
r18230@catbus: nickm | 2008-02-19 18:29:43 -0500
...
Add a few asserts to catch possible errors found by veracode.
svn:r13598
2008-02-19 23:29:45 +00:00
Roger Dingledine
319c0d8933
is_reverse in our struct is uint8_t. don't make it be an int
...
elsewhere. bug reported by veracode.
svn:r13597
2008-02-19 23:14:34 +00:00
Nick Mathewson
dbcf29d301
r18228@catbus: nickm | 2008-02-19 18:05:53 -0500
...
Chris Palmer notes that almost nobody is using smartlist_set_capacity(). Chris Palmer is right. Remove this basically pointless function.
svn:r13596
2008-02-19 23:05:56 +00:00
Nick Mathewson
9479dd3768
r18226@catbus: nickm | 2008-02-19 18:01:01 -0500
...
Brown-paper-bag time. We were failing to count all the sockets from accept().
svn:r13595
2008-02-19 23:01:07 +00:00
Roger Dingledine
d1a195d3cb
call a "number of characters" a size_t, not an int
...
svn:r13594
2008-02-19 22:52:50 +00:00
Roger Dingledine
c126b79f07
be more explicit about a harmless thing that freaked veracode out
...
svn:r13592
2008-02-19 22:32:32 +00:00
Nick Mathewson
4ccffd7aea
r18218@catbus: nickm | 2008-02-19 17:27:40 -0500
...
When SafeLogging is off, have TLS errors and messages logged with their associated addresses.
svn:r13591
2008-02-19 22:27:44 +00:00
Roger Dingledine
810bfe970c
make explicit that we don't care if a rename() call fails.
...
potential bug reported by veracode.
svn:r13590
2008-02-19 22:25:20 +00:00
Roger Dingledine
23e4c849c9
resolve another edge case in staying dormant
...
svn:r13586
2008-02-19 22:01:45 +00:00
Roger Dingledine
da7f0315e6
maybe it should compile too.
...
svn:r13585
2008-02-19 21:41:43 +00:00
Roger Dingledine
d964beac16
If we only ever used Tor for hidden service lookups or posts, we
...
would stop building circuits and start refusing connections after
24 hours, since we false believed that Tor was dormant. Reported
by nwf; bugfix on 0.1.2.x.
svn:r13583
2008-02-19 21:30:24 +00:00
Roger Dingledine
33c754315b
clear up another connlimit lie
...
svn:r13582
2008-02-19 21:08:27 +00:00
Nick Mathewson
b98c437fcc
r18195@catbus: nickm | 2008-02-19 14:11:15 -0500
...
TOR_PERF has not not been a sane thing for ages. Remove it.
svn:r13579
2008-02-19 19:30:37 +00:00
Roger Dingledine
be8a85dc1c
document that if you enable TOR_PERF, you won't be compatible with the
...
main Tor network.
svn:r13577
2008-02-19 18:54:44 +00:00
Nick Mathewson
8c6b5d6640
r14246@tombo: nickm | 2008-02-17 19:33:02 -0500
...
Fix a wide line in control.c; make the check-spaces target ignore the openbsd malloc file.
svn:r13566
2008-02-19 05:08:27 +00:00
Nick Mathewson
3277e2a8ca
r18142@catbus: nickm | 2008-02-18 14:24:31 -0500
...
Our preferred spelling for a bitfield is "unsigned int", not "unsigned" or "uint8_t".
svn:r13560
2008-02-18 19:24:33 +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
faa56a500b
r14236@tombo: nickm | 2008-02-17 13:44:55 -0500
...
Partial fix for bug 586: Add an ephemeral __HashedControlSessionPassword.
svn:r13543
2008-02-17 18:45:07 +00:00
Roger Dingledine
4c1e516a09
cleanups and changelog entry for r13540
...
svn:r13542
2008-02-17 16:52:24 +00:00
Roger Dingledine
bd959adcb7
patch from karsten:
...
Resolved problems with (re-)fetching hidden service descriptors.
Before, v0 descriptors were not fetched at all (fix on 0.2.0.18-alpha),
re-fetching of v2 descriptors did not stop when a v0 descriptor was
received (fix on 0.2.0.18-alpha), and re-fetching of v2 descriptors did
not work in all cases (fix on 0.2.0.19-alpha).
svn:r13540
2008-02-17 16:47:47 +00:00
Nick Mathewson
6366dcd8ee
r14186@tombo: nickm | 2008-02-15 18:38:52 -0500
...
Add an XXXX021 item so we eventually stop calling setuid() and setgid() unnecessarily.
svn:r13533
2008-02-15 23:39:17 +00:00
Nick Mathewson
24e8e1fb36
r14185@tombo: nickm | 2008-02-15 18:05:54 -0500
...
Replace the hefty tor_strpartition with a simple function to replace its only (trivial) use.
svn:r13532
2008-02-15 23:39:14 +00:00
Nick Mathewson
f5ed1f8469
r14183@tombo: nickm | 2008-02-15 17:37:53 -0500
...
Add initial unit tests for test_addr_compare_masked
svn:r13531
2008-02-15 23:39:10 +00:00
Nick Mathewson
ca4eb987c8
r14182@tombo: nickm | 2008-02-15 17:20:51 -0500
...
Defer, downgrade, or address more XXX020s. The remaining ones are all ones we should deal with before release.
svn:r13530
2008-02-15 23:39:08 +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
275bb57a77
r18068@catbus: nickm | 2008-02-13 11:33:19 -0500
...
Patch from karsten: make hidden service code respect SafeLogging.
svn:r13493
2008-02-13 16:34:00 +00:00
Nick Mathewson
d48f6425e5
r18066@catbus: nickm | 2008-02-13 11:22:19 -0500
...
Bugfix from Karsten: "Reversed r13439; v2 rendezvous descriptors were only re-fetched when a directory connection did not finish, not when a directory correctly replied with an error code like 404; bug found by nwf.
svn:r13492
2008-02-13 16:23:28 +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
f3eaeb99a3
r18051@catbus: nickm | 2008-02-12 15:20:43 -0500
...
Re-tune mempool parametes based on testing on peacetime: use smaller chuncks, free them a little more aggressively, and try very hard to concentrate allocations on fuller chunks. Also, lots of new documentation.
svn:r13484
2008-02-12 20:20:52 +00:00
Nick Mathewson
aace52320c
r18041@catbus: nickm | 2008-02-11 23:43:18 -0500
...
Make version negotiation and handshaking messages more useful and accurate.
svn:r13477
2008-02-12 04:43:25 +00:00
Nick Mathewson
8682293388
r18029@catbus: nickm | 2008-02-11 12:36:39 -0500
...
Fix command.c compilation with gcc 4.2 warnings enabled.
svn:r13475
2008-02-12 04:37:00 +00:00
Roger Dingledine
a89e523f19
note a simplification for the future
...
svn:r13466
2008-02-11 06:34:10 +00:00
Roger Dingledine
28483467d0
Directory mirrors no longer include a guess at the client's IP
...
address if the connection appears to be coming from the same /24
network; it was producing too many wrong guesses.
svn:r13464
2008-02-11 05:31:56 +00:00
Nick Mathewson
65ee9dc585
r14108@tombo: nickm | 2008-02-10 20:09:10 -0500
...
add some documentation
svn:r13462
2008-02-11 01:09:24 +00:00
Nick Mathewson
ab0c85eea6
r14103@tombo: nickm | 2008-02-10 13:40:09 -0500
...
Fix some XXX020s in command.c, and make it not-allowed to negotiate v1 using the v2 connection protocol: it is too hard to test, and pointless to support.
svn:r13460
2008-02-10 18:40:29 +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
a4db22f675
r14101@tombo: nickm | 2008-02-10 13:24:27 -0500
...
Merge connection_or_act_on_netinfo into command.c; remove some fields from or_handshake_state().
svn:r13458
2008-02-10 18:40:23 +00:00
Roger Dingledine
5a0f214908
patch from tup to fix bug 605
...
svn:r13453
2008-02-09 22:52:29 +00:00
Roger Dingledine
d2528e6b48
"fix" the unit tests on openbsd/netbsd
...
svn:r13450
2008-02-09 21:41:49 +00:00
Roger Dingledine
965afb4970
cleanups on r13442.
...
oh, and this should be backported too.
svn:r13444
2008-02-09 10:46:22 +00:00
Roger Dingledine
b42c9d69f0
Patch from "Andrew S. Lists" to catch when we contact a directory mirror
...
at IP address X and he says we look like we're coming from IP address X.
svn:r13442
2008-02-09 10:36:49 +00:00
Roger Dingledine
509d2912dc
doxygen and other cleanups
...
svn:r13440
2008-02-09 03:11:10 +00:00
Nick Mathewson
be1e577d5e
Re-fetch v2 rendezvous descriptor only when first try failed. Patch from karsten.
...
svn:r13439
2008-02-09 02:51:20 +00:00
Roger Dingledine
1f034cc5c7
note a question for nick
...
svn:r13437
2008-02-09 02:34:00 +00:00
Nick Mathewson
8f7fcdd64e
r17991@catbus: nickm | 2008-02-08 18:41:26 -0500
...
More protocol negotiation work. Make the negotiation actually complete and set the state to open. Fix a crash bug that occured when we forcibly stopped the connection from writing.
svn:r13434
2008-02-08 23:41:29 +00:00
Nick Mathewson
272d37deb3
r17989@catbus: nickm | 2008-02-08 18:09:23 -0500
...
Fix a new segfault when poisoning a non-present socks request.
svn:r13433
2008-02-08 23:09:26 +00:00
Nick Mathewson
a378bb5f5a
r17985@catbus: nickm | 2008-02-08 16:30:02 -0500
...
Bugfix from Karsten Loesing: Retry v2 rend descriptors on intro point failure.
svn:r13431
2008-02-08 21:30:07 +00:00
Nick Mathewson
141a5877f3
r14063@tombo: nickm | 2008-02-08 15:48:32 -0500
...
Add a bunch more code documentation; change the interface of fetch_var_cell_from_buf() so it takes the current link protocol into account and can't get confused by weird command bytes on v1 connections.
svn:r13430
2008-02-08 21:13:15 +00:00
Nick Mathewson
de827f89df
r14062@tombo: nickm | 2008-02-08 15:17:07 -0500
...
Change DNs in x509 certificates to be harder to fingerprint. Raise common code. Refactor random hostname generation into crypto.c
svn:r13429
2008-02-08 21:13:12 +00:00
Nick Mathewson
809227a121
r14061@tombo: nickm | 2008-02-08 14:30:42 -0500
...
Add a couple of (currently disabled) strategies for trying to avoid using too much ram in memory pools: prefer putting new cells in almost-full chunks, and be willing to free the last empty chunk if we have not needed it for a while. Also add better output to mp_pool_log_status to track how many mallocs a given memory pool strategy is saving us, so we can tune the mempool parameters.
svn:r13428
2008-02-08 21:13:08 +00:00
Nick Mathewson
5d250d3e1b
r14060@tombo: nickm | 2008-02-08 13:36:52 -0500
...
Fix warning in onion.c
svn:r13427
2008-02-08 21:13:05 +00:00
Nick Mathewson
8ab4b0d302
r14059@tombo: nickm | 2008-02-08 13:36:34 -0500
...
downgrade xxxs in test.c
svn:r13426
2008-02-08 21:13:02 +00:00
Nick Mathewson
23a9c9695b
r17968@catbus: nickm | 2008-02-07 14:11:02 -0500
...
Clean up IPv6-testing code in test.c; resolve a bunch of XXX020s.
svn:r13425
2008-02-08 21:09:35 +00:00
Nick Mathewson
729555e1ca
r17967@catbus: nickm | 2008-02-07 11:44:51 -0500
...
Fix some warnings identified by building with -D_FORTIFY_SOURCE=2. Remove a redundant (and nuts) definition of _FORTIFY_SOURCE from eventdns.c.
svn:r13424
2008-02-08 21:09:29 +00:00
Nick Mathewson
eecc44dab8
r17963@catbus: nickm | 2008-02-07 10:14:25 -0500
...
Be more thorough about memory poisoning and clearing. Add an in-place version of aes_crypt in order to remove a memcpy from relay_crypt_one_payload.
svn:r13414
2008-02-07 16:10:33 +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
46b1a21dc4
r17955@catbus: nickm | 2008-02-06 16:53:07 -0500
...
The SSL portion of the revised handshake now seems to work: I just finally got a client and a server to negotiate versions. Now to make sure certificate verification is really happening, connections are getting opened, etc.
svn:r13409
2008-02-06 21:53:13 +00:00
Nick Mathewson
4d70094b6e
r17951@catbus: nickm | 2008-02-06 14:34:13 -0500
...
Add more documentation; change the behavior of read_to_buf_tls to be more consistent. Note a longstanding problem with current read/write interfaces.
svn:r13407
2008-02-06 19:34:32 +00:00
Nick Mathewson
6e2946fb5d
r17949@catbus: nickm | 2008-02-06 13:21:12 -0500
...
Fix bandwidth bucked calculations again, I think. Bugfix on 0.1.2.x. Backport candidate.
svn:r13406
2008-02-06 18:21:16 +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
f76cdc1a61
misc small fixes
...
svn:r13403
2008-02-06 12:46:46 +00:00
Roger Dingledine
c054f90f02
New config option ServerDNSAllowBrokenResolvConf to start a relay
...
even when the local resolv.conf file is missing, broken, or contains
only unusable nameservers.
Now I can run a local network on my laptop when I'm on an airplane.
svn:r13402
2008-02-06 12:46:17 +00:00
Roger Dingledine
bbcf406d9f
If the networkstatus consensus lists no recommended versions, don't
...
complain to the user and demand that they upgrade to one of "".
svn:r13401
2008-02-06 12:45:04 +00:00
Roger Dingledine
e49d712b8a
if i'm a v3 authority, tell myself about my cert when i startup.
...
otherwise i'll keep asking other authorities for it, which probably
isn't the best way to get it. this made bootstrapping a new network
very hard.
svn:r13400
2008-02-06 12:39:25 +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
Roger Dingledine
d1aafdc519
don't fetch or cache running-routers files if there are no v1
...
authorities
svn:r13398
2008-02-06 12:36:04 +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
368f62c79d
r17933@catbus: nickm | 2008-02-05 19:54:28 -0500
...
Stamp out a bunch of atoi users; make more tor_parse_long() users check their outputs.
svn:r13395
2008-02-06 00:54:47 +00:00
Nick Mathewson
12071df6c8
r17930@catbus: nickm | 2008-02-05 18:20:40 -0500
...
Initial attempts to track down bug 600, and refactor possibly offending code. 1) complain early if circuit state is set to OPEN when an onionskin is pending. 2) refactor onionskin field into one only used when n_conn is pending, and a separate onionskin field waiting for attention by a cpuworker. This might even fix the bug. More likely, it will make it fail with a more useful core.
svn:r13394
2008-02-05 23:20:49 +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
7dc70c2405
r17917@catbus: nickm | 2008-02-05 16:38:15 -0500
...
Oops; fix compilation of control.c
svn:r13391
2008-02-05 21:39:51 +00:00
Nick Mathewson
fac2cd3b03
r17916@catbus: nickm | 2008-02-05 16:29:35 -0500
...
Fix some XXX020 items in control.c: add a maximum line length and note that the number of versioning authorities is no longer apparent to clients.
svn:r13390
2008-02-05 21:39:49 +00:00
Nick Mathewson
cf6fe27616
r17915@catbus: nickm | 2008-02-05 16:28:57 -0500
...
Remove a dead function.
svn:r13389
2008-02-05 21:39:46 +00:00
Nick Mathewson
92aaf68d19
r17914@catbus: nickm | 2008-02-05 16:12:16 -0500
...
Remove or downgrade some XXX020 items.
svn:r13388
2008-02-05 21:39:44 +00:00
Nick Mathewson
c11c48fc78
r17913@catbus: nickm | 2008-02-05 16:11:33 -0500
...
Correctly register failures in connection_add() in dnsserv_launch_request()
svn:r13387
2008-02-05 21:39:40 +00:00
Nick Mathewson
83e740fa91
r17911@catbus: nickm | 2008-02-05 15:53:22 -0500
...
Fix a potential bug that would make authorities fail to vote under bizarre circumstances that probably never happened.
svn:r13385
2008-02-05 21:39:36 +00:00
Nick Mathewson
e09c207c3c
r17910@catbus: nickm | 2008-02-05 15:36:29 -0500
...
Check for correctness of AuthDir* options in options_validate; check for possible bugs where options_validate() is happy but parse_policies_from_options() is sad.
svn:r13384
2008-02-05 21:39:32 +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
a51deb9a9c
r17903@catbus: nickm | 2008-02-05 14:40:03 -0500
...
Remove some dead code; fix some XXX020s; turn some XXX020s into XXXX_IP6s (i.e., "needs to be fixed when we add ipv6 support").
svn:r13382
2008-02-05 19:40:26 +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
3958d7b16f
r17898@catbus: nickm | 2008-02-05 14:01:35 -0500
...
Add (and use) a MAP_DEL_CURRENT macro to augment a non-const variant of MAP_FOREACH.
svn:r13379
2008-02-05 19:40:17 +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
Roger Dingledine
dad9f434e0
correct copyright statement
...
svn:r13370
2008-02-04 16:54:14 +00:00
Nick Mathewson
91bac90310
r17863@catbus: nickm | 2008-02-01 00:27:07 -0500
...
Bugfix from weasel: possible fix for 593: make connection_write_to_buf("") work when using zlib compression.
svn:r13347
2008-02-01 05:27:12 +00:00
Nick Mathewson
f013fb5e31
r17854@catbus: nickm | 2008-01-30 17:52:43 -0500
...
Periodically check whether we have an expired consensus networkstatus. If we do, and we think we have enough directory info, then call router_dir_info_changed(). Fixes bug 401. This bug was deferred from 0.1.2.x, but fixing it there is nontrivial.
svn:r13342
2008-01-30 22:52:46 +00:00
Nick Mathewson
1793aeafae
r17852@catbus: nickm | 2008-01-30 17:23:36 -0500
...
Correctly insert connections into the identity->connection map when we connect to a bridge without having specified its key. Fixes bug 574.
svn:r13341
2008-01-30 22:23:44 +00:00
Roger Dingledine
78633b3a03
suggest a better fix for bug 597
...
svn:r13340
2008-01-30 20:53:14 +00:00
Nick Mathewson
0b06546620
r17844@catbus: nickm | 2008-01-30 13:31:37 -0500
...
Fix bug 597: stop telling people to email Tor-ops. Also give a better suggestion when some other identity has been assigned the nickname we are using.
svn:r13337
2008-01-30 18:32:30 +00:00
Roger Dingledine
6dfd2f531c
Revert r13301 and part of r13304. I guess nick's svk messed up.
...
svn:r13305
2008-01-27 01:03:30 +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
Nick Mathewson
ad07366da5
Fix compile with warnings enabled
...
svn:r13301
2008-01-26 22:03:13 +00:00
Roger Dingledine
42f90bdc14
"de" means to do something, and "in" means to undo it. right?
...
help prevent future versions of bug 593.
svn:r13288
2008-01-26 01:05:16 +00:00
Roger Dingledine
af4b735e9a
move hidden-service stuff out of directory.c
...
svn:r13287
2008-01-26 00:42:13 +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
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
Roger Dingledine
116a0f0f22
minor touchups on or.h
...
svn:r12511
2007-11-16 07:29:01 +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
Peter Palfrader
3e9369ebd9
Changing the ExitPolicyRejectPrivate setting should cause us to rebuild the
...
descriptor.
svn:r12507
2007-11-15 15:51:17 +00:00
Roger Dingledine
06a1e4124f
Fix a small memory leak whenever we decide against using a
...
newly picked entry guard. Reported by Mike Perry.
svn:r12506
2007-11-15 11:14:08 +00:00
Nick Mathewson
e843e05563
r16670@catbus: nickm | 2007-11-14 14:56:30 -0500
...
Initial phase of proposal 110: accept RELAY_EARLY cells, and turn them into RELAY cells when sending them on over a v1 OR connection.
svn:r12496
2007-11-14 20:01:15 +00:00
Nick Mathewson
d483d3144a
r16669@catbus: nickm | 2007-11-14 14:50:03 -0500
...
When we complete an OR handshake, set up all the internal fields and mark the connection as open.
svn:r12495
2007-11-14 20:01:12 +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
Nick Mathewson
75922ff41f
r16663@catbus: nickm | 2007-11-13 21:51:28 -0500
...
Back out parts of r12376: replace file locations in scripts.
svn:r12490
2007-11-14 02:55:12 +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
609ceadd74
compiling is good too
...
svn:r12480
2007-11-11 18:46:16 +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
Roger Dingledine
1b00492c40
a potential solution for bug 549
...
svn:r12471
2007-11-11 04:36:31 +00:00
Roger Dingledine
0d21995956
another likelier candidate for mike's leak
...
svn:r12470
2007-11-11 04:19:11 +00:00
Roger Dingledine
2b2d111017
a log entry to help us find mike's memory leak
...
svn:r12469
2007-11-11 03:56:34 +00:00
Roger Dingledine
8ca51869fd
Allow people to say PreferTunnelledDirConns rather than
...
PreferTunneledDirConns, for those alternate-spellers out there.
svn:r12466
2007-11-11 01:06:16 +00:00
Roger Dingledine
42b8fb5a15
Exit policies now reject connections that are addressed to a
...
relay's public (external) IP address too, unless
ExitPolicyRejectPrivate is turned off. We do this because too
many relays are running nearby to services that trust them based
on network address.
svn:r12459
2007-11-10 21:17:51 +00:00
Roger Dingledine
7050df7245
bump to 0.2.0.10-alpha
...
svn:r12455
2007-11-10 07:26:56 +00:00
Nick Mathewson
1bdbd3b98e
r16582@catbus: nickm | 2007-11-08 13:14:16 -0500
...
Try to bulletproof the parse logic for router-stability.
svn:r12441
2007-11-08 18:15:49 +00:00
Nick Mathewson
e0b9c893bc
r16573@catbus: nickm | 2007-11-08 11:57:16 -0500
...
Mess with the formula for the Guard flag again. Now it requires that you be in the most familiar 7/8 of nodes, and have above median wfu for that 7/8th. See spec for details. Also, log thresholds better.
svn:r12440
2007-11-08 16:58:59 +00:00
Nick Mathewson
c3a745951b
r16570@catbus: nickm | 2007-11-08 11:04:20 -0500
...
Keep track, for each OR connection, of the last time we added a non-padding cell to its outbuf. Use this timestamp, not "lastwritten" to tell if it is time to close a circuitless connection. (We can'tuse lastwritten, since lastwritten is updated when ever the connection flushes anything, and by that point we can no longer tell what is a padding cell and what is not.)
svn:r12437
2007-11-08 16:19:07 +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
d279fb82e2
r16550@catbus: nickm | 2007-11-07 16:50:02 -0500
...
"And $499 for knowing where to hit it." Fix bug 546.
svn:r12425
2007-11-07 21:51:21 +00:00
Roger Dingledine
473a054b4c
Set up ides (run by Mike Perry) as the third v3 directory authority.
...
svn:r12423
2007-11-07 21:20:45 +00:00
Roger Dingledine
1621b1e09b
start hunting a bug where bridge users don't always put
...
their un-keyed connections onto the orconn_identity_map.
svn:r12418
2007-11-07 18:26:46 +00:00
Nick Mathewson
f18e94116b
r16533@catbus: nickm | 2007-11-07 12:42:58 -0500
...
Fix another "TLS error. breaking connection".~
svn:r12416
2007-11-07 17:44:15 +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
0e993e6008
r16523@catbus: nickm | 2007-11-07 11:35:49 -0500
...
Improve "tls error. breaking" message a little.
svn:r12411
2007-11-07 16:37:08 +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
47fd6f7267
r16464@catbus: nickm | 2007-11-06 14:53:28 -0500
...
Also avoid overflow on or_conn->read_bucket
svn:r12401
2007-11-06 19:54:32 +00:00
Nick Mathewson
be1a5191f8
r16462@catbus: nickm | 2007-11-06 14:40:58 -0500
...
Fix bug 544: do not allow buckets to overflow. Backportable.
svn:r12400
2007-11-06 19:42:37 +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
6bc071f765
r16456@catbus: nickm | 2007-11-06 12:59:04 -0500
...
Fix a dumb bug in networkstatus_free_all()
svn:r12397
2007-11-06 18:00:09 +00:00
Nick Mathewson
e047f7f865
r16455@catbus: nickm | 2007-11-06 12:48:00 -0500
...
Parse CERT cells and act correctly when we get them.
svn:r12396
2007-11-06 18:00:07 +00:00
Nick Mathewson
af60d79f5d
r16452@catbus: nickm | 2007-11-06 09:20:08 -0500
...
Fix warning about overflow optimization.
svn:r12395
2007-11-06 14:21:08 +00:00
Nick Mathewson
95c7b8cc64
r14729@31-33-67: nickm | 2007-11-05 18:54:50 -0500
...
Send and Parse CERT cells correctly. Still need to understand the certs inside.
svn:r12392
2007-11-05 23:55:43 +00:00
Nick Mathewson
6fcda5299f
r14727@31-33-67: nickm | 2007-11-05 18:34:35 -0500
...
Make VERSIONS variable-length.
svn:r12391
2007-11-05 23:34:39 +00:00
Nick Mathewson
9a20a64b62
r16438@catbus: nickm | 2007-11-05 16:45:45 -0500
...
Initial code for variable-length cells. CERT and VERSIONS need to use them.
svn:r12390
2007-11-05 21:46:35 +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
Nick Mathewson
dec5fcd611
r16434@catbus: nickm | 2007-11-05 14:22:40 -0500
...
Oops; fix compile
svn:r12387
2007-11-05 19:23:55 +00:00
Nick Mathewson
85654f4ab9
r16432@catbus: nickm | 2007-11-05 14:18:57 -0500
...
Send and parse link_auth cells properly.
svn:r12386
2007-11-05 19:19:46 +00:00
Nick Mathewson
44eab517fc
r16414@catbus: nickm | 2007-11-05 13:14:46 -0500
...
Function to process link auth cells; stub function for cert cell processing
svn:r12385
2007-11-05 18:15:56 +00:00
Nick Mathewson
ea1bea5830
r16411@catbus: nickm | 2007-11-05 11:27:37 -0500
...
Remember X509 certificates in the context. Store peer/self certificate digests in handshake state.
svn:r12382
2007-11-05 18:15:50 +00:00
Nick Mathewson
22c31d91ab
r16410@catbus: nickm | 2007-11-05 10:54:29 -0500
...
Code to remember client_random and server_random values, and to compute hmac using TLS master secret.
svn:r12381
2007-11-05 18:15:47 +00:00
Nick Mathewson
e94fad36ac
r16409@catbus: nickm | 2007-11-05 10:38:25 -0500
...
Split handshake state into its own structure. Revise versions and netinfo code to use this structure.
svn:r12380
2007-11-05 18:15:44 +00:00
Nick Mathewson
b4a50343d7
r16407@catbus: nickm | 2007-11-05 10:02:22 -0500
...
Add a log message when we start retrieving networkstatus
svn:r12378
2007-11-05 18:15:39 +00:00
Nick Mathewson
446c351393
r14702@tombo: nickm | 2007-11-04 15:48:56 -0500
...
Define SHARE_DATADIR, LOCALSTATEDIR, and BINDIR in Makefile.am as autoconf recommends. Do not move CONFDIR yet, since we seem to support overriding it in a weird way. Resolves bug 542.
svn:r12376
2007-11-04 20:49:02 +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
Nick Mathewson
928c584ec2
r14700@tombo: nickm | 2007-11-03 22:29:21 -0400
...
Fix sign error in networkstatus_note_certs_arrived().
svn:r12371
2007-11-04 02:29:27 +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
Roger Dingledine
9ef72079ae
fix an assert error on startup if we didn't already have the
...
consensus and certs cached in our datadirectory: we were
caching the consensus in consensus_waiting_for_certs but then
free'ing it right after.
more bugs remain here, i think.
svn:r12369
2007-11-04 01:26:00 +00:00
Roger Dingledine
e9af56cf2f
If bridge users set UpdateBridgesFromAuthority, but the digest
...
they ask for is a 404 from the bridge authority, they now fall
back to trying the bridge directly.
svn:r12368
2007-11-04 00:15:42 +00:00
Roger Dingledine
fb7b680a04
always use begin_dir for publishing and fetching bridge
...
descriptors, no matter our config
svn:r12365
2007-11-03 22:34:31 +00:00
Roger Dingledine
fcc115e763
Raise the default BandwidthRate/BandwidthBurst to 5MB/10MB, to
...
accommodate the growing number of servers that use the default
and are reaching it.
svn:r12364
2007-11-03 22:08:52 +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
c217be996d
r14677@tombo: nickm | 2007-11-03 15:16:27 -0400
...
Add a smartlist_bsearch_idx function that gives more useful output than regular bsearch for the value-not-found case.
svn:r12360
2007-11-03 20:12:38 +00:00
Roger Dingledine
d4e339ed87
Nov 03 11:15:13.103 [info] connection_dir_client_reached_eof(): Received consensus directory (size 330543) from server '86.59.21.38:80'
...
Nov 03 11:15:13.129 [info] networkstatus_set_current_consensus(): Got a consensus we already have
Nov 03 11:15:13.129 [warn] Unable to load consensus directory dowloaded from server '86.59.21.38:80'
svn:r12359
2007-11-03 15:55:15 +00:00
Roger Dingledine
23fdfd4dcf
Stop leaking conn->nickname every time we make a connection to a
...
Tor relay without knowing its expected identity digest (e.g. when
using bridges). Bugfix on 0.2.0.3-alpha.
svn:r12355
2007-11-03 14:44:53 +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
832ef9562f
r14623@tombo: nickm | 2007-11-01 22:25:18 -0400
...
More tweaks from karsten, with some cleanup and commentary.
svn:r12319
2007-11-02 02:25:28 +00:00
Nick Mathewson
e3cb1e4559
r16337@catbus: nickm | 2007-11-01 14:18:58 -0400
...
Remove superseded assert in directory.c
svn:r12317
2007-11-01 18:22:04 +00:00
Roger Dingledine
e5ec8248e8
make r12272 compile on 64-bit
...
svn:r12315
2007-11-01 13:48:12 +00:00
Roger Dingledine
4ead38a4e9
fix compile errors on r12310 (thanks karsten)
...
svn:r12314
2007-11-01 13:40:29 +00:00
Nick Mathewson
37c44b81df
r16326@catbus: nickm | 2007-11-01 00:56:45 -0400
...
As an authority, send back an X-Descriptor-Not-New header when we accept but do not store a descriptor. Partial implementation of fix for bug 535.
svn:r12310
2007-11-01 05:01:24 +00:00
Nick Mathewson
2645219b4c
r16322@catbus: nickm | 2007-11-01 00:26:15 -0400
...
Implement --quiet.
svn:r12306
2007-11-01 04:38:43 +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
d1df046e3b
r16314@catbus: nickm | 2007-10-31 23:40:08 -0400
...
Clients download and cache new hidden descriptor format.
svn:r12302
2007-11-01 03:43:02 +00:00
Nick Mathewson
5da5d2bd79
r16302@catbus: nickm | 2007-10-31 16:45:16 -0400
...
Clean spaces.
svn:r12301
2007-10-31 20:48:10 +00:00
Nick Mathewson
fcd42ebef4
r16301@catbus: nickm | 2007-10-31 16:43:49 -0400
...
A couple of small tweaks to karsten's latest patch, and note an issue with using a bitmap to represent a single int.
svn:r12300
2007-10-31 20:48:08 +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
17266cc44a
r16287@catbus: nickm | 2007-10-31 00:53:53 -0400
...
HMAC-SHA-1 implementation, with unit tests based on vectors from RVFC2202. Steven's stuff will need this.
svn:r12289
2007-10-31 04:56:59 +00:00
Nick Mathewson
7e80640b97
r16285@catbus: nickm | 2007-10-30 17:43:25 -0400
...
Implement (but do not enable) link connection version negotiation
svn:r12286
2007-10-30 21:46:02 +00:00
Nick Mathewson
57f7c852f8
r16282@catbus: nickm | 2007-10-30 14:28:58 -0400
...
Implement lots of proposal 105. None of it is enabled yet.
svn:r12285
2007-10-30 18:31:30 +00:00
Nick Mathewson
c0c2001a5b
r16279@catbus: nickm | 2007-10-30 11:14:29 -0400
...
Improved skew reporting: "You are 365 days in the duture" is more useful than "You are 525600 minutes in the future". Also, when we get something that proves we are at least an hour in the past, tell the controller "CLOCK_SKEW MIN_SKEW=-3600" rather than just "CLOCK_SKEW"
svn:r12283
2007-10-30 15:17:07 +00:00
Nick Mathewson
7709fb7143
r16278@catbus: nickm | 2007-10-30 09:46:28 -0400
...
Accept future networkstatus documents, but warn about skew when we get them.
svn:r12282
2007-10-30 15:17:01 +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
1c451b9db9
r16252@catbus: nickm | 2007-10-29 11:13:03 -0400
...
Change symbol from DATADIR to SHARE_DATADIR, since DATADIR conflicts with objidl.h in mingw.
svn:r12268
2007-10-29 15:15:49 +00:00
Nick Mathewson
30e73f3a5e
r16248@catbus: nickm | 2007-10-28 19:42:14 -0400
...
Do not count a server as having any WFU until we have known about it for 18 hours (weighted).
svn:r12261
2007-10-28 23:44:57 +00:00
Nick Mathewson
f09d53bbf1
r16246@catbus: nickm | 2007-10-28 19:34:58 -0400
...
Implement a FallbackNetworkstatusFile (default to $prefix/share/tor/fallback-consensus) to that we know about lots of directory servers and routers when we start up the first time.
svn:r12259
2007-10-28 23:44:53 +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
Peter Palfrader
471163ffd5
Downgrade the mismatched fpr warning to info
...
svn:r12257
2007-10-28 20:01:22 +00:00
Nick Mathewson
66a39ac358
r16238@catbus: nickm | 2007-10-28 15:46:10 -0400
...
Whitespace fix.
svn:r12256
2007-10-28 19:48:19 +00:00
Nick Mathewson
d94a978b32
r16237@catbus: nickm | 2007-10-28 15:45:25 -0400
...
Tidy v2 hidden service descriptor format code: fix memory leaks, fix reference problems, note magic numbers, note questions, remove redundant checks, remove a possible stack smashing bug when encoding a descriptor with no protocols supported.
svn:r12255
2007-10-28 19:48:16 +00:00
Nick Mathewson
c58675ca72
r16236@catbus: nickm | 2007-10-28 14:36:30 -0400
...
Patch from Karsten Loesing: encode and parse v2 rendezvous descriptors.
svn:r12254
2007-10-28 19:48:14 +00:00
Nick Mathewson
665aa7659c
r16234@catbus: nickm | 2007-10-28 14:27:22 -0400
...
Clean up a couple of comments from r12244.
svn:r12253
2007-10-28 18:29:29 +00:00
Roger Dingledine
e5885deab5
Separate "SOCKS_COMMAND_CONNECT_DIR" into two flags in
...
edge_connection_t: want_onehop if it must attach to a circuit with
only one hop (e.g. for the current tunnelled connections that use
begin_dir), and use_begindir if we mean to use a BEGIN_DIR relay
command to establish the stream rather than the normal BEGIN. Now
we can make anonymized begin_dir connections for (e.g.) more secure
hidden service posting and fetching.
svn:r12244
2007-10-28 08:16:19 +00:00
Roger Dingledine
6ca7c118ec
we need to send nick to the chalkboard to type 'un' 1000 times:
...
Stop servers from crashing if they set a Family option (or
maybe in other situations too). Bugfix on 0.2.0.9-alpha; reported
by Fabian Keil.
svn:r12235
2007-10-27 21:40:32 +00:00
Roger Dingledine
a92b2083d2
don't warn so loudly when we couldn't load the unverified-consensus
...
file. we can live without it.
svn:r12221
2007-10-27 10:40:08 +00:00
Nick Mathewson
8fa7071121
r16195@catbus: nickm | 2007-10-26 18:48:52 -0400
...
base "Guard" flag on WFU rather than MTBF. Note an issue in the TODO. Roger: thoughts?
svn:r12219
2007-10-26 22:50:42 +00:00
Nick Mathewson
2c1d7cf674
r16194@catbus: nickm | 2007-10-26 18:37:02 -0400
...
Keep circuitless TLS connections open for 1.5 x MaxCircuitDirtiness: this ensures that we don't thrash closing and repoening connections to our guards.
svn:r12218
2007-10-26 22:50:40 +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
Roger Dingledine
4cbaa51aa2
the other half of the question for nick
...
svn:r12196
2007-10-26 01:37:16 +00:00
Roger Dingledine
e4230d100a
ask nick about a possible bug
...
svn:r12193
2007-10-25 20:59:24 +00:00
Nick Mathewson
d5a0eeb57e
r16157@catbus: nickm | 2007-10-25 10:36:34 -0400
...
Free v2_network_status_map on exit.
svn:r12189
2007-10-25 14:37:49 +00:00
Nick Mathewson
73c1cfe80b
r16154@catbus: nickm | 2007-10-25 10:29:47 -0400
...
Fix more memory leaks, with help from dmalloc.
svn:r12188
2007-10-25 14:31:15 +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
f37185bf0b
Stop leaking memory every time we parse a v3 certificate. Bugfix
...
on 0.2.0.1-alpha.
svn:r12185
2007-10-25 13:18:37 +00:00
Roger Dingledine
4ef1c459ba
Refuse to start if both ORPort and UseBridges are set. Bugfix
...
on 0.2.0.x.
svn:r12182
2007-10-25 04:40:27 +00:00
Nick Mathewson
0421e14c21
r16130@catbus: nickm | 2007-10-24 23:28:00 -0400
...
Fix null-pointer dereference in set_current_consensus.
svn:r12174
2007-10-25 03:29:11 +00:00
Roger Dingledine
0491f2a99c
more cleanups
...
svn:r12172
2007-10-25 03:03:52 +00:00
Nick Mathewson
beb73c90ab
r16124@catbus: nickm | 2007-10-24 22:11:09 -0400
...
We want to extend the valid_until for "reasonably live", not the valid_after time
svn:r12169
2007-10-25 02:12:16 +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
e0204f2119
r16112@catbus: nickm | 2007-10-24 15:52:03 -0400
...
Fix logic for downloading consensuses: make getting an duplicate or not-currently-valid consensus count as a failure. Make running out of time to get certificates count as a failure. Delay while fetching certificates.
svn:r12159
2007-10-24 19:53:11 +00:00
Nick Mathewson
9767415dca
r16111@catbus: nickm | 2007-10-24 15:03:57 -0400
...
Allow multiple download schedules to exist. At the moment, we use one for consensus, and the other one for everything else.
svn:r12158
2007-10-24 19:53:08 +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
Roger Dingledine
f43b9638e4
Don't complain that "your server has not managed to confirm that its
...
ports are reachable" if we haven't been able to build any circuits
yet. Bug found by spending four hours without a v3 consensus.
svn:r12133
2007-10-23 15:44:13 +00:00
Roger Dingledine
cb2b49c9c4
When there's no concensus, we were forming a vote every 30
...
minutes, but writing the "valid-after" line in our vote based
on our configured V3AuthVotingInterval: so unless the intervals
matched up, we immediately rejected our own vote because it didn't
start at the voting interval that caused us to construct a vote.
This caused log entries like:
Oct 23 01:16:16.303 [notice] Choosing expected valid-after time
as 2007-10-23 05:30:00: consensus_set=0, interval=1800
...
Oct 23 01:20:01.203 [notice] Choosing valid-after time in vote as
2007-10-23 06:00:00: consensus_set=0, interval=3600
Oct 23 01:20:01.290 [warn] Rejecting vote with valid-after time of
2007-10-23 06:00:00; we were expecting 2007-10-23 05:30:00
Oct 23 01:20:01.291 [warn] Couldn't store my own vote! (I told
myself, 'Bad valid-after time'.)
Nick, you should look at this, as it's your design. :)
svn:r12129
2007-10-23 06:38:16 +00:00
Nick Mathewson
03eb85b122
r16057@catbus: nickm | 2007-10-23 00:08:31 -0400
...
What the heck is wrong with me that I can not type un?
svn:r12128
2007-10-23 04:09:18 +00:00
Nick Mathewson
6f7518c501
r16054@catbus: nickm | 2007-10-22 20:22:13 -0400
...
Make authorities start accepting (and advertising their acceptance of) consensus method 2. If all goes well, we'll have a working Unnamed flag. Otherwise, we'll have a fun backtrace.
svn:r12113
2007-10-23 00:23:33 +00:00
Nick Mathewson
64b4b5a04e
r16051@catbus: nickm | 2007-10-22 18:53:53 -0400
...
fix a dumb bug in r12102.
svn:r12111
2007-10-22 22:54:28 +00:00
Nick Mathewson
9ec9266374
r16049@catbus: nickm | 2007-10-22 15:31:16 -0400
...
fix trunk compile
svn:r12110
2007-10-22 19:31:50 +00:00
Nick Mathewson
246cb2071f
r16047@catbus: nickm | 2007-10-22 14:00:46 -0400
...
Resolve some XXX020s in networkstatus.c
svn:r12109
2007-10-22 18:21:22 +00:00
Nick Mathewson
4165d53daf
r16045@catbus: nickm | 2007-10-22 13:35:02 -0400
...
Oops; fix a typo that would have messed with the Unnamed implementation.
svn:r12108
2007-10-22 17:43:07 +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
4bab46d5d7
r16041@catbus: nickm | 2007-10-22 13:02:14 -0400
...
Reattempt certificate downloads immediately on failure, as appropriate.
svn:r12106
2007-10-22 17:31:22 +00:00
Nick Mathewson
25a68907a1
r16035@catbus: nickm | 2007-10-22 12:31:22 -0400
...
fix compile
svn:r12105
2007-10-22 16:32:10 +00:00
Nick Mathewson
f06ac50d45
r16034@catbus: nickm | 2007-10-22 12:30:38 -0400
...
Move an XXX020 to the logical place.
svn:r12104
2007-10-22 16:32:08 +00:00
Nick Mathewson
7b80011990
r16033@catbus: nickm | 2007-10-22 12:26:13 -0400
...
Download some XXXX020s in dirvote.c and mark some functions that may not belong there.
svn:r12103
2007-10-22 16:32:06 +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
b481036266
r16014@catbus: nickm | 2007-10-21 20:29:14 -0400
...
Fix a unit test in test_crypto_base32_decode that would fail one time in 32.
svn:r12087
2007-10-22 00:29:39 +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
Roger Dingledine
b4a28f8b83
Bugfix on r7072, which turned out to basically be a no-op:
...
Respond to INT and TERM SIGNAL commands before we execute the
signal, in case the signal shuts us down. We had a patch in
0.1.2.1-alpha that tried to do this by queueing the response on
the connection's buffer before shutting down, but that really
isn't the same thing. Bug located by Matt Edman.
This is a bug in 0.1.2.x too, but there's no way we should backport
this fix. Speaking of which, can somebody double-check it? :)
svn:r12070
2007-10-21 04:15:28 +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
9b5af75835
r15974@catbus: nickm | 2007-10-19 16:47:27 -0400
...
When we decode to use consensus method 2 or later, compute Unnamed and Named more or less as described in 122. Don't actually use consensus method 2 yet, so we can be sure we didn't screw up v1..
svn:r12055
2007-10-19 20:48:46 +00:00
Nick Mathewson
5f8f498207
r15968@catbus: nickm | 2007-10-19 14:39:51 -0400
...
Implement code to compute which method to use to compute a consensus. Also, fix leak in consensus calculation.
svn:r12054
2007-10-19 18:56:30 +00:00
Nick Mathewson
b0a18d1bfa
r15967@catbus: nickm | 2007-10-19 14:14:47 -0400
...
Change meaning of "freefn" argument to smartlist_uniq so that we can remove duplicates from a list without freeing them.
svn:r12053
2007-10-19 18:56:28 +00:00
Nick Mathewson
6ca4eebb57
r15966@catbus: nickm | 2007-10-19 13:56:28 -0400
...
Voting side of proposal 122
svn:r12052
2007-10-19 18:56:26 +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
ee2b770dee
r15964@catbus: nickm | 2007-10-19 12:43:49 -0400
...
Sort out that need_to_mirror is for routerstatuses in v2 networkstatuses only.
svn:r12050
2007-10-19 18:56:21 +00:00
Nick Mathewson
24317c75a9
r15961@catbus: nickm | 2007-10-19 12:40:15 -0400
...
Learn the difference between "mismatched vote digest" and "mismatched vote times": the latter is more informative.
svn:r12049
2007-10-19 16:41:32 +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
140ef7d0f8
r15957@catbus: nickm | 2007-10-19 12:22:18 -0400
...
Report our IP address in our vote if it turns out that our hostname isn't a fqdn.
svn:r12047
2007-10-19 16:28:13 +00:00
Nick Mathewson
106e01db3d
r15956@catbus: nickm | 2007-10-19 11:18:14 -0400
...
Encode address in certificates. Also, make it possible to create certs reusing an old key.
svn:r12046
2007-10-19 16:28:10 +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
Peter Palfrader
829801c476
Call routers_update_all_from_networkstatus() from router_reload_consensus_networkstatus() so that we warn about old versions when we startup Tor, not when we fetch the next consensus document
...
svn:r12038
2007-10-19 00:29:16 +00:00
Roger Dingledine
85e746d060
revert a tiny bit of r12035
...
svn:r12037
2007-10-18 23:18:28 +00:00
Roger Dingledine
0a865bc277
various fixes from reading or-cvs the past few days
...
svn:r12035
2007-10-18 23:14:58 +00:00
Nick Mathewson
5bfb422157
r15934@catbus: nickm | 2007-10-18 15:32:56 -0400
...
When we have plenty of directory information, don't try to launch descriptor downloads quite so eagerly.
svn:r12033
2007-10-18 19:51:14 +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
192e3d71d4
r15915@catbus: nickm | 2007-10-18 10:26:44 -0400
...
Stop incessant notices about when we think the expected valid-after time should be, if we are not an authority.
svn:r12022
2007-10-18 14:27:42 +00:00
Nick Mathewson
959c4963b2
r15913@catbus: nickm | 2007-10-18 10:22:19 -0400
...
Fix segfault in init_keys()
svn:r12021
2007-10-18 14:23:19 +00:00
Nick Mathewson
8f21a0a0b7
r15907@catbus: nickm | 2007-10-18 10:18:53 -0400
...
Fix up logic for choosing the time at which to download a consensus: Never attempt it when the current consensus is still the most recent.
svn:r12020
2007-10-18 14:19:56 +00:00
Nick Mathewson
c96167a6bd
r15906@catbus: nickm | 2007-10-18 10:00:08 -0400
...
Remove the obsolete warned_conflicts field: a v3 consensus cannot conflict with itself.
svn:r12019
2007-10-18 14:19:53 +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
35abfa1f77
r15899@catbus: nickm | 2007-10-18 07:49:15 -0400
...
"if (!router_get_trusted_dirservers())" is a bad test: router_get_trusted_dirservers() always returns a list. Instead, check for whether the list is empty.
svn:r12013
2007-10-18 11:50:20 +00:00
Nick Mathewson
54ac72f6b0
r15887@catbus: nickm | 2007-10-17 17:25:32 -0400
...
When a networkstatus consensus download fails, do not wait 60 seconds to decide whether to retry. (Also, log the time at which we'll try to replace the current networkstatus.)
svn:r12005
2007-10-17 21:26:22 +00:00
Nick Mathewson
088c1fac39
r15886@catbus: nickm | 2007-10-17 17:21:10 -0400
...
Treat it as an error when a v3 authority cant load its keys or certificates
svn:r12004
2007-10-17 21:26:19 +00:00
Nick Mathewson
e3113502ad
r15882@catbus: nickm | 2007-10-17 15:23:05 -0400
...
oprofile was telling me that a fair bit of our time in openssl was spent in base64_decode, so replace base64_decode with an all-at-once fairly optimized implementation. For decoding keys and digests, it seems 3-3.5x faster than calling out to openssl. (Yes, I wrote it from scratch.)
svn:r12002
2007-10-17 19:23:56 +00:00
Nick Mathewson
e8bd32b347
r15880@catbus: nickm | 2007-10-17 14:56:51 -0400
...
Patch from robert hogan: do not reset trusted dir server list when we get a config option.
svn:r12001
2007-10-17 19:23:52 +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
4088a90d55
r15876@catbus: nickm | 2007-10-17 12:39:05 -0400
...
Treat certificates as reason to note directory info as arrived
svn:r11999
2007-10-17 16:55:41 +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
29173560b8
r15862@catbus: nickm | 2007-10-16 13:19:29 -0400
...
Correct mismatches between DirServer lines and authority configuration.
svn:r11992
2007-10-16 17:22:37 +00:00
Nick Mathewson
0dab1a14a5
r15860@catbus: nickm | 2007-10-16 13:09:57 -0400
...
Avoid an infinite loop in networkstatus_reset_download_failures().
svn:r11990
2007-10-16 17:21:03 +00:00
Nick Mathewson
58ecc39141
r15859@catbus: nickm | 2007-10-16 13:09:28 -0400
...
Reset the is_named flag only on non-naming directories.
svn:r11989
2007-10-16 17:21:01 +00:00
Nick Mathewson
0d26b623ee
r15853@catbus: nickm | 2007-10-16 11:32:55 -0400
...
Fix "Error adding vote: OK" message.
svn:r11986
2007-10-16 15:34:14 +00:00
Nick Mathewson
c5fb1c19eb
r15849@catbus: nickm | 2007-10-16 10:24:38 -0400
...
Correct and additional fix to bug 529.
svn:r11985
2007-10-16 14:25:16 +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
9ca2625833
r15847@catbus: nickm | 2007-10-16 10:15:07 -0400
...
Fix the simpler bit of bug 529: update routerinfo_t.is_named from the consensus.
svn:r11983
2007-10-16 14:25:13 +00:00
Nick Mathewson
f3c7eeb4a0
r15843@catbus: nickm | 2007-10-16 09:58:49 -0400
...
Clean up our code to fix a warning under gcc 4.2
svn:r11982
2007-10-16 13:59:37 +00:00
Roger Dingledine
5aa76cdaa8
Correctly check for bad options to the "PublishServerDescriptor"
...
config option. Bugfix on 0.2.0.1-alpha; reported by Matt Edman.
svn:r11968
2007-10-16 03:26:39 +00:00
Nick Mathewson
dbdaa610ee
r15814@catbus: nickm | 2007-10-15 22:15:19 -0400
...
Fix last patch.
svn:r11961
2007-10-16 02:15:41 +00:00
Roger Dingledine
e477a3860a
two ugly hacks to make my tor client start again. nick, these
...
are for you.
svn:r11960
2007-10-16 02:06:30 +00:00
Nick Mathewson
9b3957e755
r15809@catbus: nickm | 2007-10-15 19:44:13 -0400
...
Do not call the more interesting parts of routers_update_all_from_networkstatus if there is no live networkstatus.
svn:r11958
2007-10-15 23:44:32 +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
738d178f77
Make last commit compile
...
svn:r11953
2007-10-15 20:39:58 +00:00
Nick Mathewson
da955df111
Add some debugging logs related to dir vote timing.
...
svn:r11952
2007-10-15 20:37:59 +00:00
Nick Mathewson
516b913d5c
r15793@catbus: nickm | 2007-10-15 15:50:52 -0400
...
Do not set "have published consensus" to 1 after we recalculate timing.
svn:r11951
2007-10-15 19:51:14 +00:00
Nick Mathewson
7f9e9c816c
r15790@catbus: nickm | 2007-10-15 11:38:28 -0400
...
Fix bug 528: fix memory leak in base32_decode(). While there, also make base32_decode() accept upper-case inputs.
svn:r11946
2007-10-15 15:38:44 +00:00
Nick Mathewson
161b85d588
r15781@catbus: nickm | 2007-10-15 10:59:26 -0400
...
Make discard_old_votes part of the consensus publishing process, so we conform to spec, and so we avoid a weird bugs where publishing sets the consensus, setting the consensus makes us reschedule, and rescheduling makes us delay vote-discarding.
svn:r11944
2007-10-15 14:59:48 +00:00
Nick Mathewson
c8ad4f58ee
r15780@catbus: nickm | 2007-10-15 10:35:16 -0400
...
Fix the implementation of "download votes by digest".
svn:r11943
2007-10-15 14:59:44 +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
1b45314775
r15749@catbus: nickm | 2007-10-13 20:06:06 -0400
...
Remove support for long-obsolete bw_accounting file.
svn:r11917
2007-10-14 00:13:04 +00:00
Roger Dingledine
39902e93f7
Stop publishing a new server descriptor just because we HUP or
...
when we find our DirPort to be reachable but won't actually publish
it. Extra descriptors without any real changes are dropped by the
authorities, and can screw up our "publish every 18 hours" schedule.
svn:r11915
2007-10-13 22:31:35 +00:00
Roger Dingledine
d9ba4d3e8b
note a bug in directories_have_accepted_server_descriptor() pointed
...
out by weasel
svn:r11914
2007-10-13 22:01:24 +00:00
Roger Dingledine
e269feea77
stop handling 403 responses from directory authorities/mirrors. we
...
haven't issued those in years.
svn:r11913
2007-10-13 21:57:02 +00:00
Nick Mathewson
29fc92ef86
r15732@catbus: nickm | 2007-10-12 17:28:24 -0400
...
Start roughing out the functions that we'll use to replace the old ugly v2 networkstatus manipulation code".
svn:r11904
2007-10-12 21:33:39 +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
de08405bdb
r15721@catbus: nickm | 2007-10-12 13:30:48 -0400
...
Base vote timing only on a currently live consensus.
svn:r11896
2007-10-12 17:43:09 +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
b60e138586
fix two instances of double-frees. may fix bug 527.
...
svn:r11893
2007-10-12 09:09:46 +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
Roger Dingledine
ad8757fbeb
Disable the SETROUTERPURPOSE controller command: it is now obsolete.
...
svn:r11891
2007-10-11 22:19:47 +00:00
Roger Dingledine
5c4a00e796
minor cleanups
...
svn:r11890
2007-10-11 22:19:18 +00:00
Roger Dingledine
3d9bf8c912
note a design flaw that i should fix somehow
...
svn:r11889
2007-10-11 22:16:05 +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
b62d379f92
r15689@catbus: nickm | 2007-10-11 16:40:25 -0400
...
Fix bug 451. This was a nasty bug, so let's fix it twice: first, by banning recursive calls to connection_handle_write from connection_flushed_some; and second, by not calling connection_finished_flushing() on a closed connection. Backport candidate.
svn:r11882
2007-10-11 20:45:26 +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
007d76543d
r14887@Kushana: nickm | 2007-10-11 11:19:39 -0400
...
Fix some XXX020s in dirserv.c
svn:r11870
2007-10-11 16:06:51 +00:00
Nick Mathewson
52ca3a7610
r14886@Kushana: nickm | 2007-10-11 11:02:53 -0400
...
Move prototypes around in or.h so that the functions from routerlist.c which moved to networkstatus.c are all grouped in the right section.
svn:r11869
2007-10-11 16:06:47 +00:00
Nick Mathewson
6670122619
r14885@Kushana: nickm | 2007-10-11 10:36:16 -0400
...
Document minimal values for voting times. Use a macro instead of a magic number. Remove an "enforce this" xxxx020 that was already enforced.
svn:r11868
2007-10-11 16:06:42 +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
9a56b17c54
r15679@catbus: nickm | 2007-10-11 09:51:33 -0400
...
Remove code to generate v1 directories.
svn:r11866
2007-10-11 13:56:33 +00:00
Roger Dingledine
541aa72155
Bugfix on r11138:
...
Fix a minor memory leak whenever a controller sends the PROTOCOLINFO
command. Bugfix on 0.2.0.5-alpha.
Backport candidate.
svn:r11864
2007-10-11 03:27:47 +00:00
Roger Dingledine
900ddcb8fd
bugfix on r11298:
...
Fix a minor memory leak whenever we parse guards from our state
file. Bugfix on 0.2.0.7-alpha.
svn:r11862
2007-10-11 02:03:53 +00:00
Nick Mathewson
487f985f5b
r15670@catbus: nickm | 2007-10-10 20:08:14 -0400
...
Restore a removed assert.
svn:r11861
2007-10-11 00:13:06 +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
8e8d2defe3
bugfix on r11480:
...
Stop calling tor_strlower() on uninitialized memory in some cases.
svn:r11858
2007-10-10 23:44:10 +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
919f421c6c
get rid of the spurious "Freeing linked %s connection" complaints.
...
they happen whenever we fail to establish a connection.
svn:r11854
2007-10-10 22:59:34 +00:00
Nick Mathewson
17f3d2807d
r15660@catbus: nickm | 2007-10-10 16:25:09 -0400
...
Fix compilation on last patch.
svn:r11853
2007-10-10 20:29:52 +00:00
Nick Mathewson
dace37aee8
r15656@catbus: nickm | 2007-10-10 16:23:18 -0400
...
Fix the implementation of if-modified-since for certificates so that it applies to all types of certificate requests. Note that the kind of consensus that matters already has a working if-modified-since.
svn:r11852
2007-10-10 20:28:01 +00:00
Roger Dingledine
d9a99b9ba6
get r11842 closer to what i want
...
svn:r11851
2007-10-10 20:13:52 +00:00
Nick Mathewson
976c8f8a71
r15646@catbus: nickm | 2007-10-10 16:01:54 -0400
...
Fix some memory leaks when serving v3 networkstatus documents and v3 certs. Generate 503 correctly when serving v3 networkstatus documents and v3 certs.
svn:r11850
2007-10-10 20:06:38 +00:00
Roger Dingledine
f6b25613b8
Tweak the implementation of proposal 109 slightly: allow at most
...
two Tor servers on the same IP address, except if it's the location
of a directory authority, in which case allow five.
svn:r11842
2007-10-10 19:53:08 +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
f05685a8eb
r15635@catbus: nickm | 2007-10-10 15:27:07 -0400
...
Remove extraneous whitespace
svn:r11840
2007-10-10 19:33:14 +00:00
Nick Mathewson
b5301d81db
r15634@catbus: nickm | 2007-10-10 14:26:49 -0400
...
Resolve/ignore some XXXXs, and be even more careful about listing a server as a v3 authority.
svn:r11839
2007-10-10 19:33:11 +00:00
Nick Mathewson
b599d4264f
r15633@catbus: nickm | 2007-10-10 14:16:54 -0400
...
Fix a spelling mistake.
svn:r11838
2007-10-10 19:33:06 +00:00
Nick Mathewson
45b987d891
r15632@catbus: nickm | 2007-10-10 13:48:44 -0400
...
Merge networkstatus_add_signatures_impl into the only function that calls it.
svn:r11837
2007-10-10 19:33:01 +00:00
Nick Mathewson
daf4c11f1a
r15630@catbus: nickm | 2007-10-10 13:39:44 -0400
...
Save weighted-fractional-uptime to disk as well as MTBF. Bump the version on rouer-stability: downgrading to versions earlier than this one will lose your WFU data.
svn:r11835
2007-10-10 17:48:58 +00:00
Peter Palfrader
1a94e84661
Say "using socksX _to_ port y" instead of "socksX _on_ port y". it confuses weasel less
...
svn:r11834
2007-10-10 15:44:34 +00:00
Nick Mathewson
9ed39643fa
r15626@catbus: nickm | 2007-10-10 11:02:32 -0400
...
Resolve bug 516: Never report our bandwidth-history as over RelayBandwidthRate*NUM_SECS_BW_SUM_INTERVAL.
svn:r11833
2007-10-10 15:07:19 +00:00
Nick Mathewson
cb0dbbcfa5
r15621@catbus: nickm | 2007-10-10 00:37:25 -0400
...
Turns out, Bug 463 was just another "warn about something that is no big deal" thing. Downgrade, comment, and resolve.
svn:r11829
2007-10-10 04:37:38 +00:00
Nick Mathewson
1f4eafdb91
r15619@catbus: nickm | 2007-10-10 00:23:45 -0400
...
Fix bug 483: downgrade a harmless "Hey your accept() implementation sucks" warning to an info.
svn:r11828
2007-10-10 04:24:02 +00:00
Nick Mathewson
72f352880c
r15608@catbus: nickm | 2007-10-09 19:01:50 -0400
...
Give better messages and return values from signature uploads and downlaods; also, log actual errors when we screw up.
svn:r11823
2007-10-09 23:02:02 +00:00
Roger Dingledine
4f23045e58
back out a little bit of r11817 to preserve current behavior.
...
some other behavior changes left in.
svn:r11821
2007-10-09 21:12:48 +00:00
Roger Dingledine
a5851939c0
i heard that users know the phrase 'system clock' better than 'clock'. hm.
...
svn:r11820
2007-10-09 21:11:16 +00:00
Nick Mathewson
97fa3fdf16
r15599@catbus: nickm | 2007-10-09 16:44:36 -0400
...
Fix the bug that was making moria1 set valid-after wrong in its votes: we were looking at the preferred timing when we should have been looking at the consensus timing.
svn:r11818
2007-10-09 20:44:51 +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
0827d6f217
r15593@catbus: nickm | 2007-10-09 15:31:10 -0400
...
Fix an infinite loop when parsing multiple votes.
svn:r11813
2007-10-09 19:31:14 +00:00
Nick Mathewson
a2005cd2c1
r15590@catbus: nickm | 2007-10-09 15:14:42 -0400
...
Change dirvote_get_vote to take named flags rather than 3 boolean inputs. Fix a bug that was caused by the order of the boolean inputs in or.h not matching the order of boolean inputs in dirvote.c.
svn:r11812
2007-10-09 19:14:48 +00:00
Nick Mathewson
40b6a66c89
r15589@catbus: nickm | 2007-10-09 15:08:00 -0400
...
Fix dumb typo in vote retrieval: we want to check the pending votes to see what we are missing; not the previous period.
svn:r11811
2007-10-09 19:14:46 +00:00
Nick Mathewson
a3d4c47515
r15587@catbus: nickm | 2007-10-09 15:05:27 -0400
...
When parsing two concatenated networkstatuses (as we do when voting), detect the end of the first one properly.
svn:r11810
2007-10-09 19:05:38 +00:00
Roger Dingledine
c9f2afd5fa
make r11808 build on my 64-bit
...
svn:r11809
2007-10-09 18:43:05 +00:00
Nick Mathewson
23614f9523
r15581@catbus: nickm | 2007-10-09 14:36:47 -0400
...
Recompute voting schedule whenever a consensus is set.
svn:r11808
2007-10-09 18:36:56 +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
c7981e669f
r15574@catbus: nickm | 2007-10-09 13:01:53 -0400
...
Fix the "400 OK" issue when replying to a vote.
svn:r11801
2007-10-09 17:07:13 +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
Roger Dingledine
11a782a6c3
for once, it was "no-tab man" that struck again.
...
svn:r11793
2007-10-08 21:28:23 +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
8439c4ec2f
r15512@catbus: nickm | 2007-10-02 16:27:43 -0400
...
Make some functions static; remove some dead code.
svn:r11750
2007-10-02 20:35:23 +00:00
Nick Mathewson
f4f780b526
r15510@catbus: nickm | 2007-10-02 16:14:42 -0400
...
Add support for more vote URLs that weasel wanted. Weasel: please test this before I inflict it on anybody else. :)
svn:r11749
2007-10-02 20:19:43 +00:00
Nick Mathewson
439fe55c6b
r15436@catbus: nickm | 2007-10-01 21:17:27 -0400
...
Fix disgusting O(n^2) behavior in router_parse_list_from_string. Noticed by Li-Hui Zhou; found with oprofile.
svn:r11738
2007-10-02 01:22:42 +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
2050b31bb9
r15421@catbus: nickm | 2007-09-27 15:44:17 -0400
...
When we are a bridge directory, add bridges with purpose BRIDGE, not with purpose CONTROLLER. Roger, is this right?
svn:r11679
2007-09-27 20:46:28 +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
Roger Dingledine
ea47287575
minor typo
...
svn:r11658
2007-09-27 05:20:26 +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
95d97c722a
r15371@catbus: nickm | 2007-09-25 19:53:13 -0400
...
Always set status_out when adding a vote.
svn:r11646
2007-09-25 23:57:12 +00:00
Nick Mathewson
4d44bf1edc
r15367@catbus: nickm | 2007-09-25 19:31:11 -0400
...
It is amazing how reliable missing svk st are at breaking code.
svn:r11644
2007-09-25 23:35:28 +00:00
Nick Mathewson
ad11e9d0f1
r15310@catbus: nickm | 2007-09-24 11:36:08 -0400
...
Patch from Robert Hogan: fix a couple of status-event related typos. Backport candidate.
svn:r11604
2007-09-24 15:41:20 +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
b40230f45b
note another bug i'd like to fix
...
svn:r11571
2007-09-22 00:05:46 +00:00
Roger Dingledine
523ac934de
make directories_have_accepted_server_descriptor() able to
...
handle non-default values of PublishServerDescriptor.
svn:r11569
2007-09-21 22:14:39 +00:00
Roger Dingledine
41f3d0eb27
only mess with 'state' in init_keys if we're planning to actually
...
run tor. this resolves a segfault in 'tor --list-fingerprints'
introduced by r11437.
backport candidate due to r11438.
svn:r11566
2007-09-21 21:52:31 +00:00
Nick Mathewson
65cf389998
r15253@catbus: nickm | 2007-09-21 15:03:51 -0400
...
Oops; we had vote_delay and dist_delay switched when computing when to generate our consensus. Harmless so far, but let's get that fixed.
svn:r11558
2007-09-21 19:11:52 +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
fdf390525c
r15233@catbus: nickm | 2007-09-20 18:58:23 -0400
...
19:00 < weasel> Sep 21 01:00:01.926 [warn] Consensus published.
19:00 < weasel> hah
19:00 < nickm> ha indeed
19:00 < nickm> a winner is me
19:00 < weasel> _warn_ :)
19:01 < nickm> watch out! It could go off at any moment!
19:01 * weasel backs away
svn:r11546
2007-09-20 23:02:13 +00:00
Roger Dingledine
90d1345d90
bugfix on r11110:
...
Fix a bug that made servers send a "404 Not found" in response to
attempts to fetch their server descriptor. This caused Tor servers
to take many minutes to establish reachability for their DirPort,
and it totally crippled bridges. Bugfix on 0.2.0.5-alpha.
svn:r11545
2007-09-20 22:08:40 +00:00
Peter Palfrader
3b776b865e
Minor whitespace fix
...
svn:r11543
2007-09-20 21:46:10 +00:00
Peter Palfrader
b16224c311
add a v3 authority
...
svn:r11542
2007-09-20 21:36:56 +00:00
Nick Mathewson
fc5dd0cdbb
r15231@catbus: nickm | 2007-09-20 16:04:30 -0400
...
Patch from karsten: remove cbc and make unit tests handle aes-ctr-with-iv.
svn:r11538
2007-09-20 20:08:47 +00:00
Roger Dingledine
088c4cd8ce
it works better when it compiles
...
svn:r11531
2007-09-20 04:54:50 +00:00
Roger Dingledine
0914883339
Resume listing "AUTHORITY" flag for authorities in network status.
...
Bugfix on 0.2.0.3-alpha; reported by Alex de Joode.
svn:r11530
2007-09-20 04:37:17 +00:00
Nick Mathewson
5e81b0ecb8
r15170@catbus: nickm | 2007-09-19 11:41:50 -0400
...
Carry a new evdns function over from libevent: do not rely on compile-time code to set the transaction ID correctly. This will be important when we finally drop our internal copy of eventdns.c
svn:r11517
2007-09-19 15:53:36 +00:00
Nick Mathewson
faeedbb8af
r15167@catbus: nickm | 2007-09-19 11:19:08 -0400
...
Fix unit tests for rendezvous descriptor parsing.
svn:r11516
2007-09-19 15:53:33 +00:00
Roger Dingledine
53f57dd7c0
Set up moria1 as the first v3 directory authority.
...
svn:r11506
2007-09-19 03:22:01 +00:00
Roger Dingledine
a1e923c50d
right before publishing our service descriptor, we were
...
rewriting the hexdigest back to an ambiguous nickname.
if this patches it, we should write a changelog and then
backport.
svn:r11500
2007-09-19 00:30:19 +00:00
Roger Dingledine
2a2cee9e51
Start using the v2 intro format for hidden service connections. Now
...
clients specify their chosen rendezvous point by identity digest
rather than by (potentially ambiguous) nickname. This change could
speed up hidden service connections dramatically.
svn:r11499
2007-09-18 23:48:39 +00:00
Roger Dingledine
82da6c02ba
clean up r11496
...
svn:r11498
2007-09-18 23:34:27 +00:00
Roger Dingledine
eb9dc12ce9
Drop support for v1 rendezvous descriptors, since we never used
...
them anyway, and the code has probably rotted by now. Based on
patch from Karsten Loesing.
svn:r11496
2007-09-18 21:17:45 +00:00
Roger Dingledine
f15a4c8bd7
add some crypto/util functions from karsten, as the first
...
step of integrating his new hidden service stuff
svn:r11489
2007-09-18 17:07:56 +00:00
Nick Mathewson
f45dec1690
r15143@catbus: nickm | 2007-09-18 11:49:46 -0400
...
Add getinfo status/good-server-descriptor and status/reachability-succeeded. Patch from Robert Hogan.
svn:r11483
2007-09-18 15:53:55 +00:00
Nick Mathewson
a2b76befff
r15142@catbus: nickm | 2007-09-18 11:43:32 -0400
...
Split "Have all the authorities accepted our server descriptor?" into its own function. Patch from Robert Hogan.
svn:r11482
2007-09-18 15:53:53 +00:00
Nick Mathewson
eee8d750b6
r15140@catbus: nickm | 2007-09-18 11:34:54 -0400
...
Get rid of a needless malloc() when parsing address policies. Original patch from "Some guy on #tor", via arma. Altered to have a sufficiently large buffer, and not use the buffer so much, and to save a strlcpy.
svn:r11480
2007-09-18 15:38:00 +00:00
Roger Dingledine
8f75defd33
Servers used to decline to publish their DirPort if their
...
BandwidthRate, RelayBandwidthRate, or MaxAdvertisedBandwidth
were below a threshold. Now they only look at BandwidthRate and
RelayBandwidthRate.
svn:r11465
2007-09-17 22:22:05 +00:00
Roger Dingledine
ffce9d3368
trivial doxygen thing
...
svn:r11463
2007-09-17 21:59:07 +00:00
Nick Mathewson
8c13967803
r14448@Kushana: nickm | 2007-09-17 14:26:56 -0400
...
Unify all of the divergent median/nth-percentile code in container.[ch]
svn:r11457
2007-09-17 18:27:49 +00:00
Nick Mathewson
93d4ad9743
r14447@Kushana: nickm | 2007-09-17 13:31:50 -0400
...
Track weighted fractional uptime in addition to weighted mtbf: we want to use mtbf for stable, but fractional uptime for guard.
svn:r11456
2007-09-17 18:27:43 +00:00
Nick Mathewson
076b27aff8
r15077@catbus: nickm | 2007-09-15 14:04:19 -0400
...
Oops; make Makefile.am work on mingw again.
svn:r11445
2007-09-15 18:06:23 +00:00
Nick Mathewson
1dbe726f04
r15068@catbus: nickm | 2007-09-14 15:25:02 -0400
...
Fix a couple typos in control.c; spotted by Robert Hogan.
svn:r11440
2007-09-14 19:27:04 +00:00
Nick Mathewson
5fcc48d389
r14425@Kushana: nickm | 2007-09-13 13:00:57 -0400
...
Do not load state when options->command is not RUN_TOR. (Resolves bug 499; backport candidate)
svn:r11437
2007-09-13 17:01:08 +00:00
Nick Mathewson
9b1ad0074b
r14392@Kushana: nickm | 2007-09-12 11:04:20 -0400
...
Complete implementation of proposal 104: remove bandwidth history lines from router descriptors.
svn:r11434
2007-09-12 17:33:23 +00:00
Nick Mathewson
71a56aa895
r14391@Kushana: nickm | 2007-09-12 10:56:17 -0400
...
Remove some needless complexity from the code to add signatures to a consensus: previously, we had a path to add new signatures, and a second path to replace signatures. But the second path sufficed as a common case, and the code isn't invoked nearly enough to justify the optimization of having the first path.
svn:r11433
2007-09-12 17:33:18 +00:00
Nick Mathewson
1647a5764a
r15056@catbus: nickm | 2007-09-12 13:15:19 -0400
...
Try to fix an automake problem by renaming a variable.
svn:r11432
2007-09-12 17:17:03 +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
749da8e0e9
r15047@catbus: nickm | 2007-09-11 13:40:54 -0400
...
Fix a memory leak when reloading v3 authority certificate and keys.
svn:r11428
2007-09-11 20:17:24 +00:00
Nick Mathewson
973502d290
r15046@catbus: nickm | 2007-09-11 13:38:36 -0400
...
Check V3 authority certificates for expiry, and warn the authority op as they get old.
svn:r11427
2007-09-11 20:17:22 +00:00
Nick Mathewson
3c7652ccdb
r15045@catbus: nickm | 2007-09-11 11:52:29 -0400
...
Reject incoming votes when the valid-after time does not match the period that we're trying to vote for.
svn:r11426
2007-09-11 20:17:20 +00:00
Nick Mathewson
c0130f9611
r15022@catbus: nickm | 2007-09-10 10:31:54 -0400
...
remove yet more pointless differences between our eventdns.c and the evdns.c in libevent.
svn:r11425
2007-09-11 20:17:18 +00:00
Nick Mathewson
5828e4d5c4
r15020@catbus: nickm | 2007-09-10 10:22:31 -0400
...
remove more pointless differences between our eventdns.c and the evdns.c in libevent.
svn:r11416
2007-09-10 14:23:26 +00:00
Nick Mathewson
13b65c4129
r15018@catbus: nickm | 2007-09-10 10:04:16 -0400
...
Change comments in eventdns.c to C-style, so we can more easily diff it against the version in libevent to reconcile them (again).
svn:r11415
2007-09-10 14:05:12 +00:00
Nick Mathewson
a04e584cbc
r15005@catbus: nickm | 2007-09-10 09:49:03 -0400
...
Undo brokenness from merge conflict.
svn:r11414
2007-09-10 13:50:00 +00:00
Nick Mathewson
615d19fe4c
r15001@catbus: nickm | 2007-09-10 09:44:49 -0400
...
Fix a couple of memory leaks in eventdns.c; found by niels. Not backport candidates, since they only affect DNSPort users.
svn:r11413
2007-09-10 13:48:01 +00:00
Nick Mathewson
6744ebe7b5
svn:r11412
2007-09-10 13:47:56 +00:00
Nick Mathewson
565f5f32c5
r14363@Kushana: nickm | 2007-09-08 16:25:45 -0400
...
Another round of whitespeace fixes.
svn:r11407
2007-09-08 20:25:57 +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
1c8bd05c70
Fix compilation of ntmain.c.
...
svn:r11395
2007-09-06 18:19:09 +00:00
Nick Mathewson
4c4280e249
Make sure that even dumb compilers can tell that bad_cookie and bad_password are set before use.
...
svn:r11390
2007-09-06 18:04:28 +00:00
Nick Mathewson
f17a38ab04
r14940@catbus: nickm | 2007-09-06 13:22:26 -0400
...
Move NT services code into its own C file. Probably will not build happily on win32 yet; more hacking needed.
svn:r11388
2007-09-06 17:42:05 +00:00
Andrew Lewman
c5b4f779ec
Fixed misspelling of "connection" caught by kate.
...
svn:r11382
2007-09-06 00:36:53 +00:00
Nick Mathewson
d57c1c5c56
r14328@Kushana: nickm | 2007-09-04 20:17:34 -0400
...
There is no good reason to make hashedcontrolpassword and cookieauthentication mutually exclusive. So let's not.
svn:r11377
2007-09-05 00:31:07 +00:00
Nick Mathewson
7c47856c9e
r14327@Kushana: nickm | 2007-09-04 20:06:04 -0400
...
Better comment in dnsserv.c
svn:r11376
2007-09-05 00:31:01 +00:00
Nick Mathewson
eca3634f62
r14294@Kushana: nickm | 2007-09-01 13:50:03 -0400
...
Oops. Initialize "changed" variable when removing obsolete guards.
svn:r11346
2007-09-01 17:50:29 +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
Nick Mathewson
2ff871e530
r14871@catbus: nickm | 2007-08-31 10:12:53 -0400
...
Check correct circuit type when calling functions from rend_process_relay_cell. Backport candidate.
svn:r11336
2007-08-31 14:20:44 +00:00
Nick Mathewson
5da6321b76
r14859@catbus: nickm | 2007-08-30 17:10:15 -0400
...
0-pad minutes and seconds when displaying weighted mtbf in info logs.
svn:r11324
2007-08-30 21:12:34 +00:00
Nick Mathewson
c8e379a4cd
r14259@Kushana: nickm | 2007-08-30 02:33:55 -0400
...
Teach tor about more libevent versions. Be more clear that "Known bugs" means "it will crash or something." Most significantly, stop issuing dire warnings every time we run with kqueue on os x: it seems to have worked for a while now.
svn:r11314
2007-08-30 06:34:17 +00:00
Nick Mathewson
f189ecbf20
r14832@catbus: nickm | 2007-08-29 15:00:27 -0400
...
Use (and debug) new file-writing functions in order to simplify code that formerly built big strings in RAM.
svn:r11301
2007-08-29 19:02:43 +00:00
Nick Mathewson
91f83cfc2d
r14830@catbus: nickm | 2007-08-29 13:50:10 -0400
...
Make controllers accept LF as well as CRLF. Update spec to reflect this. Remove now-dead code. Make controller warning about v0 protocol more accurate.
svn:r11299
2007-08-29 19:02:33 +00:00
Nick Mathewson
4266039c19
r14826@catbus: nickm | 2007-08-29 13:19:55 -0400
...
Add a line to the state file for each guard to let us know which version added the guard. If the line is absent, assume the guard was added by whatever version of Tor last wrote the state file. Remove guards if the version that added them was using a bad guard selection algorithm. (Previously, we removed guards if the version that wrote the file was using a bad guard selection algorithm, even if the guards themselves were chosen by a good version.)
svn:r11298
2007-08-29 17:22:00 +00:00
Nick Mathewson
a4cc3e4be1
r14821@catbus: nickm | 2007-08-27 19:57:56 -0400
...
Check for absent nickname when making extend info. I still dont know when this happens, but it is easy enough to check for. Fixes bug 467.
svn:r11293
2007-08-28 00:00:32 +00:00
Nick Mathewson
7cbe302b3f
r14231@Kushana: nickm | 2007-08-27 14:56:14 -0400
...
Most configuration options have the same names in or.h and in torrc. Make the macros reflect this, so that it is easier to fit them onto a line, and so that mismatched options stand out more
svn:r11290
2007-08-27 18:56:20 +00:00
Nick Mathewson
d3224bad42
r14227@Kushana: nickm | 2007-08-27 11:33:28 -0400
...
Add a new ClientDNSRejectInternalAddresses option (default: on) to refuse to believe that any address can map to or from an internal address. This blocks some kinds of potential browser-based attacks, especially on hosts using DNSPort. Also clarify behavior in some comments. Backport candiate?
svn:r11287
2007-08-27 15:33:58 +00:00
Roger Dingledine
c4ee55ed26
Set up Tonga as the default bridge directory authority.
...
svn:r11276
2007-08-25 22:02:55 +00:00
Roger Dingledine
da1485088c
formatting cleanups
...
svn:r11273
2007-08-25 21:31:34 +00:00
Roger Dingledine
df98447be5
revert the recommended-guard-version thing. it did not do what we
...
want, which is to expire old guards *every* time somebody moves
from an old version to the new one.
also, refine which version numbers count as 'new enough'.
svn:r11272
2007-08-25 20:34:13 +00:00
Nick Mathewson
7efc165095
r14204@Kushana: nickm | 2007-08-24 10:24:36 -0400
...
Fix a bug in last patch; add support for getting extrainfo documents by the control port (since it is silly to tell tools to do it without actually giving them an interface).
svn:r11270
2007-08-24 14:41:15 +00:00
Nick Mathewson
b9d43e2685
r14203@Kushana: nickm | 2007-08-24 10:15:58 -0400
...
Add a hacked-up GETINFO desc/all-recent-extrainfo-hack so that torstat can keep working with a minimum of fuss, until it learns about extrainfo documents.
svn:r11269
2007-08-24 14:41:10 +00:00
Nick Mathewson
cf2ac9b9e1
r14202@Kushana: nickm | 2007-08-24 09:55:30 -0400
...
Add purposes for new things we need to fetch for v3 directory system.
svn:r11268
2007-08-24 14:41:06 +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
738ecba367
make the last patch do what i actually want. it was a bit tricky
...
since we want the default guardversion to be 0 (which is what it is
if there's no guardversion line), yet when we're validating a freshly
configed and defaulted state, we don't want to complain.
svn:r11264
2007-08-24 08:12:25 +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
Roger Dingledine
8d524edb83
a single quote != a single double quote. i can't hear the
...
circus music from here, perhaps we should move closer.
svn:r11256
2007-08-23 23:03:32 +00:00
Nick Mathewson
c65131b171
r14185@Kushana: nickm | 2007-08-22 11:07:01 -0400
...
Add some voting-related documentation.
svn:r11255
2007-08-22 15:07:44 +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
Roger Dingledine
c02fb8997b
backport candidate:
...
Make it possible to read the PROTOCOLINFO response in a way that
conforms to our control-spec. Reported by Matt Edman.
svn:r11251
2007-08-22 07:57:10 +00:00
Roger Dingledine
353abd9830
backport candidate:
...
Stop leaking part of the descriptor when we run into a particularly
unparseable piece of it. Bugfix on 0.1.2.x.
svn:r11249
2007-08-22 03:21:51 +00:00
Roger Dingledine
79066b4851
backport candidate:
...
Fix a minor memory leak when we fail to find enough suitable
servers to choose a circuit. Bugfix on 0.1.2.x.
svn:r11247
2007-08-22 03:03:24 +00:00
Nick Mathewson
7dbe7fd4d8
r14758@catbus: nickm | 2007-08-21 01:36:03 -0400
...
Finish implementing and documenting proposal 108: Authorities now use MTBF data to set their stability flags, once they have at least 4 days of data to use.
svn:r11240
2007-08-21 05:37:24 +00:00
Roger Dingledine
8a21232256
Stop putting the authentication cookie in a file called "0"
...
in your working directory if you don't specify anything for the
new CookieAuthFile option. Reported by Matt Edman.
svn:r11237
2007-08-21 03:11:56 +00:00
Peter Palfrader
c7140372cb
It works better if we don't print a 404 header after our body
...
svn:r11236
2007-08-20 22:40:09 +00:00
Peter Palfrader
6802923fa7
call it EXPORTMALLINFO, not EXPORTMEMINFO
...
svn:r11235
2007-08-20 22:31:39 +00:00
Peter Palfrader
8aceafc0c8
Appease check-spaces
...
svn:r11234
2007-08-20 22:23:22 +00:00
Peter Palfrader
38cbd7263e
We do not mix variable declarations and code
...
svn:r11233
2007-08-20 22:13:14 +00:00
Peter Palfrader
8c3d14cda5
Optionally export mallinfo() output on the DirPort
...
svn:r11232
2007-08-20 22:11:56 +00:00
Peter Palfrader
f99ac7fe52
Remove /tor/dir-all-weaselhack, it's useless without FULL_V1_DIRECTORIES defined
...
svn:r11231
2007-08-20 21:56:33 +00:00
Roger Dingledine
4ff3343e98
Let directory authorities startup even when they can't generate
...
a descriptor immediately, e.g. because they don't know their
address.
svn:r11228
2007-08-20 18:29:17 +00:00
Nick Mathewson
df0a141a27
r14740@catbus: nickm | 2007-08-20 13:00:52 -0400
...
Only load MTBF data if we are running tor
svn:r11226
2007-08-20 17:02:04 +00:00
Nick Mathewson
3effc8b267
r14733@catbus: nickm | 2007-08-20 12:32:44 -0400
...
Clean up MTBF storage code. Do not count times that we have been down toward the current run. Handle backward timewarps correctly. Store MTBF data on exit in addition to periodically.
svn:r11225
2007-08-20 16:34:17 +00:00
Roger Dingledine
a200f442fb
avoid double-punctuation when we're reporting errors from the
...
config functions to the controller.
svn:r11221
2007-08-20 16:13:21 +00:00
Nick Mathewson
76d40372fc
r14731@catbus: nickm | 2007-08-20 12:02:09 -0400
...
Clean up authdir_X functions a little.
svn:r11220
2007-08-20 16:03:19 +00:00
Nick Mathewson
9958dc8d53
r14729@catbus: nickm | 2007-08-20 11:58:02 -0400
...
Trigger load and save of MTBF data.
svn:r11219
2007-08-20 15:59:31 +00:00
Nick Mathewson
d3b019a1df
r14726@catbus: nickm | 2007-08-20 11:42:07 -0400
...
Make v3-only authorities check reachability
svn:r11218
2007-08-20 15:43:17 +00:00
Nick Mathewson
113367bc01
r14722@catbus: nickm | 2007-08-20 10:54:29 -0400
...
Add debugging warning to not abort in the case of bug 483. This is probably not an actual error case, so we should figure out what is really causing it and do something more sensible.
svn:r11215
2007-08-20 14:59:05 +00:00
Nick Mathewson
c7ed49e7f8
r14663@catbus: nickm | 2007-08-18 17:50:51 -0400
...
Fix an XXX020 in or.h: BRIDGE != CONTROLLER.
svn:r11195
2007-08-19 15:20:11 +00:00
Roger Dingledine
473ff753f2
bump to 0.2.0.5-alpha since we're getting close
...
svn:r11189
2007-08-19 07:30:29 +00:00
Roger Dingledine
8641439a6e
backport candidate (revert part of r9350):
...
Expire application streams in all cases if they've been around
longer than SocksTimeout. Right now there are some cases where the
stream will live forever, demanding a new circuit every 15 seconds.
Bugfix on 0.1.2.7-alpha; fixes bug 454; reported by lodger.
svn:r11186
2007-08-19 07:17:40 +00:00
Roger Dingledine
d6aa617e07
oh, and make it compile too
...
svn:r11185
2007-08-19 07:06:02 +00:00
Roger Dingledine
03560d575e
generalize circuit_find_to_cannibalize() so it knows what
...
purpose circuit we're planning to become
svn:r11184
2007-08-19 07:04:24 +00:00
Roger Dingledine
c88803d924
Fix a bug in ADDRMAP controller replies that would sometimes
...
try to print a NULL. Patch from tup.
svn:r11181
2007-08-19 04:58:55 +00:00
Roger Dingledine
7c49a8d03e
get rid of a debugging message that non v3-authorities were
...
seeing too, and that doesn't seem to be critical
svn:r11179
2007-08-19 04:28:56 +00:00
Andrew Lewman
b7026ea1b3
Move event.h include down a stanza to make mingw happy.
...
svn:r11174
2007-08-19 02:56:16 +00:00
Roger Dingledine
96cff65f85
backport candidate:
...
Refuse to start with certain directory authority keys, and
encourage people using them to stop.
svn:r11171
2007-08-19 02:51:54 +00:00
Nick Mathewson
b45b91a358
r14661@catbus: nickm | 2007-08-18 15:38:08 -0400
...
Long overdue test.c refactoring: add --warn/--notice/--info/--debug command line options to set logging levels, and let the user specify which tests to run from the commmand line.
svn:r11167
2007-08-18 19:39:14 +00:00
Nick Mathewson
676d8622de
r14659@catbus: nickm | 2007-08-18 14:19:34 -0400
...
When we are loading state info from disk, never believe any date in the future. Doing so can keep us from retrying guards, rotating onion keys, storing bandwidth info, etc. Fixes bug 434, and others. Backport candidate, once it has been tested.
svn:r11166
2007-08-18 18:20:42 +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
1f244d3943
r14639@catbus: nickm | 2007-08-17 17:45:28 -0400
...
Compile without warnings on MinGW, even with --enable-gcc-warnings enabled.
svn:r11157
2007-08-17 21:46:34 +00:00
Nick Mathewson
f8b3927e07
r14634@catbus: nickm | 2007-08-17 16:43:49 -0400
...
Try to fix bug 482: do not rely on s6_addr16 or s6_addr32 on MSVC. How ugly.
svn:r11155
2007-08-17 20:44:54 +00:00
Nick Mathewson
b34ed73706
r14630@catbus: nickm | 2007-08-17 16:30:42 -0400
...
Functions to save and load MTBF information.
svn:r11153
2007-08-17 20:31:59 +00:00
Nick Mathewson
31668172ed
r14626@catbus: nickm | 2007-08-17 11:20:05 -0400
...
Link note_router_reachable and note_router_unreachable to mtbf code. decouple mtbf from connect/disconnect. log it in USR1. do not blow it away on cleanup if we are an authority.
svn:r11151
2007-08-17 20:31:54 +00:00
Roger Dingledine
3f186e6510
help nick work on proposal 108
...
svn:r11148
2007-08-17 01:29:58 +00:00
Nick Mathewson
357b4645cf
r14612@catbus: nickm | 2007-08-16 15:23:35 -0400
...
Initial work on proposal 108: have rephist.c track the information we want to be tracking for OR stability.
svn:r11147
2007-08-16 19:32:29 +00:00
Roger Dingledine
2df9bb937d
clean up the cookieauth stuff
...
svn:r11146
2007-08-16 19:27:31 +00:00
Nick Mathewson
718953dbe9
r14606@catbus: nickm | 2007-08-16 13:45:01 -0400
...
Implement CookieAuthFile and CookieAuthFileGroupReadable. Backport candidate.
svn:r11141
2007-08-16 17:46:01 +00:00
Nick Mathewson
f4398feadb
r14600@catbus: nickm | 2007-08-16 13:30:22 -0400
...
Implement proposal 119. Backport candidate.
svn:r11138
2007-08-16 17:31:23 +00:00
Nick Mathewson
3623a12262
r14583@catbus: nickm | 2007-08-15 17:52:35 -0400
...
Fix a bug caught by Kate: when we switched from masks to bits in 0.2.0.3-alpha, we added a spurious ! that made us never believe that any address fell inside a virtual address range. While we're at it, save a trip around the loop in the common case.
svn:r11129
2007-08-15 21:53:34 +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
abad4dfc7a
r14050@Kushana: nickm | 2007-08-15 15:21:02 -0400
...
Eliminate tons of repeated code in directory_handle_command_get.
svn:r11126
2007-08-15 19:55:57 +00:00
Nick Mathewson
4135c68853
r14049@Kushana: nickm | 2007-08-15 14:43:56 -0400
...
Implement code to serve pending votes, consensuses, and signatures.
svn:r11125
2007-08-15 19:55:52 +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
e10041447c
r14045@Kushana: nickm | 2007-08-15 13:07:21 -0400
...
Add more logs to try to hunt down latest voting bug.
svn:r11123
2007-08-15 17:07:27 +00:00
Nick Mathewson
38b84d9659
r14043@Kushana: nickm | 2007-08-15 12:12:25 -0400
...
Fix consensus signatures: regenerate the entire signature list when we get a new signature, rather than just appending the new signature. This lets us tentatively accept weird signatures, since we can replace them with better ones later.
svn:r11122
2007-08-15 16:12:40 +00:00
Nick Mathewson
d5bd7d9fa3
r14032@Kushana: nickm | 2007-08-15 11:35:16 -0400
...
Add unit tests for median functions; enforce sensible ranges for intervals and delays.
svn:r11121
2007-08-15 15:38:58 +00:00
Nick Mathewson
60c2e9d99e
r14031@Kushana: nickm | 2007-08-15 11:34:26 -0400
...
Fix a segfault in cert retrieval
svn:r11120
2007-08-15 15:38:53 +00:00
Roger Dingledine
7e5cee8110
this does not actually change anything (i hope), but it makes me a lot
...
more comfortable.
nick, can you confirm this?
svn:r11119
2007-08-15 15:36:34 +00:00
Roger Dingledine
f606d74f56
backport candidate:
...
- If we require CookieAuthentication but we fail to write the
cookie file, we would warn but not exit, and end up in a state
where no controller could authenticate. Now we exit.
- If we require CookieAuthentication, stop generating a new cookie
every time we change any piece of our config.
svn:r11117
2007-08-15 15:26:14 +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
486166f9a8
r14020@Kushana: nickm | 2007-08-14 16:07:37 -0400
...
return 404 properly when somebody requests a bunch of nonexistent statuses/servers
svn:r11110
2007-08-14 20:19:58 +00:00
Nick Mathewson
3923eff1e6
r14019@Kushana: nickm | 2007-08-14 15:40:05 -0400
...
Save a 4 or 8 bytes per connection in or.h
svn:r11109
2007-08-14 20:19:51 +00:00
Nick Mathewson
2a31f09af6
r14018@Kushana: nickm | 2007-08-14 15:39:35 -0400
...
Resolve XXXX020s in config.c
svn:r11108
2007-08-14 20:19:46 +00:00
Nick Mathewson
42fa1de585
r14017@Kushana: nickm | 2007-08-14 15:13:14 -0400
...
Enable more code for v3 voting timing information. Also, spec clarification.
svn:r11107
2007-08-14 20:19:40 +00:00
Nick Mathewson
25d2901857
r14015@Kushana: nickm | 2007-08-14 12:39:04 -0400
...
Try to avoid adding duplicate signatures to a consensus.
svn:r11105
2007-08-14 16:39:18 +00:00
Nick Mathewson
925394022a
r14011@Kushana: nickm | 2007-08-14 10:29:49 -0400
...
Actually upload signatures when we vote. log more about the signatures we get. discard pending vote stuff after we publish.
svn:r11104
2007-08-14 14:30:45 +00:00
Nick Mathewson
944bc41f99
r14010@Kushana: nickm | 2007-08-14 10:20:28 -0400
...
Fix a URL in voting
svn:r11103
2007-08-14 14:30:33 +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
817ed1ccbf
r14006@kushana: nickm | 2007-08-14 09:34:28 -0400
...
re-enable version checking
svn:r11101
2007-08-14 13:34:41 +00:00
Nick Mathewson
3268ab58f2
r14005@kushana: nickm | 2007-08-14 09:34:19 -0400
...
add a warning to find a bug (maybe)
svn:r11100
2007-08-14 13:34:35 +00:00
Nick Mathewson
cd5eaf53f9
r14003@kushana: nickm | 2007-08-13 22:23:49 -0400
...
Resolve a pile of XXXXs in and around voting code
svn:r11099
2007-08-14 02:23:57 +00:00
Nick Mathewson
7113ab8f90
r14001@kushana: nickm | 2007-08-13 20:06:36 -0400
...
Check for *at least* as many signatures as required, not for *more* signatures than required.
svn:r11098
2007-08-14 00:07:29 +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
a1ce60f9a6
r14546@catbus: nickm | 2007-08-13 17:19:01 -0400
...
Make if-modified-since work on consensuses
svn:r11095
2007-08-13 21:19:54 +00:00
Nick Mathewson
9356a0b1dd
r14544@catbus: nickm | 2007-08-13 17:00:09 -0400
...
Give a 200 when a duplicate vote gets uploaded.
svn:r11094
2007-08-13 21:01:02 +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
94c90c42e3
r13987@Kushana: nickm | 2007-08-13 16:17:09 -0400
...
Stop segfaulting on failed consensus.
svn:r11090
2007-08-13 20:17:14 +00:00
Nick Mathewson
936edd901d
r13985@Kushana: nickm | 2007-08-13 16:05:07 -0400
...
Fix some simple logic errors in voting.
svn:r11089
2007-08-13 20:05:25 +00:00
Nick Mathewson
2d07cce67f
r14536@catbus: nickm | 2007-08-13 15:54:17 -0400
...
Make voting actually function.
svn:r11088
2007-08-13 19:55:08 +00:00
Nick Mathewson
89c65f2a4e
r14534@catbus: nickm | 2007-08-13 15:15:46 -0400
...
Read v3 keys from the right location
svn:r11087
2007-08-13 19:16:44 +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
33cf3ada94
r14526@catbus: nickm | 2007-08-13 14:08:37 -0400
...
Make voting interval configurable.
svn:r11083
2007-08-13 18:09:38 +00:00
Roger Dingledine
762b5c479c
less scary log entry
...
svn:r11077
2007-08-11 14:38:11 +00:00
Roger Dingledine
330abbb6c6
logging patch from karsten, slightly modified to compile
...
svn:r11074
2007-08-11 14:13:25 +00:00
Roger Dingledine
5920484083
dirserv.c:782: warning: `set_v1_dirty' might be used uninitialized in this function
...
svn:r11068
2007-08-10 03:07:00 +00:00
Nick Mathewson
5070a1e3ef
r14103@catbus: nickm | 2007-08-09 18:30:40 -0400
...
Drop v1 directory support: instead, just generate stub v1 directories. This should save lots and lots of directory bandwidth, and break any code relying on v1 directories, including Tor 0.1.0.x and earlier.
svn:r11067
2007-08-09 22:32:33 +00:00
Nick Mathewson
da09efe13d
r13953@Kushana: nickm | 2007-08-08 07:40:46 -0700
...
Fix osx compilation.
svn:r11065
2007-08-08 14:43:30 +00:00
Nick Mathewson
3fc04529d4
r14093@catbus: nickm | 2007-08-08 01:49:54 -0400
...
Include fewer redundant headers; use the compiler search paths better.
svn:r11060
2007-08-08 05:50:31 +00:00
Nick Mathewson
68e6426c23
r13927@Kushana: nickm | 2007-08-03 00:56:54 -0700
...
ratchet down the time spent on threading tests
svn:r11043
2007-08-03 07:57:41 +00:00
Nick Mathewson
1c513979fc
r13919@Kushana: nickm | 2007-08-02 10:58:31 -0700
...
Warn about unsafe ControlPort configurations.
svn:r11038
2007-08-02 21:03:40 +00:00
Roger Dingledine
659cdae145
a patch on r11016 that makes it work better
...
svn:r11018
2007-08-02 04:28:29 +00:00
Nick Mathewson
322b6f7e65
r13892@Kushana: nickm | 2007-08-01 18:27:13 -0700
...
Close immediately after anything but a successful authentication attempt on the control port. Backport candidate.
svn:r11016
2007-08-02 01:28:40 +00:00
Nick Mathewson
a4e7dffc94
r13886@Kushana: nickm | 2007-08-01 09:43:06 -0700
...
Unit tests and debugging for detached signature manipulation.
svn:r11015
2007-08-01 16:43:44 +00:00
Nick Mathewson
484c8b776d
r13872@Kushana: nickm | 2007-07-31 08:27:54 -0700
...
Rename IN4_ADDR and IN6_ADDR to try to avoid conflicting with Windows definitions. This may fix the windows build.
svn:r11011
2007-08-01 15:57:34 +00:00
Nick Mathewson
480db0f00a
r14034@catbus: nickm | 2007-07-31 05:22:56 -0400
...
possible fix for bug 473: always set buf->cur on buf_remove_from_front.
svn:r11004
2007-07-31 09:31:15 +00:00
Peter Palfrader
ce8edc964c
Stop pretending all systems are fast
...
svn:r11003
2007-07-31 06:48:47 +00:00
Roger Dingledine
57c6264ede
tweak comment
...
svn:r10998
2007-07-30 23:52:58 +00:00
Nick Mathewson
45c82b1d85
r14024@catbus: nickm | 2007-07-30 14:13:58 -0400
...
Glibc (and maybe others) define a mallinfo() that can be used to see how the platform malloc is acting inside. When we have it, dump its output on dumpmemusage().
svn:r10996
2007-07-30 18:14:14 +00:00
Nick Mathewson
9fb77a6479
Disable SENTINELS in buffers: it may be responsible for making platform mallocs() be inefficient, and we havent needed it in a long long time.
...
svn:r10994
2007-07-30 17:51:14 +00:00
Nick Mathewson
9260a824ef
Yet another buffer RAM patch: tNever ever ever keep a buffer memory chunk around for an empty buffer that could go on the freelist. This wants profiling to make sure that performance doesnt suffer.
...
svn:r10993
2007-07-30 17:47:43 +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
Roger Dingledine
1b01ad6d38
writing instructions before you release means you can make sure
...
your instructions don't seg fault
svn:r10984
2007-07-30 08:42:47 +00:00
Nick Mathewson
915c4c3ab8
r14001@catbus: nickm | 2007-07-29 21:31:53 -0400
...
Try to call time(NULL) a little less.
svn:r10980
2007-07-30 01:32:12 +00:00
Nick Mathewson
a3b8b2c4e3
r14000@catbus: nickm | 2007-07-29 21:16:45 -0400
...
Fix bug 472: do not use spaces in pseudo-address for local link cons.
svn:r10979
2007-07-30 01:32:07 +00:00
Roger Dingledine
468d922280
start hunting bugs, first in a non-crashy manner
...
svn:r10978
2007-07-30 01:07:06 +00:00
Nick Mathewson
3dbc825f36
r13996@catbus: nickm | 2007-07-29 19:17:53 -0400
...
Fix whitespace
svn:r10977
2007-07-29 23:18:06 +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
Roger Dingledine
ca7c53d3cc
Be even more aggressive about separating local traffic from relayed
...
traffic when RelayBandwidthRate is set. (Refines proposal 111.)
svn:r10974
2007-07-29 22:13:44 +00:00
Nick Mathewson
616152486f
r13986@catbus: nickm | 2007-07-29 09:15:03 -0400
...
Answer comment from Roger.
svn:r10971
2007-07-29 13:18:52 +00:00
Roger Dingledine
a68e6e23c9
patches on r10968: compare advertised capacity, not bandwidthrate;
...
and make the sorting order deterministic to avoid flapping.
also note that we could take the "is_auth" checks out of the
sorting entirely.
svn:r10970
2007-07-29 05:56:30 +00:00
Nick Mathewson
9031bbd4d8
r13982@catbus: nickm | 2007-07-29 01:31:53 -0400
...
Actually, we missed a rule about what routers to prefer: first prefer authority to non-authority, *then* running, *then* bandwidth.
svn:r10969
2007-07-29 05:32:03 +00:00
Nick Mathewson
1b665b3c7e
r13979@catbus: nickm | 2007-07-29 01:20:20 -0400
...
Implement proposal 109: As an authority, never call more than 3 servers per IP Running and Valid. Prefer Running servers to non-running ones; then prefer high-bandwidth to low-bandwidth. Needs testing.
svn:r10968
2007-07-29 05:20:31 +00:00
Roger Dingledine
eca2a30060
make progress towards retrying our bridges when they're all
...
down and we get a new socks request
svn:r10967
2007-07-29 04:38:21 +00:00
Nick Mathewson
964e4a305d
r13972@catbus: nickm | 2007-07-29 00:01:38 -0400
...
Make our control events for multi-line async replies conform to our old grammar. Change back to the old grammar (which got "corrected" in r10931).
svn:r10964
2007-07-29 04:03:25 +00:00
Nick Mathewson
d2adb68ed6
r13963@catbus: nickm | 2007-07-28 22:53:32 -0400
...
Add support for signature upload
svn:r10962
2007-07-29 02:55:21 +00:00
Roger Dingledine
9895d840f5
When running with dmalloc, dump more stats on hup and exit.
...
svn:r10961
2007-07-29 01:18:00 +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
Nick Mathewson
0d274e1db1
r13952@catbus: nickm | 2007-07-27 19:18:46 -0400
...
Weasel noticed that many buffers spend their time with empty 4k, 8k, and 16k memory chunks. Thus, be more aggressive about putting empty chunks on the freelist, regardless of their high water marks. (Also, run buffer_shrink_freelist on the 8k-chunk freelist.)
svn:r10953
2007-07-27 23:19:02 +00:00
Nick Mathewson
43f64d09ea
r13951@catbus: nickm | 2007-07-27 18:39:28 -0400
...
Make it so we can actually compile with FULL_V1_DIRECTORIES disabled.
svn:r10952
2007-07-27 23:18:58 +00:00
Nick Mathewson
f6229d6432
r13950@catbus: nickm | 2007-07-27 18:15:23 -0400
...
Wrap bandwidth usage info in another ifdef so we can easily drop it on august 1 when it is time to finalize proposal 104.
svn:r10951
2007-07-27 23:18:55 +00:00
Nick Mathewson
0e5d8925d9
r13946@catbus: nickm | 2007-07-27 16:09:31 -0400
...
Fix median_int for platforms where sizeof(int)!=sizeof(time_t)
svn:r10949
2007-07-27 20:09:37 +00:00
Nick Mathewson
a5477c7bb9
r13944@catbus: nickm | 2007-07-27 15:52:35 -0400
...
Fix warnings on platforms where rlim values can be signed.
Add an 8k buffer freelist.
svn:r10948
2007-07-27 19:53:29 +00:00
Nick Mathewson
bc9a7be943
r13939@catbus: nickm | 2007-07-27 14:33:22 -0400
...
When dumping memory usage, list bytes used in buffer memory free-lists.
svn:r10947
2007-07-27 18:33:37 +00:00
Nick Mathewson
65cdda20b3
r13938@catbus: nickm | 2007-07-27 14:26:07 -0400
...
More code to handle incoming consensus signatures
svn:r10946
2007-07-27 18:33:34 +00:00
Nick Mathewson
10f166045b
r13937@catbus: nickm | 2007-07-27 12:43:36 -0400
...
Maintain a detached-signatures document along with pending consensus document. Add a dirvote_free_all() to clean up static vars in dirvote.c
svn:r10945
2007-07-27 18:33:30 +00:00
Nick Mathewson
a65cea38d2
r13936@catbus: nickm | 2007-07-27 12:23:26 -0400
...
Code to implement detached signature documents.
svn:r10944
2007-07-27 18:33:28 +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
b1c873182d
r13926@catbus: nickm | 2007-07-26 17:21:06 -0400
...
Add a bit-array type with reasonably fast inline functions.
svn:r10938
2007-07-26 21:26:53 +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
189bc7cf9f
r13920@catbus: nickm | 2007-07-26 16:25:25 -0400
...
whitespace fixes
svn:r10935
2007-07-26 20:26:53 +00:00
Nick Mathewson
7f3e2378b6
r13908@catbus: nickm | 2007-07-25 18:55:47 -0400
...
Patch from Robert Hogan: set conn->dns_server_port correctly so that we can close dns server ports when they change, thus avoiding crashes and dangling references and other sources of unhappiness.
svn:r10933
2007-07-25 22:57:07 +00:00
Nick Mathewson
025a81fc18
r13907@catbus: nickm | 2007-07-25 18:51:25 -0400
...
Patch from tup: translate LFs to CRLFs in NS replies and
ensures the data section is properly terminated with "\r\n.\r\n
svn:r10932
2007-07-25 22:57:02 +00:00
Nick Mathewson
a8821e2d82
r13905@catbus: nickm | 2007-07-25 18:48:44 -0400
...
ADDRMAP events should never have specified local time. Extend them to have the proper gmt time, and make GETINFO address-mappings always do the right thing (since it is new in this version).
svn:r10930
2007-07-25 22:56:54 +00:00
Nick Mathewson
47f3a40900
r13904@catbus: nickm | 2007-07-25 18:04:46 -0400
...
Fix whitespaces and compilation in and around dirvote code.
svn:r10929
2007-07-25 22:56:50 +00:00
Nick Mathewson
2305c2c7be
r13903@catbus: nickm | 2007-07-25 18:03:56 -0400
...
Make buffer large enough to hold ip6.arpa addresses. This code was not actually used yet, so no user-visible bug existed. (Based on patch by croup.)
svn:r10928
2007-07-25 22:56:47 +00:00
Nick Mathewson
a66f259354
r13902@catbus: nickm | 2007-07-25 17:43:52 -0400
...
Some dirvote code to handle generating votes and slinging them around. More code is still needed.
svn:r10927
2007-07-25 22:56:44 +00:00
Nick Mathewson
1b7a704c34
r13901@catbus: nickm | 2007-07-25 16:23:51 -0400
...
Make all code to generate v1 directories into conditional code.
svn:r10926
2007-07-25 22:56:40 +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
Nick Mathewson
1b24067395
r13773@kushana: nickm | 2007-07-23 00:16:44 -0400
...
Use tor malloc replacements in eventdns.c for now: there might be goblins there...goblins that only dmalloc can find!
svn:r10912
2007-07-23 04:18:20 +00:00
Nick Mathewson
4d2f45978f
r13875@catbus: nickm | 2007-07-22 18:56:30 -0400
...
Once more with feeling.
svn:r10907
2007-07-22 22:56:33 +00:00
Nick Mathewson
6640fdeeee
r13872@catbus: nickm | 2007-07-22 18:51:02 -0400
...
esc_router_info static field should not be cleared postfork, to avoid races.
svn:r10906
2007-07-22 22:51:07 +00:00
Nick Mathewson
701fce8e5c
r13858@catbus: nickm | 2007-07-22 18:44:02 -0400
...
Fix/note some relatively trivial mem usage issues
svn:r10905
2007-07-22 22:49:49 +00:00
Roger Dingledine
0104882e9b
dump dmalloc stats on sighup
...
svn:r10903
2007-07-22 07:05:43 +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
Roger Dingledine
56d3119581
Directory authorities now call routers Fast if their bandwidth is
...
at least 100KB/s, and consider their bandwidth adequate to be a
Guard if it is at least 250KB/s. This fix complements proposal
107. [Bugfix on 0.1.2.x]
svn:r10897
2007-07-21 23:40:55 +00:00
Roger Dingledine
a916e07ea6
when requesting tor/server/authority, ask for tor/server/authority.z
...
instead. same functionality, saves a bit of bandwidth. and might even
work.
svn:r10896
2007-07-21 22:04:18 +00:00
Nick Mathewson
6223160ab7
r13848@catbus: nickm | 2007-07-19 16:47:16 -0400
...
Use our own version of inet_ntop and inet_pton everywhere, to avoid partitioning attacks.
svn:r10888
2007-07-19 20:47:18 +00:00
Nick Mathewson
3015129a4a
r13846@catbus: nickm | 2007-07-19 16:31:41 -0400
...
Actually, OSX (and some BSDs) accept [f:f:f:f:f:f:f:f::] as a perfectly fine ipv6 address.
svn:r10887
2007-07-19 20:31:43 +00:00
Nick Mathewson
31a73c0767
r13844@catbus: nickm | 2007-07-19 16:04:04 -0400
...
Same as the last patch, only more so.
svn:r10886
2007-07-19 20:04:05 +00:00
Nick Mathewson
00420bd084
r13842@catbus: nickm | 2007-07-19 16:02:54 -0400
...
OSX writes ::3 as ::0.0.0.3; choose a less ambiguous example.
svn:r10885
2007-07-19 20:02:56 +00:00
Nick Mathewson
a1f4644a94
r13840@catbus: nickm | 2007-07-19 16:00:43 -0400
...
Apparently, this problem can occur on the whole BSD family. "Yay."
svn:r10884
2007-07-19 20:00:45 +00:00
Nick Mathewson
4a240552c4
r13834@catbus: nickm | 2007-07-19 15:40:42 -0400
...
Another patch from croup: drop support for address masks that do not correspond to bit prefixes. Nobody has used this for a while, and we have given warnings for a long time.
svn:r10881
2007-07-19 19:40:45 +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
70aef18db1
r13826@catbus: nickm | 2007-07-19 12:21:30 -0400
...
Fix a copy-and-paste error in dirvote.c
svn:r10879
2007-07-19 18:46:06 +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
Nick Mathewson
4a9d4c2c5c
r13820@catbus: nickm | 2007-07-18 16:07:30 -0400
...
Whitespace fix on r10849
svn:r10872
2007-07-18 20:46:10 +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
5c4d86f512
using fascistfirewall and having your bridge on an unreachable
...
port silently didn't mix. now they loudly don't mix.
svn:r10862
2007-07-18 07:13:15 +00:00
Nick Mathewson
670db47e1b
r13801@catbus: nickm | 2007-07-17 13:49:12 -0400
...
More tweaks to dir-spec.txt; not complete, but closing in.
svn:r10856
2007-07-17 17:49:16 +00:00
Roger Dingledine
a1ab2c8087
free bridge list on exit; try harder to free buffer freelists on exit.
...
svn:r10854
2007-07-17 11:33:38 +00:00
Roger Dingledine
b7e4683ff9
bugfix on r10086:
...
We had accidentally labelled 0.1.2.x directory servers as not
suitable for begin_dir requests, and had labelled no directory
servers as suitable for uploading extra-info documents. [Bugfix
on 0.2.0.1-alpha]
svn:r10853
2007-07-17 09:37:00 +00:00
Roger Dingledine
fcbb817db5
free another string, and the buffer freelists, on exit.
...
svn:r10851
2007-07-17 09:26:45 +00:00
Roger Dingledine
ccfda2e3a3
a few fixes for bug 463. needs a changelog. might need more fixes.
...
svn:r10849
2007-07-17 02:53:17 +00:00
Nick Mathewson
ad45ddfb07
r13788@catbus: nickm | 2007-07-16 14:26:25 -0400
...
Patch from croup: rewrite the logic of get_next_token() to do the right thing with input that ends at weird places, or aligns with block boundaries after mmap. should fix bug 455. Needs fuzzing.
svn:r10847
2007-07-16 18:26:31 +00:00
Nick Mathewson
6e9f1f76f2
r13784@catbus: nickm | 2007-07-16 13:27:32 -0400
...
Apply patch from tup: remove extra space at the end of some circuit-status events, and stop translating CRLF to CRCRLF in control replies.
svn:r10845
2007-07-16 17:27:35 +00:00
Nick Mathewson
26a25edaec
r13777@catbus: nickm | 2007-07-16 12:58:08 -0400
...
Patch from tup: new address-mappings/ GETINFO that includes expiry times.
svn:r10844
2007-07-16 16:58:11 +00:00
Nick Mathewson
483c1e9017
r13774@catbus: nickm | 2007-07-16 12:23:28 -0400
...
Tweaks on constrained socket buffers patch from coderman: Add a changelog; rename some variables; fix some long lines and whitespace; make ConstrainedSockSize a memunit; pass setsockopt a void.
svn:r10843
2007-07-16 16:23:36 +00:00
Nick Mathewson
f4a6673758
r13773@catbus: nickm | 2007-07-16 11:58:25 -0400
...
Initial "constrained socket buffers" patch from coderman. needs tweaking.
svn:r10842
2007-07-16 16:23:34 +00:00
Roger Dingledine
6d2cb32d10
free some more memory on exit
...
svn:r10837
2007-07-16 04:33:47 +00:00
Roger Dingledine
4b719cbae0
stop reading uninitialized/outofbounds memory. possible backport,
...
quite related to bug 455.
svn:r10835
2007-07-16 03:39:21 +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
Roger Dingledine
2c2f7ee6a4
fix a memory leak from r10504 (i think)
...
svn:r10829
2007-07-15 08:11:56 +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
Roger Dingledine
9bf23e0598
backport candidate:
...
When sending destroy cells from a circuit's origin, don't include
the reason for tearing down the circuit. The spec says we didn't,
and now we actually don't. Reported by lodger. [Bugfix on 0.1.2.x]
svn:r10790
2007-07-11 03:37:45 +00:00
Roger Dingledine
83e8d8d9b9
clean up a comment
...
svn:r10789
2007-07-11 03:28:12 +00:00
Nick Mathewson
39dc589d32
r13691@catbus: nickm | 2007-07-10 18:44:30 -0400
...
Fix an assert error in 455 patch.
svn:r10788
2007-07-10 22:44:32 +00:00
Nick Mathewson
fa1376014b
r13689@catbus: nickm | 2007-07-10 17:46:30 -0400
...
tweaks to last patch. from croup.
svn:r10787
2007-07-10 21:46:33 +00:00
Nick Mathewson
7e20fdbefb
r13687@catbus: nickm | 2007-07-10 16:08:14 -0400
...
Possible partial fix for bug 455: use eos logic everywhere.
svn:r10786
2007-07-10 20:08:18 +00:00
Nick Mathewson
d6ba1c3d96
r13676@catbus: nickm | 2007-07-10 13:41:24 -0400
...
Man. I thought I removed that code.
svn:r10785
2007-07-10 17:41:26 +00:00
Nick Mathewson
a8465adaa2
r13667@catbus: nickm | 2007-07-10 13:12:52 -0400
...
Patch from tup: add GETINFO status/enough-dir-info
svn:r10782
2007-07-10 17:14:55 +00:00
Nick Mathewson
74711479eb
r13666@catbus: nickm | 2007-07-10 13:10:00 -0400
...
Get the RESOLVE controller code working.
svn:r10781
2007-07-10 17:14:51 +00:00
Nick Mathewson
7705314777
r13637@catbus: nickm | 2007-07-06 14:24:27 -0400
...
fix copy-paste error in config message src/or/config.c . Apply
initial (but pared-down) version of launch-resolve-via-controller
patch from Robert Hogan.
svn:r10780
2007-07-10 17:13:24 +00:00
Nick Mathewson
10e5ed1a84
r13602@Kushana: nickm | 2007-07-07 23:44:24 -0400
...
Backport candidate: fix a possible buffer overrun when using natd support on old BSDs. Based on a patch from "Mr. Croup".
svn:r10760
2007-07-08 03:45:47 +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
Nick Mathewson
92b6e09082
r13633@catbus: nickm | 2007-07-06 11:08:19 -0400
...
Call tor_init_threads() from tor_init().
svn:r10751
2007-07-06 18:20:52 +00:00
Nick Mathewson
04c9ae8164
r13453@kushana: nickm | 2007-06-20 10:01:37 -0400
...
Fix a type error in the last checkin.
svn:r10738
2007-07-05 14:50:13 +00:00
Nick Mathewson
b5c8a6183a
r13452@kushana: nickm | 2007-06-20 09:52:55 -0400
...
Patch from Robert Hogan: Generate STREAM NEW events for dnsport requests and tunneled directory connections. Log when we are testing for hijacking.
svn:r10737
2007-07-05 14:50:05 +00:00
Roger Dingledine
99bfb1bebe
If there's a never-before-connected-to guard node in our list,
...
never choose any guards past it. This way we don't expand our
guard list unless we need to. [Bugfix in 0.1.2.x]
I'm not sure if this will solve all our problems, but it is at least
something.
svn:r10730
2007-07-02 22:15:26 +00:00
Roger Dingledine
5c1daed3ad
the non-controversial changes i found in my sandbox
...
svn:r10729
2007-07-02 22:07:53 +00:00
Nick Mathewson
32b165ab61
r13604@catbus: nickm | 2007-07-02 16:58:40 -0400
...
Some temporary output to try to figure out where bsd thread unit tests are going wrong
svn:r10728
2007-07-02 21:08:03 +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
Nick Mathewson
8bebff3deb
r13568@catbus: nickm | 2007-06-30 15:18:18 -0400
...
allow test_threads() to time out
svn:r10711
2007-06-30 19:18:28 +00:00
Nick Mathewson
25a11bf8aa
r13555@catbus: nickm | 2007-06-30 14:05:36 -0400
...
Split "Util" tests into subgroups so I can see why freebsd trunk is failing.
svn:r10710
2007-06-30 18:06:00 +00:00
Nick Mathewson
a8a880e418
r13480@catbus: nickm | 2007-06-17 14:39:42 -0400
...
Oops; forgot to save a file in the last batch.
svn:r10646
2007-06-17 18:41:03 +00:00
Nick Mathewson
5adfa09fce
r13477@catbus: nickm | 2007-06-17 14:22:03 -0400
...
Sun CC likes to give warnings for the do { } while(0) construction for making statement-like macros. Define STMT_BEGIN/STMT_END macros that do the right thing, and use them everywhere.
svn:r10645
2007-06-17 18:22:39 +00:00
Nick Mathewson
93f32db438
r13476@catbus: nickm | 2007-06-17 14:04:41 -0400
...
Build with fewer compiler warnings on Sun. (This and previous Sun patches are thanks to the tremendously handy services of unix-center.net.)
svn:r10644
2007-06-17 18:22:35 +00:00
Nick Mathewson
99792df645
r13473@catbus: nickm | 2007-06-17 13:42:36 -0400
...
Fix solaris eventdns.c behavior. This time, I think I got it. We were redefining _FILE_OFFSET_BITS, and thereby calling fstat64() on a struct stat, or something like that.
svn:r10643
2007-06-17 17:43:25 +00:00
Nick Mathewson
721899a447
r13471@catbus: nickm | 2007-06-17 11:59:25 -0400
...
Report address and por correctly on requests to dnsport. (Patch from Robert Hogan.)
svn:r10641
2007-06-17 15:59:27 +00:00
Nick Mathewson
d828915136
r13463@catbus: nickm | 2007-06-17 11:10:17 -0400
...
Add a SOURCE_ADDR field to STREAM NEW events so that controllers can match requests to applications. (Patch from Robert Hogan.)
svn:r10639
2007-06-17 15:10:51 +00:00
Nick Mathewson
3df7fc5e5a
r13438@catbus: nickm | 2007-06-15 15:01:42 -0400
...
document some functions
svn:r10637
2007-06-17 15:10:43 +00:00
Nick Mathewson
9e944d07f8
r13418@catbus: nickm | 2007-06-14 13:29:21 -0400
...
Adjust networkstatus_compute_consensus to take an argument saying how many voters there _should_ be.
svn:r10634
2007-06-17 15:10:23 +00:00
Roger Dingledine
237cdfdf48
if we already have a bridge in our state file, it won't be
...
in the networkstatuses, so we'll mark it unusable when we
load it, and then when we get a new routerinfo for it, we'll
still think it's unusable. fix that.
svn:r10612
2007-06-15 18:32:27 +00:00
Roger Dingledine
07ff5c6785
bugfix on r10609: don't fail asserts when closing circuits
...
that were connected to an unkeyed connection.
svn:r10611
2007-06-15 16:21:40 +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
6a2f045163
extra points for making the function name reflect what it does
...
svn:r10608
2007-06-15 04:23:36 +00:00
Roger Dingledine
73f7310d9b
Directories no longer return a "304 not modified" when they don't
...
have the networkstatus the client asked for. Also fix a memory
leak when returning 304 not modified. [Bugfixes on 0.2.0.2-alpha]
svn:r10607
2007-06-15 04:20:51 +00:00
Roger Dingledine
9f9ee13dc0
point out a bug in our If-Modified-Since handling in 0.2.0.2-alpha.
...
svn:r10605
2007-06-15 03:14:02 +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
Nick Mathewson
649a802322
r13409@catbus: nickm | 2007-06-13 18:01:56 -0400
...
Test the remainder of the contents of the consensus; fix a bug in geneating addresses on routerstatuses.
svn:r10597
2007-06-13 22:39:08 +00:00
Nick Mathewson
c2ea3e9aea
r13406@catbus: nickm | 2007-06-13 17:05:30 -0400
...
Oops; linked connections get read/write events too.
svn:r10596
2007-06-13 21:05:32 +00:00
Nick Mathewson
6462683669
r13403@catbus: nickm | 2007-06-13 16:15:44 -0400
...
Test all of consensus contents, except for routerstatus_list contents. And signatures.
svn:r10593
2007-06-13 20:17:27 +00:00
Nick Mathewson
4b162fd1f4
r13401@catbus: nickm | 2007-06-13 15:50:16 -0400
...
Add dnsport connection to the global connection list. (Bug found by mwenge.)
svn:r10592
2007-06-13 19:50:18 +00:00
Nick Mathewson
eab7c6890d
r13399@catbus: nickm | 2007-06-13 15:17:44 -0400
...
Hm. Tor should never need private authority identity keys; thus, I should not actually load the authority identity keys for testing.
svn:r10591
2007-06-13 19:17:46 +00:00
Nick Mathewson
3fa9a90243
r13396@catbus: nickm | 2007-06-13 15:06:18 -0400
...
Set vote_digest field prproperly in networkstatus_vote_t, so that it gets conveyed to the consensus correctly.
svn:r10590
2007-06-13 19:06:26 +00:00
Nick Mathewson
c3626cdba7
r13395@catbus: nickm | 2007-06-13 15:01:23 -0400
...
Unit tests and debugging for generating and parsing consensus networkstatus documents. Still need to test actual contents.
svn:r10589
2007-06-13 19:06:23 +00:00
Nick Mathewson
05cf945a1c
r13393@catbus: nickm | 2007-06-13 14:29:14 -0400
...
More vote unit tests: check that we are parsing routerstatuses correctly.
svn:r10588
2007-06-13 18:29:16 +00:00
Nick Mathewson
0cf38ddef6
r13387@catbus: nickm | 2007-06-13 14:15:49 -0400
...
Unit tests and debugging for vote generation and parsing code.
svn:r10587
2007-06-13 18:16:05 +00:00
Nick Mathewson
09a370e45f
r13386@catbus: nickm | 2007-06-13 14:15:20 -0400
...
New helper file for test.c: contains 3 generated certs, signing keys, and id_keys
svn:r10586
2007-06-13 18:16:01 +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
Peter Palfrader
f621513cad
Remove an #undef, so you can -Ddefine stuff on the command line
...
svn:r10564
2007-06-11 22:32:30 +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
Nick Mathewson
932f2c79eb
r13338@catbus: nickm | 2007-06-10 15:13:32 -0400
...
Fix bug in 10533: put "opt v" line at the end of a routerstatus section; overwriting is bad.
svn:r10549
2007-06-10 19:13:40 +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
Roger Dingledine
1ae7708ff8
discard the "bridge list" stubs that i hope i never need.
...
svn:r10547
2007-06-10 00:30:14 +00:00
Roger Dingledine
a97c3b8c2d
Be clearer on the various roles for auth dir types.
...
Bridge authorities no longer write bridge descriptors to their
cached-routers file -- this gets complex because of extrainfo documents.
svn:r10545
2007-06-09 07:05:19 +00:00
Roger Dingledine
8dfde75ef6
don't complain when approved-routers isn't there and we
...
don't need it.
svn:r10544
2007-06-09 05:28:11 +00:00
Roger Dingledine
eebeda2c71
scrub out some more references to the misnamed 'bridge' concept
...
svn:r10543
2007-06-09 05:17:33 +00:00
Nick Mathewson
19389a3674
r13328@catbus: nickm | 2007-06-08 17:14:55 -0400
...
Arg. Irix apparently #defines sa_family to something. Thus, naming fields or variables "sa_family" will not work.
svn:r10541
2007-06-08 21:14:58 +00:00
Nick Mathewson
1d6db7ec3d
r13325@catbus: nickm | 2007-06-08 15:02:37 -0400
...
Parse networkstatuses (v2, vote, and consensus) after generating them, and fail fast if there is a parse error.
svn:r10540
2007-06-08 19:02:39 +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
678110570a
r13315@catbus: nickm | 2007-06-08 14:33:24 -0400
...
Make versions get added to networkstatuses correctly again.
svn:r10535
2007-06-08 18:41:14 +00:00
Nick Mathewson
171969656c
r13314@catbus: nickm | 2007-06-08 14:30:31 -0400
...
Enfore that known_flags in networkstatus votes must be unique.
svn:r10534
2007-06-08 18:41:12 +00:00
Nick Mathewson
7a6f3cd223
r13313@catbus: nickm | 2007-06-08 14:23:11 -0400
...
Refactor v3 vote generation code into "build a networkstatus_vote_t" and "format a networkstatus_vote_t". This should make testing possible.
svn:r10533
2007-06-08 18:41:09 +00:00
Nick Mathewson
1b200de0ef
r13304@catbus: nickm | 2007-06-07 13:25:37 -0400
...
Deprecate RedirectExits.
svn:r10526
2007-06-07 17:26:19 +00:00
Nick Mathewson
529cbe34b0
r13292@catbus: nickm | 2007-06-06 17:34:15 -0400
...
Check for non-standard SVK directories properly. Inspired by debian bug #420899 and related discussion on SVK list.
svn:r10522
2007-06-07 16:14:55 +00:00
Roger Dingledine
8db1b61a26
avoid leaking memory in a path never followed. pointed out
...
by robert watson.
svn:r10521
2007-06-07 15:07:33 +00:00
Nick Mathewson
6673d445f5
r13283@catbus: nickm | 2007-06-06 01:43:44 -0400
...
Fix up a couple of loops flagged by -Wunsafe-loop-optimizations so that they are more readable (and more amenable to compilation)
svn:r10513
2007-06-06 13:02:22 +00:00
Nick Mathewson
1a29d68081
r13276@catbus: nickm | 2007-06-05 19:45:33 -0400
...
Remove another long-dead #if 0 I missed before
svn:r10511
2007-06-06 04:51:33 +00:00
Nick Mathewson
d3b140b0de
r13275@catbus: nickm | 2007-06-05 19:11:05 -0400
...
Apply my sekrit "unused macro detector" script to hunt down some macros we didnt use.
svn:r10510
2007-06-06 04:51:30 +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
0a27f02b9c
r13267@catbus: nickm | 2007-06-05 16:54:20 -0400
...
Man page and small tweaks for last patch.
svn:r10505
2007-06-05 20:54:53 +00:00
Nick Mathewson
210beff55a
r13266@catbus: nickm | 2007-06-05 16:38:08 -0400
...
Patch from peter palfrader: control interface via unix domain socket
svn:r10504
2007-06-05 20:54:49 +00:00
Nick Mathewson
f0345d46f6
r13256@catbus: nickm | 2007-06-05 10:57:41 -0400
...
Mark fields that need to be ipv6-ified.
svn:r10503
2007-06-05 20:54:23 +00:00
Peter Palfrader
b6c6dd7e55
Change an assert into a tor_assert
...
svn:r10495
2007-06-05 01:09:09 +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
2e0713222b
r13252@catbus: nickm | 2007-06-04 18:57:21 -0400
...
Code to check signatures on consensus directories.
svn:r10492
2007-06-04 22:57:23 +00:00
Nick Mathewson
8b0e6a4466
r13250@catbus: nickm | 2007-06-04 18:28:55 -0400
...
Adapt code to parse v3 networkstatus votes so it can also parse a consensus. Make networkstatus_vote_t the catch-all type for votes and conensuses. Correct/clarify the second argument to directory-signature.
svn:r10491
2007-06-04 22:29:00 +00:00
Nick Mathewson
8d1224eb51
r13248@catbus: nickm | 2007-06-04 15:53:23 -0400
...
More code to generate a consensus from a list of votes. Now, we handle Named, and we actually generate and sign the signed consensus. Yippee. Still needs testing. Still not actually called.
svn:r10490
2007-06-04 19:54:02 +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
Peter Palfrader
32d12dcfbc
Fix retry_all_listeners() and retry_listeners() description to match code. We are smarter than comparing lengths of want- and have-listeners.
...
svn:r10487
2007-06-04 16:58:57 +00:00
Peter Palfrader
502879e0b4
Remove force flag from retry_all_listeners() and retry_listeners(). It always was 0.
...
svn:r10486
2007-06-04 16:54:42 +00:00
Roger Dingledine
80e675deb1
Stop tearing down the whole circuit when the user asks for a
...
connection to a port that the hidden service didn't configure.
Resolves bug 444.
svn:r10478
2007-06-04 03:13:13 +00:00
Nick Mathewson
6d447e04a2
r13189@catbus: nickm | 2007-06-03 19:08:01 -0400
...
Oops. Only bind ports and start libevent if we are actually running Tor.
svn:r10474
2007-06-03 23:08:07 +00:00
Nick Mathewson
d3ee41619c
r13186@catbus: nickm | 2007-06-03 19:00:20 -0400
...
Bind ports before setuid/setgid.
svn:r10473
2007-06-03 23:00:26 +00:00
Nick Mathewson
147e439c94
r13174@catbus: nickm | 2007-06-03 17:39:20 -0400
...
Patch from robert hogan: avoid crash when DNS port is set more than once.
svn:r10471
2007-06-03 21:39:24 +00:00
Nick Mathewson
f4ce7f9c9b
r13166@catbus: nickm | 2007-06-02 23:02:40 -0400
...
First cut at code to parse and validate v3 networkstatus votes.
svn:r10461
2007-06-03 03:05:10 +00:00
Nick Mathewson
e0d828299a
r13165@catbus: nickm | 2007-06-02 22:55:22 -0400
...
Remove an obsoleted function
svn:r10460
2007-06-03 03:05:07 +00:00
Roger Dingledine
1407cf9de3
fix up a comment
...
svn:r10453
2007-06-02 20:22:31 +00:00
Nick Mathewson
c2dc8f4623
r13158@catbus: nickm | 2007-06-02 11:40:05 -0400
...
On systems with svk, do not clobber micro-revision.i when building from a tarball.
svn:r10452
2007-06-02 15:40:10 +00:00
Nick Mathewson
aee7f01624
r13154@catbus: nickm | 2007-06-02 11:26:44 -0400
...
Server-side support for If-Modified-Since in HTTP requsts for v1 stuff, and for network-status documents.
svn:r10451
2007-06-02 15:26:57 +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
7c3f418e39
r13139@catbus: nickm | 2007-06-01 14:02:40 -0400
...
Add some ;trues, and tabify.
svn:r10441
2007-06-01 18:02:41 +00:00
Nick Mathewson
6df38f52db
r13137@catbus: nickm | 2007-06-01 13:49:34 -0400
...
Ah. Of course. You spell "is there an svn" as 'test -x "`which svn 2>&1`"'. Perfectly reasonable. Don't know why I didn't think of it in the first place.
svn:r10440
2007-06-01 17:49:37 +00:00
Nick Mathewson
0af91800f9
r13131@catbus: nickm | 2007-06-01 06:20:29 -0400
...
Test for ~/.svk/local, not ~/.svk. Eschew use of test -a and test -o. Bulletproof more against odd shells.
svn:r10439
2007-06-01 10:20:37 +00:00
Nick Mathewson
6bb65fa371
r13121@catbus: nickm | 2007-05-31 20:06:40 -0400
...
Oops. Different inet_ntop implementations seem to differ on whether, in an IPv6 address with a single "0" word, that word should be written as 0, or omitted. Fix the unit tests to account for that.
svn:r10432
2007-06-01 00:06:45 +00:00
Roger Dingledine
b1ee20f0e8
trivial changes from my sandbox
...
svn:r10429
2007-05-31 23:57:46 +00:00
Nick Mathewson
3b4fa59b60
r13117@catbus: nickm | 2007-05-31 19:40:32 -0400
...
Patch from Tup: treat RESOLVED_TYPE_ERROR_TRANSIENT as a SERVERFAILED, and RESOLVED_TYPE_ERROR as NOTEXIST. Generate transient/nontransient errors more sensibly. Set flags better on DNS replies.
svn:r10427
2007-05-31 23:40:35 +00:00
Nick Mathewson
534c55f531
r13111@catbus: nickm | 2007-05-31 15:03:41 -0400
...
Cleanup whitespace.
svn:r10425
2007-05-31 19:03:49 +00:00
Nick Mathewson
884cb0c7a1
r13109@catbus: nickm | 2007-05-31 14:59:30 -0400
...
More code for voting and vote parsing (checkpointing)
svn:r10423
2007-05-31 19:03:44 +00:00
Nick Mathewson
5d4b426a33
r13103@catbus: nickm | 2007-05-31 14:40:18 -0400
...
Fix patch r10411; fix from robert hogan.
svn:r10422
2007-05-31 18:48:31 +00:00
Nick Mathewson
77502ac82d
r13102@catbus: nickm | 2007-05-31 13:56:25 -0400
...
Make "authdir_newdesc rejected" work again.
svn:r10421
2007-05-31 18:48:28 +00:00
Nick Mathewson
4061b2cbd1
r13101@catbus: nickm | 2007-05-31 12:57:42 -0400
...
Unit tests [and debugging] for tor_inet_ntop() and tor_inet_pton()
svn:r10420
2007-05-31 18:48:25 +00:00
Nick Mathewson
1cb1ebbfe0
r13090@catbus: nickm | 2007-05-30 03:17:57 -0400
...
If the user makes a torrc that exceeds the bandwidth cap by one byte, let them have it.
svn:r10411
2007-05-30 07:18:00 +00:00
Nick Mathewson
8b1e9398a8
r13079@catbus: nickm | 2007-05-29 17:05:38 -0400
...
Oops. Authorities should recommend nodes as exits.
svn:r10403
2007-05-29 21:05:49 +00:00
Nick Mathewson
4cd93bd9ec
r13071@catbus: nickm | 2007-05-29 15:54:46 -0400
...
Aaargh. Revert accidentally-committed debugging code in last patch.
svn:r10400
2007-05-29 19:54:54 +00:00
Nick Mathewson
1359871c14
r13070@catbus: nickm | 2007-05-29 15:53:21 -0400
...
Fix handling of resolves with very long or otherwise malformed addresses, and comment dns_resolve better, and stop making what should be a BUG warning into an assert(0). This fixes bug 427, which was introduced around 9900/9931/9932. Not a backport candidate: 0.1.2.x never had this bug.
svn:r10399
2007-05-29 19:54:51 +00:00
Nick Mathewson
3f9afa0625
r13068@catbus: nickm | 2007-05-29 14:58:13 -0400
...
Add some code to mitigate bug 393: Choose at random from multiple hidden service ports with the same virtport. This allows limited ad-hoc round-robining.
svn:r10398
2007-05-29 18:58:16 +00:00
Nick Mathewson
c5b3a8db84
r13057@catbus: nickm | 2007-05-29 14:39:27 -0400
...
fix for bug 439: make _sure_ *msg is set when we leave dirserv_add_multiple_descriptors().
svn:r10396
2007-05-29 18:39:56 +00:00
Nick Mathewson
9d1af71b70
r13053@catbus: nickm | 2007-05-29 13:35:33 -0400
...
Move connection_should_read_from_linked_conn into main.c, which is the only file that uses it.
svn:r10394
2007-05-29 18:20:56 +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
69c712f189
r13048@catbus: nickm | 2007-05-29 11:08:53 -0400
...
Oops; better version of previous patch that does not get caught in an infinite loop.
svn:r10391
2007-05-29 15:08:55 +00:00
Nick Mathewson
fd3aa5c85d
r13046@catbus: nickm | 2007-05-29 11:07:12 -0400
...
Stop adding bogus entries to lists in router_parse_list_from_string(). I wonder which bugs _that_ caused.
svn:r10390
2007-05-29 15:07:16 +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
Nick Mathewson
d509efb9b7
r13019@catbus: nickm | 2007-05-27 12:32:55 -0400
...
Merge an evdns fix from libevent r357: "evdns_shutdown fix from adam langley.
svn:r10387
2007-05-29 14:41:16 +00:00
Peter Palfrader
3425f2c11f
Segfault less. Somebody needs to look over why exactly this helps. re #436
...
svn:r10376
2007-05-28 21:34:42 +00:00
Roger Dingledine
c1101fceeb
we were leaking a few megabytes a minute checking signatures
...
svn:r10359
2007-05-27 04:38:50 +00:00
Roger Dingledine
e13bf01a9f
fix a seg fault when my auth dirserver accepted a posted descriptor
...
(dirserv_add_multiple_descriptors doesn't set msg if there's no
failure.)
svn:r10358
2007-05-27 03:41:09 +00:00
Roger Dingledine
c8fd65a936
If Tor is invoked from something that isn't a shell (e.g. Vidalia),
...
now we expand "-f ~/.tor/torrc" correctly. Suggested by Matt Edman.
svn:r10351
2007-05-26 08:04:15 +00:00
Nick Mathewson
b0be93c8b0
r12988@catbus: nickm | 2007-05-25 20:15:56 -0400
...
socklen_t is a silly type anyway. Just use int as the argument for evdns_server_request_get_requesting_addr.
svn:r10347
2007-05-26 00:15:58 +00:00
Roger Dingledine
0f71ade42f
fix compile on bsd
...
svn:r10339
2007-05-25 21:56:47 +00:00
Roger Dingledine
0c047b87f5
polish r9933-r9994
...
svn:r10335
2007-05-25 19:41:31 +00:00
Roger Dingledine
a19d131ed7
i suspect we would trigger asserts if we answer a cached
...
resolve request. this should help that.
svn:r10334
2007-05-25 19:30:07 +00:00
Roger Dingledine
32f5e19168
remove an obsolete notion that we judge runningness based on
...
whether we have a connection open to the server right now.
svn:r10333
2007-05-25 19:22:26 +00:00
Nick Mathewson
368eb6a97a
r12964@catbus: nickm | 2007-05-25 14:49:23 -0400
...
hack to make reverse lookups work with dnsport. note that it is a hack. note some trouble spots.
svn:r10332
2007-05-25 18:49:26 +00:00
Roger Dingledine
ce59d5a632
also change purpose_is_private to purpose_needs_anonymity
...
svn:r10331
2007-05-25 18:40:09 +00:00
Roger Dingledine
6e216ed7ef
karsten got confused by private_connection, so try calling
...
it anonymized_connection instead.
svn:r10330
2007-05-25 18:25:33 +00:00
Nick Mathewson
ba4969a59e
r12959@catbus: nickm | 2007-05-25 14:22:33 -0400
...
The second time that we resolve a.com and get 1.2.3.4, return an A record mapping (a->1.2.3.4), not mapping (1.2.3.4->1.2.3.4).
svn:r10329
2007-05-25 18:22:43 +00:00
Nick Mathewson
527fbc304e
r12958@catbus: nickm | 2007-05-25 14:19:29 -0400
...
Fix more dnsport bugs: set state correctly, and actually cache the answers.
svn:r10328
2007-05-25 18:22:42 +00:00
Nick Mathewson
5f226f130c
r12957@catbus: nickm | 2007-05-25 14:11:02 -0400
...
Fix a dnsserv bug: mark the connectino as "finished handshaking" once dnsserv_resolved is called.
svn:r10327
2007-05-25 18:22:39 +00:00
Nick Mathewson
39fe91b9a2
r12946@catbus: nickm | 2007-05-25 10:46:50 -0400
...
Add an AutomapHostsOnResolve option. It seems to work.
svn:r10324
2007-05-25 14:48:16 +00:00
Roger Dingledine
7127c30f46
irix64's cc doesn't think hibernate_state_t is necessarily an int.
...
good point.
svn:r10320
2007-05-24 23:51:08 +00:00
Roger Dingledine
42d7b0877d
forward-port r10318
...
svn:r10319
2007-05-24 23:39:04 +00:00
Nick Mathewson
703bf19620
r12942@catbus: nickm | 2007-05-24 16:31:22 -0400
...
Well, that was easier than I thought it would be. Tor is now a DNS proxy as well as a socks proxy. Probably some bugs remain, but since it A) has managed to resolve one address for me successfully, and B) will not affect anybody who leaves DNSPort unset, it feel like a good time to commit.
svn:r10317
2007-05-24 20:31:30 +00:00
Nick Mathewson
17830bc03b
r12941@catbus: nickm | 2007-05-24 16:25:00 -0400
...
Fix some eventdns dns server bugs, and add a new eventdns function to get the address of whoever requested this lookup.
svn:r10316
2007-05-24 20:31:27 +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
56aefe8d23
r12935@catbus: nickm | 2007-05-24 14:12:04 -0400
...
dir-signing-key should never take arguments.
svn:r10314
2007-05-24 18:12:44 +00:00
Nick Mathewson
9aaf3d182f
r12934@catbus: nickm | 2007-05-24 14:11:18 -0400
...
When freeing slack buffers, free the buffers at the end of the freelist first.
svn:r10313
2007-05-24 18:12:41 +00:00
Nick Mathewson
687461d36c
r12920@catbus: nickm | 2007-05-24 13:12:52 -0400
...
and remove an XXX012.
svn:r10308
2007-05-24 17:13:08 +00:00
Nick Mathewson
212a3c3478
r12919@catbus: nickm | 2007-05-24 13:04:56 -0400
...
backport candidate: Warn when using a version of libevent before 1.3b to run a server on osx or bsd: these versions of libevent interact badly with userspace threads.
svn:r10307
2007-05-24 17:13:05 +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
3980ebd6a1
r12917@catbus: nickm | 2007-05-24 12:48:47 -0400
...
Put the hash-as-signed, not the raw hash, in the signed_descriptor_digest field of our own descriptor. Backport candidate; probably harmless though.
svn:r10305
2007-05-24 17:13:00 +00:00
Nick Mathewson
d3d86b17a7
r12916@catbus: nickm | 2007-05-24 12:43:45 -0400
...
Add math functions to round values to the nearest power of 2. Make mempools more careful about making sure that the size of their chunks is a little less than a power of 2, not a little more.
svn:r10304
2007-05-24 17:12:57 +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
ca9e13f2a0
r12906@catbus: nickm | 2007-05-22 20:43:13 -0400
...
s/32/64/; s/breaks/works/;
svn:r10297
2007-05-23 00:43:20 +00:00
Roger Dingledine
e583827d60
new ip addresses for moria1 and moria2; new ports for moria2
...
svn:r10296
2007-05-22 23:51:39 +00:00
Nick Mathewson
38300735cd
r12902@catbus: nickm | 2007-05-22 14:52:29 -0400
...
First draft of code to generate votes. needs testing. does not yet upload or serve votes. Shares most of its code with the old generate_v2_networkstatus.
svn:r10295
2007-05-22 18:52:32 +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
e935d73b34
r12852@catbus: nickm | 2007-05-22 11:00:27 -0400
...
Use svn revisions consistently throughout all log messages.
svn:r10291
2007-05-22 15:48:46 +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
590a98ff37
clean up r10240 so we avoid the exit node itself too
...
svn:r10242
2007-05-22 01:20:23 +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
6ede110c4d
When choosing an entry guard for our circuit, avoid using guards
...
that are in the same family as the chosen exit -- not just guards
that are exactly the chosen exit. (Reported by lodger.)
svn:r10240
2007-05-22 01:01:24 +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
Nick Mathewson
de5194eeaa
r13025@Kushana: nickm | 2007-05-21 17:40:56 -0400
...
Bugfix and possible backport candidate: use the same logic as in read_all when reading resolv.conf. Maybe this fixes bug 433.
svn:r10237
2007-05-21 21:48:02 +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
5f58bee0b0
r12812@catbus: nickm | 2007-05-19 16:17:36 -0400
...
Fix compilation with -O0; add unit tests for swap and shuffle.
svn:r10223
2007-05-19 20:17:37 +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
07199e3d09
r12804@catbus: nickm | 2007-05-19 14:21:18 -0400
...
Disable a blatantly incorrect control event with potential for memory corruption.
svn:r10219
2007-05-19 18:31:02 +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
58d27cfc29
r12800@catbus: nickm | 2007-05-18 20:45:15 -0400
...
Possible fix for bug 417 and bug 404: do not insert our routerinfo directly; instead, re-parse it first.
svn:r10217
2007-05-19 00:45:17 +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
adf95e7f00
r12794@catbus: nickm | 2007-05-18 20:24:26 -0400
...
Make caches-extra-info lines parseable.
svn:r10215
2007-05-19 00:24:29 +00:00
Roger Dingledine
84c3a19170
found this in my sandbox
...
svn:r10214
2007-05-19 00:14:34 +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
2988d797eb
r12770@catbus: nickm | 2007-05-16 17:49:26 -0400
...
Move around field order a little, in order to compact some structures. (Thanks to -Wpadded)
svn:r10200
2007-05-16 22:15:57 +00:00
Nick Mathewson
807adfc879
r12769@catbus: nickm | 2007-05-16 17:32:01 -0400
...
Fix warnings from -Wunsafe-loop-optimizations, which incidentally turned up a logic bug in connection_or_flush_from_first_active_circuit that would overcount the number of cells flushed.
svn:r10199
2007-05-16 22:15:48 +00:00
Nick Mathewson
b837191fd0
r12768@catbus: nickm | 2007-05-16 17:25:33 -0400
...
Fix GCC warnings related to local parameters/variables getting shadowed.
svn:r10198
2007-05-16 22:15:14 +00:00
Nick Mathewson
e043b86f47
r12764@catbus: nickm | 2007-05-15 17:17:39 -0400
...
Enable (and cope with) more GCC 4.2 warnings.
svn:r10196
2007-05-15 21:17:48 +00:00
Nick Mathewson
bfdc366037
r12763@catbus: nickm | 2007-05-15 05:29:33 -0400
...
Make --enable-gcc-warnings happy on the upcoming gcc 4.2
svn:r10195
2007-05-15 21:17:42 +00:00
Nick Mathewson
ca32b4d5b5
r12761@catbus: nickm | 2007-05-15 03:13:52 -0400
...
Be a lot smarter when parsing lists of routers and extrainfos.
svn:r10193
2007-05-15 07:13:56 +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
Nick Mathewson
5f9d4d0587
r12750@catbus: nickm | 2007-05-13 10:08:13 -0400
...
Fix compilation in connection_edge.c
svn:r10186
2007-05-13 20:24:43 +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
Nick Mathewson
e3b2a7b53b
r12935@Kushana: nickm | 2007-05-10 11:25:09 -0400
...
Make buffer unit tests pass again
svn:r10158
2007-05-10 15:25:40 +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
5ffabd4de4
backport candidate:
...
If a directory server runs out of space in the connection table
as it's processing a begin_dir request, it will free the exit stream
but leave it attached to the circuit, leading to unpredictable
behavior. (Reported by seeess, fixes bug 425.)
svn:r10154
2007-05-10 08:53:05 +00:00