Nick Mathewson
31fb4a7845
Make the bwauth.c module dirauth-only.
2019-05-02 09:22:13 -04:00
Nick Mathewson
6f42efaa59
Move voteflags.[ch] to become dirauth only.
...
For various reasons, this was a nontrivial movement. There are
several places in the code where we do something like "update the
flags on this routerstatus or node if we're an authority", and at
least one where we pretended to be an authority when we weren't.
2019-05-02 09:22:13 -04:00
Nick Mathewson
996f7c75ba
Make the reachability.c module dirauth-only.
2019-04-30 15:00:08 -04:00
Nick Mathewson
339ac4dc67
Make the guardfraction.c module dirauth-only.
2019-04-30 15:00:08 -04:00
Nick Mathewson
857bfc7033
Make the process_descs.c module dirauth-only.
2019-04-30 15:00:07 -04:00
Nick Mathewson
aab0245924
Make the dsigs_parse.c module dirauth-only.
2019-04-30 15:00:07 -04:00
Nick Mathewson
853942b71e
Make the recommend_pkg file dirauth-only.
2019-04-30 15:00:07 -04:00
George Kadianakis
847fc3280d
Merge branch 'maint-0.4.0'
2019-04-30 19:26:30 +03:00
George Kadianakis
e1d4e2badb
Merge branch 'tor-github/pr/978' into maint-0.4.0
2019-04-30 19:26:14 +03:00
George Kadianakis
f2800b53ad
Merge branch 'tor-github/pr/985'
2019-04-30 19:25:32 +03:00
George Kadianakis
d885ed867f
Merge branch 'tor-github/pr/937'
2019-04-30 19:21:46 +03:00
George Kadianakis
9084a90b00
Merge branch 'tor-github/pr/936'
2019-04-30 19:21:15 +03:00
George Kadianakis
a44aca5453
Merge branch 'tor-github/pr/993'
2019-04-30 19:13:57 +03:00
George Kadianakis
86f8dfe419
Merge branch 'tor-github/pr/983'
2019-04-30 19:13:30 +03:00
David Goulet
43c119fedb
Merge branch 'tor-github/pr/980'
...
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-04-30 11:50:36 -04:00
David Goulet
e543c4e20c
Merge branch 'tor-github/pr/909'
...
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-04-30 11:17:45 -04:00
Nick Mathewson
b7cc631d23
Rename and clarify some functions for periodic events
...
When we tell the periodic event manager about an event, we are
"registering" that event. The event sits around without being
usable, however, until we "connect" the event to libevent. In the
end, we "disconnect" the event and remove its libevent parts.
Previously, we called these operations "add", "setup", and
"destroy", which led to confusion.
2019-04-30 11:14:59 -04:00
Nick Mathewson
9a62a820fb
Remove now-extraneous calls to initialize_periodic_events().
...
This is now the responsibility of the mainloop's subsystem initializer.
2019-04-30 11:14:59 -04:00
Nick Mathewson
7e03500eef
Changes file for periodic event movement
2019-04-30 11:14:59 -04:00
Nick Mathewson
b5a62b1ef5
Move dirauth periodic events into dirauth module.
...
Closes ticket 30294.
2019-04-30 11:14:59 -04:00
Nick Mathewson
6eb1b8da0a
Turn 'mainloop' into a subsystem.
...
We need a little refactoring for this to work, since the
initialization code for the periodic events assumes that libevent is
already initialized, which it can't be until it's configured.
This change, combined with the previous ones, lets other subsystems
declare their own periodic events, without mainloop.c having to know
about them. Implements ticket 30293.
2019-04-30 11:14:59 -04:00
Nick Mathewson
48e1ab1720
Changes file for 29732.
2019-04-30 11:11:39 -04:00
Nick Mathewson
730dddc380
Make sure that the rng is not replaced if it is already replaced.
2019-04-30 11:11:39 -04:00
Nick Mathewson
604e849d36
Make the deterministic and reproducible rng test code handle fast_rng
2019-04-30 11:11:39 -04:00
Nick Mathewson
587a525cc5
Add improved debugging support to crypto_rand_fast code.
2019-04-30 11:11:39 -04:00
Nick Mathewson
e66b5153bd
Extract add-entropy code from crypto_fast_rng to a new function
2019-04-30 11:11:39 -04:00
Nick Mathewson
c6a93beed8
Use preloaded-rng code in test_hs_descriptor.c
2019-04-30 11:11:39 -04:00
Nick Mathewson
7086a9f90e
Make rng mock code also cover strongest_rand.
2019-04-30 11:11:39 -04:00
Nick Mathewson
0a9fb6938d
Use prefilled PRNG replacement in test_extorport
...
This is the last remaining place where our tests had mocked
crypto_rand.
2019-04-30 11:11:39 -04:00
Nick Mathewson
7bd34698af
Use prefilled_rng in test_addr.c in place of existing code.
2019-04-30 11:11:39 -04:00
Nick Mathewson
fe173ce0bc
Add a testing PRNG replacement that returns canned data.
2019-04-30 11:11:39 -04:00
Nick Mathewson
64d5ed0415
Update circuit_timeout test to use deterministic prng
2019-04-30 11:11:39 -04:00
Nick Mathewson
d3526d3f2c
Update test_prob_distr to use new reproducible RNG override code
2019-04-30 11:11:39 -04:00
Nick Mathewson
11eaed66bb
Add support for deterministic override of crypto_rand() in tests
...
We had this previously, but we did it differently in different
places. This implementation is pulled from test_prob_distr.c
2019-04-30 11:11:39 -04:00
Nick Mathewson
44e6663b8a
Merge remote-tracking branch 'tor-github/pr/972'
2019-04-29 13:36:35 -04:00
Nick Mathewson
206d28ff15
Merge branch 'maint-0.4.0'
2019-04-29 10:15:11 -04:00
Nick Mathewson
593d29920e
Merge remote-tracking branch 'tor-github/pr/974' into maint-0.4.0
2019-04-29 10:15:03 -04:00
rl1987
6d347fe329
Remove obsolete OpenSUSE initscript
2019-04-27 10:33:33 +03:00
Nick Mathewson
806539b40a
Use fast check for missing id in node_is_a_configured_bridge()
...
Fixes bug 30308; bugfix on 0.3.5.1-alpha.
2019-04-26 11:19:46 -04:00
Nick Mathewson
650b94ebc1
Use a linear algorithm to subtract two nodelists.
...
The nodelist_idx for each node_t serves as a unique identifier for
the node, so we can use a bitarray to hold all the excluded
nodes, and then remove them from the smartlist.
Previously use used smartlist_subtract(sl, excluded), which is
O(len(sl)*len(excluded)).
We can use this function in other places too, but this is the one
that showed up on the profiles of 30291.
Closes ticket 30307.
2019-04-26 11:04:44 -04:00
Nick Mathewson
1d44ac9acd
Make nodelist_get_list() return a const pointer.
2019-04-26 10:36:49 -04:00
Nick Mathewson
efeb101b96
Merge remote-tracking branch 'tor-github/pr/889'
2019-04-25 20:25:34 -04:00
Nick Mathewson
36b4fc7437
Merge remote-tracking branch 'tor-github/pr/922'
2019-04-25 20:08:39 -04:00
Nick Mathewson
a5cced2b7a
Extract keyword argument checking from argument parsing.
2019-04-25 14:13:03 -04:00
Nick Mathewson
a0299cd240
In control command api, rename "object" to "cmddata"
...
This makes it match control-spec.txt.
2019-04-25 14:13:03 -04:00
Nick Mathewson
3ed7ceeb85
changes file for ticket 30091 (controller parsing refactor)
2019-04-25 14:13:03 -04:00
Nick Mathewson
ff9ba7d6c4
expand CMD_FL_WIPE to wipe the parsed arguments too
2019-04-25 14:13:03 -04:00
Nick Mathewson
88d22b898e
Simplify handler logic in control_cmd.c
...
Now that the legacy handlers are gone, we can simplify the
structures and macros here.
2019-04-25 14:13:03 -04:00
Nick Mathewson
ddd33d39c7
Port the authenticate and authchallenge commands to the new parser
...
These two presented their own challenge, because of their use of
QString, and their distinguished handling of quoted versus
non-quoted values.
2019-04-25 14:13:03 -04:00
Nick Mathewson
8799b4e805
Add rudimentary qstring support to kvline.c
2019-04-25 14:13:03 -04:00