Commit Graph

34658 Commits

Author SHA1 Message Date
Nick Mathewson c8b6392b4e Initialize publish/subscribe code when running as an NT service.
Fixes bug 32778; bugfix on 0.4.1.1-alpha.
2020-01-17 08:41:52 -05:00
Nick Mathewson eef021e12d Revert "Use tor_api.h entry points in ntmain.c."
This reverts commit dca2629480.
2020-01-17 08:39:56 -05:00
Nick Mathewson d7a22160f5 Revert "Restore feature where nt-services detect non-"run_tor" modes."
This reverts commit 5c240db0bf.
2020-01-17 08:39:49 -05:00
Nick Mathewson 7f03ba06d8 Merge branch 'ticket32806' 2020-01-17 08:37:33 -05:00
Nick Mathewson 6d2b9c9631 Remove some dead checks
The only code that could set these options to be negative was in the
unit tests.
2020-01-17 08:31:22 -05:00
Nick Mathewson 648e1afc33 fix a stray asterisk in a comment 2020-01-17 08:25:09 -05:00
Nick Mathewson abd9ae48ac Merge branch 'ticket32487_squashed_and_merged' 2020-01-17 07:50:50 -05:00
Nick Mathewson 01fdc3240f Merge branch 'ticket32695_squashed' 2020-01-16 16:42:01 -05:00
Nick Mathewson ceacda44f1 Remove functions that checked for pre-ipv6 consensus.
We no longer need or need to test:
  * node_awaiting_ipv6()
  * networkstatus_consensus_has_ipv6().
2020-01-16 16:41:53 -05:00
Nick Mathewson 8d94bcbf8c Remove routerstatus_format_entry() consensus_method argument as unused 2020-01-16 16:41:53 -05:00
Nick Mathewson 441a048a3a Remove support for now-obsolete consensus methods before 28.
Closes ticket 32695.
2020-01-16 16:41:53 -05:00
Nick Mathewson 17c63ff9f6 Merge remote-tracking branch 'tor-github/pr/1663' 2020-01-16 10:24:39 -05:00
Nick Mathewson 3c89622e39 Merge branch 'ticket32487_squashed' into ticket32487_squashed_and_merged
Resolved conflicts in src/core/include.am
2020-01-16 07:57:37 -05:00
Nick Mathewson efb301c86c Document why dircache is not included in --list-modules 2020-01-16 07:48:17 -05:00
Nick Mathewson a623a49777 Add have_module_dircache(). 2020-01-16 07:48:17 -05:00
Nick Mathewson 5cff1ce84b Turn several functions from stubs into macros
This may help the compiler eliminate deadcode.
2020-01-16 07:48:17 -05:00
Nick Mathewson 6ba4b5e5da Rename dirclient_modes.h identifiers to start with dirclient_
This is an automated commit, generated by this command:

./scripts/maint/rename_c_identifier.py \
        directory_must_use_begindir dirclient_must_use_begindir \
        directory_fetches_from_authorities dirclient_fetches_from_authorities \
        directory_fetches_dir_info_early dirclient_fetches_dir_info_early \
        directory_fetches_dir_info_later dirclient_fetches_dir_info_later \
        directory_too_idle_to_fetch_descriptors dirclient_too_idle_to_fetch_descriptors
2020-01-16 07:48:17 -05:00
Nick Mathewson 8d1f31190e Move directory_must_use_begindir() to dirclient_modes.[ch] 2020-01-16 07:48:17 -05:00
Nick Mathewson 773bcf5629 Move dirclient-related functions out of dirserv, and reenable them
I had incorrectly identified these functions as dircache-only, when
in fact they apply to everyone who acts a directory client.
2020-01-16 07:48:17 -05:00
Nick Mathewson a1bc471dd4 Add a changes file for disabling the dircache code. 2020-01-16 07:48:17 -05:00
Nick Mathewson 8a0c739467 Disable feature/dircache files when dircache module is disabled.
To make Tor still work, we define a minimal dircache_stub.c file
that defines the entry points to the module that can actually be
seen by the compiler when we're building with dircache and relay
disabled.
2020-01-16 07:48:17 -05:00
Nick Mathewson 6e12a8f047 Use dir_conn_clear_spool() in connection.c.
This is cleaner than iterating over the spool.
2020-01-16 07:48:17 -05:00
Nick Mathewson fe8156dbc2 Move dirserv_get_routerdescs() to control_getinfo.c
This function had some XXX comments indicating (correctly) that it
was not actually used by the dirserver code, and that only the
controller still used it.
2020-01-16 07:48:17 -05:00
Nick Mathewson 4cf15ee015 Move dir_split_resource_into_spoolable() to dircache module.
Only directory caches actually need to spool things.
2020-01-16 07:48:17 -05:00
Nick Mathewson 888a0be0b9 Define a "dircache" module.
For now, this module is enabled whenever the relay module is
enabled, and disabled whenever the relay module is disabled.  Though
they are logically separate, the use cases for running one without
the other are rare enough that we don't really want to support
compiling them independently.
2020-01-16 07:48:17 -05:00
teor 4025cbada6 Merge branch 'maint-0.4.2' 2020-01-16 10:00:55 +10:00
teor 48187248d3 Merge branch 'maint-0.4.1' into maint-0.4.2 2020-01-16 10:00:47 +10:00
teor fb541ffca3 Merge branch 'maint-0.4.0' into maint-0.4.1 2020-01-16 10:00:40 +10:00
teor 026f068bb3 Merge branch 'maint-0.3.5' into maint-0.4.0 2020-01-16 10:00:32 +10:00
teor 19954cffd7 Merge remote-tracking branch 'tor-github/pr/1513' into maint-0.3.5 2020-01-16 09:57:27 +10:00
teor f3cbc26bdd add_c_file: Fix "control line not preceded by a blank line"
Fix dirauth and relay module include.am add_c_file.py
"control line not preceded by a blank line" errors.

