Nick Mathewson
eac4c374e4
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-10-23 09:11:10 -04:00
Nick Mathewson
49e8352f16
Merge branch 'maint-0.3.2'
2017-10-23 09:11:10 -04:00
Nick Mathewson
6a7aa47357
Merge branch 'maint-0.3.1' into maint-0.3.2
2017-10-23 09:11:10 -04:00
Nick Mathewson
85115796bb
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-10-23 09:11:10 -04:00
Nick Mathewson
a5f5bda462
Adjust test, now that there are 9 dirauths again
2017-10-23 09:11:07 -04:00
Nick Mathewson
1db5081ba1
Merge branch 'maint-0.2.8' into maint-0.2.9
2017-10-23 09:06:34 -04:00
Nick Mathewson
c93ecb8189
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-10-23 09:06:34 -04:00
Nick Mathewson
d99c6b7252
Merge branch 'maint-0.3.2'
2017-10-23 09:06:34 -04:00
Nick Mathewson
009141c6a8
Merge branch 'maint-0.3.1' into maint-0.3.2
2017-10-23 09:06:34 -04:00
Nick Mathewson
23e3d57e12
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-10-23 09:06:34 -04:00
Nick Mathewson
8cc147aa83
Merge branch 'maint-0.2.5' into maint-0.2.8
2017-10-23 09:04:56 -04:00
David Goulet
15a699462d
dirauth: Add bastet to the default authorities
...
Fixes #23910
Based on a patch by dgoulet; backported to 0.2.5
2017-10-23 09:03:36 -04:00
Nick Mathewson
97046436b2
Merge branch 'maint-0.3.2'
2017-10-23 08:59:12 -04:00
Nick Mathewson
c958fda6e2
Merge branch 'maint-0.2.8' into maint-0.2.9
2017-10-23 08:59:11 -04:00
Nick Mathewson
783e458c07
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-10-23 08:59:11 -04:00
Nick Mathewson
b8dedaee74
Merge branch 'maint-0.3.1' into maint-0.3.2
2017-10-23 08:59:11 -04:00
Nick Mathewson
df57d1e0c0
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-10-23 08:59:11 -04:00
Nick Mathewson
9a1b385462
Merge branch 'maint-0.2.5' into maint-0.2.8
2017-10-23 08:58:28 -04:00
Nick Mathewson
c018aa8196
Merge branch 'maint-0.3.2'
2017-10-23 08:53:25 -04:00
Nick Mathewson
132e2f69b1
Merge branch 'maint-0.2.8' into maint-0.2.9
2017-10-23 08:53:25 -04:00
Nick Mathewson
74e8fd22c9
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-10-23 08:53:25 -04:00
Nick Mathewson
578eead1c8
Merge branch 'maint-0.3.1' into maint-0.3.2
2017-10-23 08:53:25 -04:00
Nick Mathewson
b68de63eb6
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-10-23 08:53:25 -04:00
Nick Mathewson
6f87a85897
Merge remote-tracking branch 'public/bug23690_028' into maint-0.2.8
2017-10-23 08:53:14 -04:00
Nick Mathewson
1693cee66e
Merge branch 'maint-0.3.2'
2017-10-23 08:47:59 -04:00
Nick Mathewson
bae96cf1dc
Merge branch 'maint-0.3.1' into maint-0.3.2
2017-10-23 08:47:59 -04:00
Nick Mathewson
35574d4a9a
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-10-23 08:47:58 -04:00
Nick Mathewson
9120ac2218
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-10-23 08:47:58 -04:00
Nick Mathewson
fcaf3335b4
Merge remote-tracking branch 'public/bug23081_025' into maint-0.2.9
2017-10-23 08:47:52 -04:00
Nick Mathewson
1949c78237
Merge branch 'maint-0.3.2'
2017-10-23 08:46:30 -04:00
Nick Mathewson
a46288252b
Merge branch 'maint-0.3.1' into maint-0.3.2
2017-10-23 08:46:29 -04:00
Nick Mathewson
d29e4c0597
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-10-23 08:46:29 -04:00
Nick Mathewson
5d37d27007
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-10-23 08:46:29 -04:00
Nick Mathewson
68dea082e7
Merge remote-tracking branch 'public/bug22349_029' into maint-0.2.9
2017-10-23 08:46:26 -04:00
Nick Mathewson
a62f59f000
Mark "previously validated foo could not be set" blocks as unreachable.
2017-10-20 19:28:12 -04:00
Nick Mathewson
c4a07b261b
Add unit tests for cases of starting with bogus keygen arguments
...
In particular, this tests that we give an appropriate warning when
we are told to use some keygen argument, but --keygen is not specified.
2017-10-20 19:27:48 -04:00
Nick Mathewson
90daa28df4
Changes file for ticket 23848
2017-10-20 11:39:17 -04:00
Nick Mathewson
3c99b810a4
Exit more carefully when options_act() fails.
...
Also, annotate options_act() with places where we should be
pre-validating values.
2017-10-20 11:39:17 -04:00
Nick Mathewson
1df43aff41
Return instead of exiting in options_init_from_torrc()
2017-10-20 11:39:17 -04:00
Nick Mathewson
853e73e815
Return from instead of exit()ing when ed25519 key check fails.
2017-10-20 11:39:17 -04:00
Nick Mathewson
c247a2df6b
On locking failure, return -1 instead of exit()ing.
...
This is safe, since the only caller (options_act) will check the
return value, and propagate failure.
2017-10-20 11:39:17 -04:00
Nick Mathewson
9bafc3b1ef
Replace most bad exits in main.c, hibernate.c
...
This should make most of the reasons that we hibernate cleaner.
2017-10-20 11:39:17 -04:00
Nick Mathewson
c82cc8acb5
Add a failsafe to kill tor if the new exit code doesn't work.
...
It _should_ work, and I don't see a reason that it wouldn't, but
just in case, add a 10 second timer to make tor die with an
assertion failure if it's supposed to exit but it doesn't.
2017-10-20 11:39:17 -04:00
Nick Mathewson
f0c3b62381
Expose a new function to make the event loop exit once and for all.
...
Instead of calling tor_cleanup(), exit(x), we can now call
tor_shutdown_event_loop_and_exit.
2017-10-20 11:39:17 -04:00
Nick Mathewson
78cbced45c
Rename "tell_event_loop_to_finish" to "...run_external_code"
...
This function was never about 'finishing' the event loop, but rather
about making sure that the code outside the event loop would be run
at least once.
2017-10-20 09:59:48 -04:00
Nick Mathewson
35746a9ee7
Comment-only change: annotate exit() calls.
...
Sometimes when we call exit(), it's because the process is
completely hopeless: openssl has a broken AES-CTR implementation, or
the clock is in the 1960s, or something like that.
But sometimes, we should return cleanly from tor_main() instead, so
that embedders can keep embedding us and start another Tor process.
I've gone through all the exit() and _exit() calls to annotate them
with "exit ok" or "XXXX bad exit" -- the next step will be to fix
the bad exit()s.
First step towards 23848.
2017-10-19 13:42:28 -04:00
Nick Mathewson
0956242158
Mark some unreachable code in compat_winthreads.c as unreachable
2017-10-19 13:21:48 -04:00
Nick Mathewson
72b5e4a2db
Move tor_git_revision into a new module.
...
At first, we put the tor_git_revision constant in tor_main.c, so
that we wouldn't have to recompile config.o every time the git
revision changed. But putting it there had unintended side effect
of forcing every program that wanted to link libor.a (including
test, test-slow, the fuzzers, the benchmarks, etc) to declare their
own tor_git_revision instance.
That's not very nice, especially since we want to start supporting
others who want to link against Tor (see 23846).
So, create a new git_revision.c file that only contains this
constant, and remove the duplicated boilerplate from everywhere
else.
Part of implementing ticket 23845.
2017-10-18 13:49:35 -04:00
Nick Mathewson
f1bf9bf819
Add __OwningControllerFD to allow controllers without controlports
...
This feature should help programs that want to launch and manage a
Tor process, as well as programs that want to launch and manage a
Tor instance in a separate thread. Right now, they have to open a
controlport, and then connect to it, with attendant authentication
issues. This feature allows them to just start with an
authenticated connection.
Bug 23900.
2017-10-18 13:36:53 -04:00
Nick Mathewson
f0daaf8d60
Expose connection_init_accepted_conn.
2017-10-18 12:55:09 -04:00