- Jan 21, 2021
-
-
Give more visibility to directory authority operators during the consensus voting process. Closes ticket 40245.
-
This step happens after we make each consensus flavor, and before we worry about sigs or anything. That way if Tor crashes, or if we fail to get enough sigs, we still have a chance to know what consensus we wanted to make.
-
-
Nick Mathewson authored
In addition to simplifying callsites a little, this function gives correct behavior for bridges without a configured transport.
-
Nick Mathewson authored
-
David Goulet authored
-
- Jan 20, 2021
-
-
David Goulet authored
This validation was only done if DisableNetwork was off because we would use the global list of transports/bridges and DisableNetwork would not populate it. This was a problem for any user using DisableNetwork which includes Tor Browser and thus leading to the Bug() warning. Without a more in depth refactoring, we can't do this validation without the global list. The previous commit makes it that any connection to a bridge without a transport won't happen thus we keep the security feature of not connecting to a bridge without its corresponding transport. Related to #40106 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
David Goulet authored
Don't pick the bridge as the guard or launch descriptor fetch if no transport is found. Fixes #40106 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
- Jan 19, 2021
-
-
Nick Mathewson authored
-
Nick Mathewson authored
-
David Goulet authored
When selecting the first advertised port, we always prefer the one with an explicit address. Closes #40246 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
David Goulet authored
We used to actually discard ORPorts that were the same port and same family but they could have different address. Instead, we need to keep all different ORPorts so we can bind a listener on each of them. We will publish only one of these in our descriptor though. Related to #40246 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Alexander Hansen Færøy authored
This patch removes a call to `tor_assert_nonfatal()` if `extend_info_from_node()` returns NULL. This is unnecessary as we already handle the case where `info` is NULL in the next `if (!info) { ... }` block in the code. See: tor#32666.
-
Nick Mathewson authored
-
Nick Mathewson authored
-
- Jan 15, 2021
-
-
David Goulet authored
This reverts commit d07f17f6. We don't want to consider an entire routable IPv6 network as sybil if more than 2 relays happen to be on it. For path selection it is very important but not for selecting relays in the consensus. Fixes #40243
-
- Jan 14, 2021
-
-
David Goulet authored
We can end up trying to find our address from an authority while we don't have yet its descriptor. In this case, don't BUG() and just come back later. Closes #40231 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
David Goulet authored
In case building the descriptor would fail, we could still flag that we did in fact publish the descriptors leading to no more attempt at publishing it which in turn makes the relay silent for some hours and not try to rebuild the descriptor later. This has been spotted with #40231 because the operator used a localhost address for the ORPort and "AssumeReachable 1" leading to this code path where the descriptor failed to build but all conditions to "can I publish" were met. Related to #40231 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
David Goulet authored
This is currently for the dircache module that can not be disabled by itself, it is only disabled from the relay module. Thus, we should not print in the configure summary the disable option. Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
- Jan 13, 2021
-
-
David Goulet authored
-
David Goulet authored
-
David Goulet authored
-
David Goulet authored
Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
Nick Mathewson authored
This one should work on GCC _and_ on Clang. The previous version made Clang happier by not having unreachable "fallthrough" statements, but made GCC sad because GCC didn't think that the unconditional failures were really unconditional, and therefore _wanted_ a FALLTHROUGH. This patch adds a FALLTHROUGH_UNLESS_ALL_BUGS_ARE_FATAL macro that seems to please both GCC and Clang in this case: ordinarily it is a FALLTHROUGH, but when ALL_BUGS_ARE_FATAL is defined, it's an abort(). Fixes bug 40241 again. Bugfix on earlier fix for 40241, which was merged into maint-0.3.5 and forward, and released in 0.4.5.3-rc.
-
David Goulet authored
Some gcc versions do explode if the order of the linker flags are not correct. One issue was statically building OpenSSL which would require that "-lssl -lcrypto" be put _before_ the "-lpthread -ldl" flags. I have not such problem with GCC 10 but does with GCC 9. Closes #33624 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
George Kadianakis authored
-
Nick Mathewson authored
Fixes bug #40234; bugfix on 0.3.2.5-alpha.
-
- Jan 12, 2021
-
-
Nick Mathewson authored
-
David Goulet authored
-
David Goulet authored
-
David Goulet authored
-