Also remove a duplicate ADD_C_FILE: SOURCES in the relay module.

Obviously correct fixes to already-reviewed code.
2020-01-16 09:38:26 +10:00
Nick Mathewson 5e70c27e85 Merge remote-tracking branch 'tor-github/pr/1657' 2020-01-15 13:10:14 -05:00
Nick Mathewson 77246dc0d8 Tell static analyzer that having ntservice functions not exist is ok
When we made these functions exist unconditionally (as macros on
non-windows platforms), we started to get a dead-code warning on
Coverity.  We now use a macro to tell coverity not to worry about
this particular dead-code instance.
2020-01-15 10:30:03 -05:00
Nick Mathewson 5e27caa60c compat_compiler: add a macro to prevent coverity deadcode warnings.
The POSSIBLE(e) macro evaluates to the value of (e), but does so in
a way that a static analyzer will not conclude that (e) is
impossible.  We can use this when we expect our regular compilers to
eliminate deadcode, but we don't want coverity to complain about it.

Part of a fix for 32960.
2020-01-15 10:21:18 -05:00
teor 5fa7c1b13f Merge remote-tracking branch 'tor-github/pr/1661' 2020-01-16 00:46:31 +10:00
teor d430b5a074 Merge remote-tracking branch 'tor-github/pr/1634'
"Ours" merge, because ticket 32883 replaces this code with calls
to tor_run_main(). (Which then calls the pubsub functions.)

Therefore, this PR is obsolete in master, but it still needs to be
merged, to avoid conflicts during any future backport.
2020-01-15 22:31:10 +10:00
teor b7cfca1dee Merge branch 'pr1599_squashed' 2020-01-15 22:31:01 +10:00
teor b910ae8cd1 practracker: Wrap long lines in the test script 2020-01-15 22:29:52 +10:00
teor fa038e5617 practracker: Test practracker exit status
Part of 32705.
2020-01-15 22:29:48 +10:00
teor eb55d85e75 practracker: Fail tests if any process exits unexpectedly
Part of 32705.
2020-01-15 22:29:44 +10:00
teor cda2ff1965 practracker: Capture stderr output in test_practracker.sh
And canonicalise file paths, so that output is consistent, even in
out-of-tree builds.

Capturing stderr output produces better diagnostics.

Diagnostics for 32705.
2020-01-15 22:29:22 +10:00
teor c80694decc scripts/git: Improve branch list comments
Hopefully, these explanations make it easier to get the next branch
transition right.

Part of 32772.
2020-01-15 12:28:00 +10:00
teor 536eeb4589 scripts/git: Fix git-merge-forward after removing 0.2.9
We need a test branch for the earliest maint branch (maint-0.3.5),
but we can't merge forward into it, because there is no previous
active maint branch.

Also, edit a git-push-all comment that still said "029".

Bugfix on 32772; bug not in any released version of tor.
2020-01-15 12:22:38 +10:00
David Goulet b958529dbf Merge branch 'tor-github/pr/1633' 2020-01-14 14:03:21 -05:00
Nick Mathewson 08bbb6b8d9 Merge branch 'ticket32892_043_01_squashed' 2020-01-14 13:31:20 -05:00
David Goulet 59dac38ebe chan: Remove dead var cell handler from channel_t
The variable lenght cells are handled directly by
channel_tls_handle_var_cell() from an OR connection reading its inbuf. The
channel var cell handler (agnostic) was never used.

Closes #32892

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-01-14 13:31:08 -05:00
Nick Mathewson 165a92e33f Replace an assertion with a check-and-log
We hit this assertion with bug 32868, but I'm stymied figuring out
how we wound up with a routerstatus like this.  This patch is a
diagnostic to attempt to figure out what is going on, and to avoid a
crash in the meantime.
2020-01-14 13:16:39 -05:00
Nick Mathewson c948db4252 Merge remote-tracking branch 'tor-github/pr/1636' 2020-01-14 12:46:14 -05:00
Nick Mathewson c2dc94d8eb Merge branch 'ticket32883' 2020-01-14 12:42:41 -05:00
Nick Mathewson dec11793ba Merge branch 'ticket32825_squashed' 2020-01-14 12:42:19 -05:00