Nick Mathewson [Thu, 24 Jul 2008 13:44:04 +0000 (13:44 +0000)]
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.
Nick Mathewson [Thu, 24 Jul 2008 09:22:34 +0000 (09:22 +0000)]
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.
Nick Mathewson [Thu, 24 Jul 2008 09:22:27 +0000 (09:22 +0000)]
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.
Nick Mathewson [Wed, 23 Jul 2008 15:58:30 +0000 (15:58 +0000)]
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.
Nick Mathewson [Wed, 23 Jul 2008 14:07:32 +0000 (14:07 +0000)]
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.
Nick Mathewson [Wed, 23 Jul 2008 14:07:26 +0000 (14:07 +0000)]
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.
Nick Mathewson [Wed, 23 Jul 2008 12:55:55 +0000 (12:55 +0000)]
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.
Proposal 121: Added INTRODUCE1V cell type, improved replay protection for INTRODUCE2 cells, described limitations for auth protocols, improved hidden service protocol without client authorization, added second, more scalable authorization protocol, rewrote existing authorization protocol; changes based on discussion with Nick
Nick Mathewson [Fri, 18 Jul 2008 18:36:32 +0000 (18:36 +0000)]
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).
Nick Mathewson [Thu, 17 Jul 2008 02:35:17 +0000 (02:35 +0000)]
Remove from the spec a reference forward-compatiblity feature that we never implemented (bug 774). Also remove backward compatibility notes for versions older than 0.1.1.15-rc; those are long-unsupported, and do not work with the current network. Still to fix are future-tense statements about 0.1.2.x.
Nick Mathewson [Wed, 16 Jul 2008 13:15:11 +0000 (13:15 +0000)]
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.
Jacob Appelbaum [Sun, 13 Jul 2008 17:13:34 +0000 (17:13 +0000)]
Initial checkin of gettor. This is a program designed to be invoked in a .forward file. It will respond with specific payloads for a given request. It requires that all requests be signed with DKIM. It's not quite finished yet.
Roger Dingledine [Fri, 11 Jul 2008 21:42:09 +0000 (21:42 +0000)]
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.)
Nick Mathewson [Fri, 11 Jul 2008 21:07:43 +0000 (21:07 +0000)]
r16928@tombo: nickm | 2008-07-11 17:07:36 -0400
It seems that fixing one spelling error always means that somebody is about to tell me about another. Fix a second spelling error in the risks section of 150.
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.
Nick Mathewson [Wed, 9 Jul 2008 15:23:23 +0000 (15:23 +0000)]
Stop using __attribute__((nonnull)): It gets us occcasional warnings when we do something so foolish it can be detected without dataflow analysis, but it also eliminates some of our error checking code. Suggested by Peter Gutmann.
Nick Mathewson [Sun, 6 Jul 2008 18:34:45 +0000 (18:34 +0000)]
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.
Proposal 121: Add a simple algorithm to delay descriptor publication for different clients of a hidden service;
Proposal 142: Give first security property the new name "Responsibility" and change new cell formats according to rendezvous protocol version 3 draft.
Nick Mathewson [Thu, 3 Jul 2008 15:04:16 +0000 (15:04 +0000)]
r16689@tombo: nickm | 2008-07-03 11:03:14 -0400
Fix for bug 742: do not use O_CREAT on 2-option version of open(). Especially do not use it on /dev/null. Fix from Michael Scherer. Bugfix on 0.0.2pre19 (wow).
Roger Dingledine [Mon, 30 Jun 2008 21:52:39 +0000 (21:52 +0000)]
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.
Nick Mathewson [Sat, 28 Jun 2008 04:16:17 +0000 (04:16 +0000)]
r16587@tombo: nickm | 2008-06-28 00:13:40 -0400
fix for bug 704; found by sjmurdoch. Windows and recent openssl both want to define OCSP_RESPONSE; do not let them.
Roger Dingledine [Sun, 22 Jun 2008 07:15:18 +0000 (07:15 +0000)]
Change the contrib/tor.logrotate script so it makes the new
logs as "_tor:_tor" rather than the default, which is generally
"root:wheel". Fixes bug 676, reported by Serge Koksharov.
Andrew, you should check if this breaks the rpm building (or if
it makes it work better)
Roger Dingledine [Fri, 20 Jun 2008 04:42:17 +0000 (04:42 +0000)]
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".
Roger Dingledine [Fri, 20 Jun 2008 04:34:39 +0000 (04:34 +0000)]
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.
Roger Dingledine [Fri, 20 Jun 2008 03:13:16 +0000 (03:13 +0000)]
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.)
Roger Dingledine [Thu, 19 Jun 2008 04:50:06 +0000 (04:50 +0000)]
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.
Roger Dingledine [Wed, 18 Jun 2008 07:34:04 +0000 (07:34 +0000)]
Directory authorities shouldn't complain about bootstrapping
problems just because they do a lot of reachability testing and
some of the connection attempts fail.
Roger Dingledine [Wed, 18 Jun 2008 05:35:19 +0000 (05:35 +0000)]
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.