Commit Graph

988 Commits

Author SHA1 Message Date
George Kadianakis
279225acdd Merge branch 'tor-github/pr/1929' 2020-06-24 17:20:25 +03:00
David Goulet
6da8c0b4fa addr: Rename resolve_my_address to be v4 specific
Part of #33233

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-06-23 09:25:36 -04:00
Mike Perry
c047c6d5b8 practracker FTL!
Faster Than Light!
2020-06-16 13:44:10 -05:00
George Kadianakis
3cb77a9cca Merge branch 'maint-0.4.4' 2020-06-11 17:29:54 +03:00
Nick Mathewson
f3c82c86f9 Improve our clang-format.sh script
Previously, this script ran over every C file in our source code,
which took up to a minute on my desktop.

Instead, the script now has several modes that it can run in, to
minimize the time spent and improve useful output.  It should now be
suitable for everyday use and git hooks.  I hope.

I've also renamed this script, so that we can keep using it in the
future if we were to move to some tool other than clang-format.
2020-06-11 10:28:03 -04:00
George Kadianakis
52edea121e Fold in a changes file and update exceptions.txt.
Co-authored-by: Florentin Rochet <florentin.rochet@uclouvain.be>
2020-06-11 16:13:25 +03:00
Nick Mathewson
fc16dbf7aa Remove "enable_practracker_in_hooks" for 0.4.4. 2020-06-09 15:47:25 -04:00
Nick Mathewson
354f085e5f Merge remote-tracking branch 'tor-github/pr/1888/head' 2020-06-09 15:44:58 -04:00
Nick Mathewson
eaae5625cb Add 0.4.4 to list of tor branches used by git scripts. 2020-06-09 14:17:15 -04:00
Nick Mathewson
ca8b04f194 Merge branch 'ticket34375' 2020-06-09 14:16:21 -04:00
c
76d07940fd
scripts/maint: Remove obsolete generated tor.sh
Per <https://trac.torproject.org/projects/tor/ticket/34381>, these
contrib scripts were generated by older versions of Tor and shellcheck
will throw warnings if they still exist.
2020-06-08 01:41:36 +00:00
Nick Mathewson
811853c677 Remove 0.4.1 from list of tor branches used by git scripts. 2020-06-03 14:54:21 -04:00
teor
8ec4d9cc3c practracker: Accept extra file lines, enforce a smaller function
Accept extra lines in nodelist and routerlist due to extra features, and
due to refactors that simplify some functions.

Most of the refactor eliminated duplicate code in smaller functions, so
there's only one large function that got smaller.

Part of 34200.
2020-05-18 21:53:52 +10:00
Nick Mathewson
bbfdee4c4e Fix a python warning in format_changelog.py. 2020-05-14 10:37:52 -04:00
teor
de979dd7bd practracker: Allow a few extra lines in circuituse
Part of 33222.
2020-05-13 20:08:29 +10:00
teor
b64972edcd practracker: Accept extra or.h lines 2020-05-11 14:39:42 +10:00
teor
24099680f1 Appease practracker: wrapping costs lines 2020-05-07 20:19:19 +10:00
David Goulet
a25f167072 config: New file resolve_addr.{c|h}
Move a series of function from config.c into that new file which is related to
address resolving.

Part of #33789

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-05-05 14:24:04 -04:00
teor
a202f03c64 practracker: Accept some wrapped long lines
Part of 33222.
2020-04-30 15:15:53 +10:00
teor
efcae919ae
practracker: Accept the connection buf refactor
Accept a few extra lines from the connection_buf_read_from_socket()
refactor.

Cleanup after 33131.
2020-04-30 13:55:26 +10:00
teor
ed4420b4b8 practracker: Allow an extra line in tor_addr_parse_mask_ports()
We added a cast, and wrapped a line.
2020-04-30 06:54:42 +10:00
teor
f5c34d340d
Run practracker regen
Lock-in improvements.
Accept some small function size increases.
Allow a small amount of extra file size increase.
2020-04-14 15:42:52 +10:00
Nick Mathewson
80031db32a Merge remote-tracking branch 'tor-github/pr/1801/head' 2020-04-09 11:50:20 -04:00
teor
75aba30abf relay: Run practracker --regen
Lock in some file and function size improvements.

Accept some small file size and dependency increases.

Part of 33633.
2020-04-09 11:00:04 +10:00
teor
065ccda4f6
Merge branch 'pr1838_squashed' 2020-04-07 17:36:17 +10:00
Nick Mathewson
ea9ff58921
Try rewriting normalize_srcdir to normalize harder. 2020-04-07 17:36:05 +10:00
Nick Mathewson
d3db84c1e7
Make check_subsystem_order work in distcheck builds. 2020-04-07 17:36:02 +10:00
Nick Mathewson
5f49695f94
Make check_subsystem_order work in out-of-tree builds. 2020-04-07 17:35:58 +10:00
Nick Mathewson
9b434b79ce
Add a test script to check subsystem order as part of make check. 2020-04-07 17:35:51 +10:00
teor
a762234ba2
scripts: Ignore editor temporary files
Ignore editor temporary files when autostyling in:
* rectify_include_paths.py
* rename_c_identifier.py

Obviously correct changes to already-reviewed code.
2020-04-03 19:16:57 +10:00
Nick Mathewson
978b7ef45c Teach --check-subsystem-order to take input from stdin 2020-03-26 12:30:30 -04:00
Nick Mathewson
a40d539f7c Extend includes.py to compare topology with subsystem init order. 2020-03-26 12:17:53 -04:00
teor
a34a88c6f1
practracker: Accept changes
Accept a smaller file and function.
Let router.c grow slightly without warning.
Accept an extra comment line.

Cleanup after 32588.
2020-03-21 04:10:24 +10:00
teor
5d53b2317f
practracker: Accept larger dirvote file
Due to improved function comments.
2020-03-21 02:48:51 +10:00
teor
bb3df5f322
practracker: Disable practracker in git hooks
Disable our coding standards best practices tracker in our git hooks.

0.4.3 branches only.

Closes ticket 33678.
2020-03-20 17:32:57 +10:00
teor
78b2984ac9
practracker: Regenerate exceptions file
Accept the current state of the tor codebase, including all the
files and functions that have increased technical debt over the
last few months.

Accepts all the current practracker warnings, so that reviewers
can focus on new warnings.

Closes ticket 33635.
2020-03-19 16:59:52 +10:00
teor
c86d08e3e6
Run "practracker.py --regen-overbroad"
We've successfully resolved a bunch of technical debt over the last
few months. Let's remove the allowances for that debt from the
practracker exceptions.
2020-03-17 23:02:16 +10:00
teor
1d17541cfa
Merge branch 'pr1764_squashed' 2020-03-13 11:14:20 +10:00
Nick Mathewson
78c9ff7052
Add a script to install the scripts in scripts/git appropriately.
To run this, say something like

   TOR_DEVTOOL_DIR=~/bin scripts/git/git-install-tools.sh all

To see what it would do, give it the -n flag.

To get help, give it the -h flag.
2020-03-13 11:14:04 +10:00
David Goulet
df3f2bd9aa hs-v3: Log reasons why service can't upload descriptor
When a service can not upload its descriptor(s), we have no logs on why. This
adds logging for each possible reason for each descriptors.

That logging is emitted every second so it is rate limited for each reason and
per descriptor.

Closes #33400

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-03-11 15:32:11 +02:00
Nick Mathewson
8096f3b254 Revert "scripts: Remove typo in git-list-tor-branches.sh"
This reverts commit a63b414822.

The "typo" wasn't actually a typo.  The "r" in the suffixes for the
release branches is meant to make them distinct from the maint
branches.

Now, _right now_, nothing uses release branch suffixes, but it's
important to keep them distinct if we decide to use them in the
future.
2020-03-09 09:03:51 -04:00
David Goulet
a63b414822 scripts: Remove typo in git-list-tor-branches.sh
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-03-05 10:29:47 -05:00
David Goulet
a62e3e45e6 Merge branch 'tor-github/pr/1720' 2020-03-05 10:29:42 -05:00
Nick Mathewson
d9152b8a66 Update git scripts to use git-list-tor-branches.sh 2020-03-05 10:29:35 -05:00
Nick Mathewson
42660ea056 Add a script to list the maintained Tor branches in different ways
This will be used for 32121
2020-03-05 10:29:35 -05:00
Nick Mathewson
686494f0f7 Merge branch 'clang_format_prep_3' 2020-03-05 08:23:32 -05:00
Nick Mathewson
caa392a73a Merge remote-tracking branch 'tor-github/pr/1685/head' 2020-02-24 07:45:20 -05:00
Nick Mathewson
7ba7f9c0de Merge branch 'maint-0.4.3' 2020-02-20 10:44:43 -05:00
Nick Mathewson
7b42502869 Merge remote-tracking branch 'tor-github/pr/1757/head' into maint-0.4.3 2020-02-20 10:44:36 -05:00
Nick Mathewson
66bbdadbbe Merge branch 'extract_routerkeys_squashed' 2020-02-20 10:41:12 -05:00
Nick Mathewson
1d068625dd Move relay_handshake.[ch] into src/feature/relay, and make it optional 2020-02-20 10:41:06 -05:00
Nick Mathewson
09fb7987c5 Merge branch 'maint-0.4.3' 2020-02-20 08:50:18 -05:00
Nick Mathewson
dd4fa9b468 Extract relay-only handshake code into its own file.
This is not the only relay-only handshake code, but it is most of
such code that is in connection_or.c.
2020-02-19 19:11:57 -05:00
teor
57ff8d4a53
practracker: Read unicode files when using Python 2
Allow the "practracker" coding best practices checking script to read
unicode files, when using Python 2.

We made the script use unicode literals in 0.4.3.1-alpha, but didn't
change the codec for opening files.

Fixes bug 33374; bugfix on 0.4.3.1-alpha.
2020-02-19 08:22:01 +10:00
teor
d8cbb2965e
Run "practracker --regen-overbroad"
Closes ticket 33373.
2020-02-19 08:13:02 +10:00
David Goulet
17724a7cde Merge branch 'tor-github/pr/1743' 2020-02-18 09:06:13 -05:00
Nick Mathewson
d3c23b079a lintChanges: Tolerate variants that sortChanges knows how to clean up. 2020-02-18 09:01:56 -05:00
Panagiotis Vasilopoulos
674a821fbb
Stop assuming that /usr/bin/python exists
Fixes 33192
2020-02-16 21:58:01 +02:00
Taylor Yu
55f088bb29 Script to check sorting of manpage entries
Add a script to help check the alphabetical ordering of option names
in a manpage.  Closes ticket 33339.
2020-02-14 11:02:16 -06:00
Nick Mathewson
b5ccdd978e Add a dire warning about not reformatting the whole codebase yet. 2020-02-12 18:52:35 -05:00
teor
99d957696b
scripts/git: Stop running the checked-out git scripts
Stop executing the checked-out pre-commit hook from the pre-push hook.
Instead, execute the copy in the user's git dir.

Fixes bug 33284; bugfix on 0.4.1.1-alpha.
2020-02-12 20:37:21 +10:00
David Goulet
2a524662c3 Merge branch 'tor-github/pr/1717' 2020-02-11 10:52:49 -05:00
Nick Mathewson
7404b6fb71 Update scripts/git/*.sh to know about 043 and not about 040. 2020-02-11 10:52:42 -05:00
David Goulet
f0964628e6 Merge branch 'ticket33029_042_01' into ticket33029_043_03
Conflicts:
	doc/tor.1.txt
	src/app/config/config.c
	src/app/config/or_options_st.h
	src/core/mainloop/connection.h

Between 042 and 043, the dirauth options were modularized so this merge commit
address this by moving the AuthDirRejectUncompressedRequests to the module
along with a series of accessors.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 10:30:29 -05:00
Christian Clauss
9f7e1ccacb Undefined name: make_key() -> make_rsa_key() 2020-02-11 08:35:11 -05:00
Nick Mathewson
5fa62fffee checkSpace: permit wide lines for LCOV_EXCL
We're telling clang-format that a line with LCOV_EXCL must not be
split -- that's fine, but we shouldn't complain when it indents it.
2020-02-06 16:25:56 -05:00
Nick Mathewson
f39ba52029 checkSpace: be more careful about bad function headers.
Previously we would forbid macro indentations like this:

FOO({
  int x;
  })

But clang-format sometimes generates those.
2020-02-06 14:54:04 -05:00
Nick Mathewson
c8fae6b5c8 checkSpace: don't treat an unindented label as starting a function. 2020-02-06 14:33:05 -05:00
Nick Mathewson
8d6f27cea5 checkSpace.pl: Allow space between iteration macros and ().
Clang-format wants to put these in, and they do make sense for
consistency.

Also allow more types.
2020-02-06 14:33:05 -05:00
Nick Mathewson
bfa7607385 checkSpace.pl: Use a data structure for a list of non-function names 2020-02-06 14:33:05 -05:00
Nick Mathewson
1f1d943999 checkspace: allow spaces in cpp directives. 2020-02-06 14:33:05 -05:00
Nick Mathewson
15819cde61 checkSpace.pl: allow {{, ){, and ({. 2020-02-06 14:33:05 -05:00
Nick Mathewson
f1d371bf32 checkSpace: remove the nosplabel test. 2020-02-06 14:33:05 -05:00
Nick Mathewson
573ab70bfe Temporary clang-format configuration and script.
The format is the same as in my previous efforts here.

The script is a little tricky, since it invokes both clang-format
and codetool, and it makes sure that files do not have a changed
mtime unless there is actually some change in the file.
2020-02-06 14:33:05 -05:00
Nick Mathewson
5bd86b50b5 codetool: post-processor for clang-format
This code transformer makes a couple of changes that we want for our
source code, and can be expanded to handle more.
2020-02-06 14:04:19 -05:00
Nick Mathewson
b7bbff0c9c Merge remote-tracking branch 'public/practracker_regen_overbroad_2' 2020-02-06 08:27:12 -05:00
Nick Mathewson
5e963f97b1 practracker: use shutil.move so --regen will work on windows
On windows you can't os.rename() a file if the target filename
already exists.
2020-02-03 13:36:56 -05:00
Nick Mathewson
ec965ba98b practracker: integration tests for --regen and --regen-overbroad 2020-02-03 13:11:58 -05:00
Nick Mathewson
2542a24b63 practracker: add a --regen-overbroad option to remove overbroad exceptions.
Closes ticket 32372.
2020-02-03 13:02:12 -05:00
Christian Clauss
472d58372b
Remove unused import UserDict
Fixes: https://trac.torproject.org/projects/tor/ticket/32791#comment:3
Unblocks: #1686
2020-02-03 17:55:58 +02:00
cclauss
3208a74f90 Use print() function in both Python 2 and Python 3 2020-01-28 01:38:54 +01:00
Nick Mathewson
cda10a2e89 Git hooks: remove support for 0.2.9 directory layout.
We no longer will be pushing or committing things in branches that
use src/common or src/or.

Resolves ticket 32957.
2020-01-23 10:28:09 -05:00
David Goulet
3484608bda practracker: Make it happy
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-01-21 10:31:29 -05:00
teor
28c8c63de9 add_c_file: Replace asserts with exceptions
Closes 32962.
2020-01-20 13:27:40 +10:00
teor
2c75d4a8d0 add_c_file: Improve script documentation
Part of 32962.
2020-01-20 13:20:14 +10:00
teor
0418bc0cb2 add_c_file: Improve tor source directory checks
Check that the script isn't in a tor build directory, by looking
for a src/include.am file.

Part of 32962.
2020-01-20 13:04:02 +10:00
teor
eb336e23a6
add_c_file: Rename variables based on the type of path
* fname for generic file paths
* tor_fname for paths relative to the top-level tor directory
* src_fname for paths relative to tor's src directory

With prefixes as required to disambiguate different paths of the same
type.

Part of 32962.
2020-01-16 09:27:57 +10:00
teor
b828588499
add_c_file: Simplify some usage of srcdir_file()
Part of 32962.
2020-01-16 09:26:08 +10:00
teor
3d50efcf98
add_c_file: Document the paths used by each part of the script
Most paths are relative to the top-level tor directory, but the
paths in the C and H files are relative to tor's src directory.

Part of 32962.
2020-01-16 09:26:04 +10:00
teor
207d2625ed
add_c_file: Improve path handling and canonicalisation
* distinguish between paths relative to the top-level tor directory,
  and paths relative to tor's src directory
* canonicalise paths before using them
* check that the script is run from the top-level tor directory
* check that the file is being created in tor's src directory

Part of 32962.
2020-01-16 09:25:58 +10:00
Nick Mathewson
4f45ad1394
add_c_file: tolerate ./ in filenames. 2020-01-16 09:23:54 +10:00
Nick Mathewson
ef1744e2c9
add_c_file: handle adding to the end of a list correctly.
Fixes bug 32962.
2020-01-16 09:23:49 +10:00
Nick Mathewson
5e70c27e85 Merge remote-tracking branch 'tor-github/pr/1657' 2020-01-15 13:10:14 -05: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
teor
8095c785f1
Merge branch 'maint-0.4.2' 2020-01-14 17:41:44 +10:00
teor
7e111d0eaa
practracker: print a notice to stderr when disabled
When TOR_DISABLE_PRACTRACKER is set, print a message to
stderr when skipping practracker checks.

Part of 32705.
2020-01-14 17:41:00 +10:00
Nick Mathewson
6b1592b564 test_practracker.sh: never disable practracker
When practracker is disabled, its output will be empty.  We don't
want that happening during our tests.

Fixes bug 32705; bugfix on 0.4.2.1-alpha, when test_practracker.sh
was introduced.
2020-01-13 16:17:51 -05:00
Nick Mathewson
73ac1add3f Split core/include.am into per-subdirectory include.am files
Closes ticket 32137.
2020-01-13 09:34:17 -05:00
rl1987
c0dd214c8a Remove 0.2.9 from git scripts 2019-12-30 12:41:08 +07:00
teor
ac3a9aaf0d
Makefile/git scripts: Add comments to keep owned file lists in sync 2019-12-20 09:35:18 +10:00
teor
5c98a42f49
Merge remote-tracking branch 'tor-github/pr/1584' 2019-12-19 19:33:29 +10:00
teor
1619f14a04
python: Add __future__ imports for python 3 compatibility
Except for src/ext, which we may not want to modify.

Closes ticket 32732.
2019-12-12 15:58:51 +10:00
Nick Mathewson
e93801bfe6 Port changelog tools to python 3
Closes ticket 32704.
2019-12-09 10:53:48 -05:00
teor
9a556dee81
cocci: Require spatch >= 1.0.4 to run checks
No changes file required: not in any released version of tor.

Fixes bug 32663.
2019-12-05 10:27:47 +10:00
Nick Mathewson
fcb5656128 Merge branch 'ticket32609_squashed' 2019-12-04 12:15:28 -05:00
teor
b0f1b760ae practracker: document !advisory in includes.py 2019-12-04 12:15:22 -05:00
teor
8861ad85d0 git scripts: Add the checkSpace.pl unit tests
Extra testing after 32613.
2019-12-04 12:15:22 -05:00
teor
19324ff0ba practracker: Test for bad ".c" includes in the unit tests
Part of 32522.
2019-12-04 12:15:22 -05:00
teor
5ce45ac907 Makefile/git scripts: Add the practracker unit tests
Add a check-practracker-unit-test target, and run it as part of
"make check".

Add the practracker unit tests to scripts/git/pre-commit.git-hook.

Part of 32609.
2019-12-04 12:15:22 -05:00
Nick Mathewson
8a10a74870
Have checkSpaceTest.sh exit as skipped when on Windows
Managing line-ending issues for this one isn't worth it.
2019-12-03 12:56:50 +10:00
Nick Mathewson
bd61a4e848
Add a simple test for checkSpace.pl
This script is not expected to work on windows due to line-ending
issues, so I'm not making it get run on an automated basis.  We
should use it when editing checkSpace.pl.

Closes ticket 32613.
2019-12-03 12:56:46 +10:00
Nick Mathewson
2aaa7ae6e2 checkSpace.pl: make output more uniform.
There were lots of slight differences in indentation and formatting
among the in-file error messages.
2019-11-26 12:58:25 -05:00
teor
fadd292bf0
practracker/includes.py: Don't read editor temp files
(Or any files that start with "." or "#".)

Obviously correct changes to already-reviewed code.
2019-11-26 17:52:18 +10:00
teor
0ce11433c0
check-spaces: Fix an outdated comment 2019-11-26 11:02:28 +10:00
teor
ab70c315bd
practracker: Fix a typo in a logging function call
Obviously correct changes to already-reviewed code.
2019-11-26 11:01:34 +10:00
Nick Mathewson
31f8b4fa65 Merge branch 'stream-socks-auth' into bug19859_merged 2019-11-25 07:58:02 -05:00
Nick Mathewson
d9d75d4ae1 rename_c_identifier: don't crash when doing only one replacement. 2019-11-23 15:30:18 -05:00
Nick Mathewson
5060007f4b Split log configuration out of options_act_reversible(). 2019-11-19 16:03:32 -05:00
George Kadianakis
53ac9a9a91 Add changes file for #30381. 2019-11-18 19:21:10 +02:00
David Goulet
1371d29e5b Merge branch 'tor-github/pr/1489' 2019-11-14 10:37:14 -05:00
teor
3b4a360ed0
practracker: Don't read editor temp files, attempt 2
(Or any files that start with "." or "#".)

Obviously correct changes to already-reviewed code.
2019-11-14 16:12:19 +10:00
teor
7ee1e16c6f
scripts/git: Stop failing when upstream branches don't exist
If you add a custom remote, or a new branch, and don't fetch first,
then the script would fail when checking for unchanged branches.

Instead, skip the check: a new branch is definitely a change.
2019-11-07 12:04:51 +10:00
teor
3864536b7c
scripts/git: Remove extra printfs from a bad merge 2019-11-07 12:04:22 +10:00
teor
e6b5a1ff93
shellcheck: Fix minor issues in some scripts
Fix minor issues in git-push-all.sh, git-setup-dirs.sh and
test_parseconf.sh.

Fixes bug 32402; not in any released version of tor.
Obviously correct changes to already reviewed code.
2019-11-06 16:21:01 +10:00
teor
f7b45975bf
Merge branch 'bug32402_042' into bug32402_master
Merge changes from master with shellcheck fixes.
2019-11-06 16:14:06 +10:00
teor
7f23d47f72
shellcheck: Fix issues in the git-*.sh scripts
Fixes bug 32402; bugfix on 0.4.2.1-alpha.
Obviously correct changes to already reviewed code.
2019-11-06 16:09:31 +10:00
teor
57baea701f
shellcheck: Start checking most scripts for errors
This check was accidentally disabled by a bad find command.

Fixes bug 32402; bugfix on 0.4.2.1-alpha.
Obviously correct changes to already reviewed code.
2019-11-06 15:49:50 +10:00
teor
60d5ff303d
practracker: Preserve improvements 2019-11-05 14:28:02 +10:00
teor
6169469546
Merge remote-tracking branch 'tor-github/pr/1477' 2019-11-05 14:23:10 +10:00
teor
bcb38d984d practracker: Update the exceptions file with improvements
Regenerate the exceptions file, but only commit the improvements.

Includes changes from 32213 and other tickets.
2019-11-05 12:50:08 +10:00
teor
81972353cb scripts: Fix update_versions.py for out-of-tree builds
Fixes bug 32371; bugfix on 0.4.0.1-alpha.
2019-11-05 12:00:59 +10:00
teor
c065ad3e3d practracker: Rename functions modified by a previous commit
Part of 32213.
2019-11-05 11:36:26 +10:00
JeremyRand
736322ce61
Bug #19859: Increase function-size exception to 124 2019-11-03 07:11:08 +00:00
teor
1ffb3b549f
scripts/git: Add TOR_EXTRA_REMOTE_* for an extra git remote
When running git-setup-dirs.sh.

Part of 32347.
2019-10-31 14:59:19 +10:00
teor
38e8cca6a1
scripts/git: Add TOR_EXTRA_CLONE_ARGS for git clone
When running git-setup-dirs.sh.

Part of 32347.
2019-10-31 14:59:16 +10:00
teor
995618ec61
scripts/git: Make a master symlink in the worktree directory
When running git-setup-dirs.sh.

Part of 32347.
2019-10-31 14:59:12 +10:00
teor
e046903f93
scripts/git: Restore a dropped check for pre-commit in pre-push
Bugfix on 31919; not in any released version of Tor.
2019-10-31 14:51:31 +10:00
teor
7e73c0d5a1
scripts/git: Print the correct path in git-setup-dirs.sh 2019-10-31 14:39:49 +10:00
teor
cb7340abf1
scripts/git: Don't use spaces in git URLs 2019-10-31 13:56:59 +10:00
teor
3479024cb1 scripts: Change to the top source directory as needed
Bugfix on 31919; not in any released version of tor.
2019-10-28 13:28:50 +10:00
teor
18e09913bf
practracker: Don't read editor temp files
(Or any dot files.)

Obviously correct changes to already-reviewed code.
2019-10-28 13:09:58 +10:00
teor
68befa3b84
scripts/git: Fix a shellcheck error in pre-commit.git-hook
Some versions of shellcheck do not detect this error.

Bugfix on 31919; not in any released version of tor.
2019-10-28 13:04:29 +10:00
Nick Mathewson
e7993dc046 Merge branch 'ticket31241_v3' 2019-10-25 08:10:39 -04:00
teor
00c3fba61c
scripts/maint: Stop assuming that python3 is in /usr/bin
Obviously correct fix to rename_c_identifier.py.

Bugfix on 32237; not in any released version of tor.
2019-10-25 16:46:54 +10:00
teor
f40eb2ead6
Merge remote-tracking branch 'tor-github/pr/1462' 2019-10-25 16:14:37 +10:00
Nick Mathewson
dc6d7f072d Make foo_validate() functions call config_validate().
The former foo_validate() functions are now toplevel
legacy_validate_fn callbacks.  The new foo_validate() functions now
call them.

This change lets us remove the old shared_random disk state
validation callback entirely.
2019-10-24 20:30:32 -04:00
teor
b3d035d5c4
Merge remote-tracking branch 'tor-github/pr/1463' 2019-10-25 10:27:41 +10:00
Nick Mathewson
fcdb66acd3 Add a script to rename C identifiers, and optionally add a commit message
This script should "pay for itself" if it prevents one bug caused by
careless search-replace-commit loops.
2019-10-24 08:20:31 -04:00
teor
1094389d82
scripts/git: Make spaces consistent in pre-push.git-hook
Part of 31919.
2019-10-24 14:10:30 +10:00
teor
b4b316631d
scripts/git: Only check modified files in existing git hook checks
Part of 31919.
2019-10-24 14:10:26 +10:00
teor
b9a2286765
scripts/git: Add check_cocci_parse.sh to the pre-commit hook
But only check modified files, which dramatically speeds up
check_cocci_parse.sh.

Part of 31919.
2019-10-24 14:09:53 +10:00
teor
71b8b7ee2d
scripts/cocci: Check owned src in check_cocci_parse.sh by default
Check the tor-owned sources in an 0.3.5 directory layout, if no
files are provided on the command line.

Part of 31919.
2019-10-24 14:09:45 +10:00
teor
330717f018
scripts/cocci: Add check_cocci_parse.sh and default exceptions
Add check_cocci_parse.sh, which is a thin wrapper around
try_parse.sh. Add a default exceptions file, and use it in
check_cocci_parse.sh.

Part of 31919.
2019-10-24 11:40:58 +10:00
teor
87ee49e016
scripts/cocci: Remove unused arguments from try_parse.sh spatch
Part of 31919.
2019-10-24 11:40:54 +10:00
teor
9a96068a0b
scripts/cocci: Add an exceptions file to try_parse.sh
Set $TOR_COCCI_EXCEPTIONS_FILE to the name of an exceptions file,
containing a list of filename patterns matched by 'grep -f'.

Part of 31919.
2019-10-24 11:40:51 +10:00
teor
20606b8a15
Merge remote-tracking branch 'tor-github/pr/1447' 2019-10-24 10:00:47 +10:00
teor
f43a7a4d96
scripts/git: Avoid sleeping before the last push in git-push-all.sh
Change the loop order, so that we only sleep between pushes,
and avoid sleeping after all the pushes are done.

(In rare cases, there may still be an extra sleep.)

Part of 32216.
2019-10-23 13:28:37 +10:00
teor
4f6f006c99
scripts/git: Make git-push-all.sh skip more branches that match upstream
The script now skips master, maint-* and release-* branches that match
upstream, not just test branches.

And fix "no branches" bugs that this change makes happen more often.

Part of 32216.
2019-10-23 13:28:15 +10:00
teor
9a3b768fae
scripts/git: Pass all unrecognised arguments to git-push-all.sh
This makes the behaviour of git-push-all.sh -n identical to the other
git scripts.

Part of 32216.
2019-10-23 13:04:28 +10:00
teor
71191fa3dc
scripts/git: Fix a variable name typo in git-push-all.sh
Obviously correct changes to already reviewed code.
2019-10-23 13:01:55 +10:00
Nick Mathewson
b2d487ae22 Merge branch 'ticket31705_v2' into ticket31705_v2_merged
Conflicts:
	src/feature/dirparse/authcert_parse.c
	src/feature/dirparse/ns_parse.c
	src/feature/hs/hs_service.c
	src/lib/conf/conftesting.h
	src/lib/log/log.h
	src/lib/thread/threads.h
	src/test/test_options.c

These conflicts were mostly related to autostyle improvements, with
one or two due to doxygen fixes.
2019-10-22 09:39:06 -04:00
Nick Mathewson
3e41459dff confmacros.h: fix coccinelle parsing. 2019-10-22 09:32:13 -04:00
Nick Mathewson
d6ce8527f8 tor-coccinelle.h: add a definition for EXTERN 2019-10-22 09:32:13 -04:00
Nick Mathewson
6696a5bbae tor-coccinelle.h: add HANDLE_{DECL,IMPL} 2019-10-22 09:32:13 -04:00
Nick Mathewson
d129b503c0 tor-coccinelle.h: add EAT_SEMICOLON 2019-10-22 09:32:13 -04:00
Nick Mathewson
2e64dfea95 tor-coccinelle.h: add CHECK_SCANF 2019-10-22 09:32:13 -04:00
Nick Mathewson
7798c53c98 tor-coccinelle.h: add MOCK_DECL 2019-10-22 09:24:25 -04:00
Nick Mathewson
18f1624bbe tor-coccinelle.h: handle SLIST and LIST. 2019-10-22 09:24:25 -04:00
Nick Mathewson
a2bb66c355 Add a "COCCI" macro that we tell coccinelle is always defined.
This will let us give specific in-file equivalents to given macros
or preprocessor directives, to make things parse.
2019-10-22 09:24:25 -04:00
Nick Mathewson
ea47e53252 tor-coccinelle.h: handle NS and NS_DECL. 2019-10-22 09:24:25 -04:00
Nick Mathewson
017c62000c tor-coccinelle: handle SIMPLEQ and TAILQ better. 2019-10-22 09:24:25 -04:00
Nick Mathewson
c13c0c8999 tor-coccinelle.h: Add {EN,DIS}ABLE_GCC_WARNING. 2019-10-22 09:24:25 -04:00
Nick Mathewson
eb1260e346 tor-coccinelle: expect parentheses after HT_INITIALIZER 2019-10-22 09:24:25 -04:00
Nick Mathewson
51c2097586 try_parse.sh: add a verbose mode and a meaningful exit code. 2019-10-22 09:24:25 -04:00
Nick Mathewson
9ab96550da document test-operator-cleanup 2019-10-22 09:24:25 -04:00
Nick Mathewson
b4e1dc747e Merge remote-tracking branch 'tor-github/pr/1420' 2019-10-21 18:45:34 -04:00
Nick Mathewson
264c5312eb Merge branch 'maint-0.4.2' 2019-10-18 12:32:49 -04:00
Alexander Færøy
95e3527df0 Bump practracker exception limit for process_win32_exec().
I have added a larger comment there and one line of code, so I think
this bump is reasonable.

See: https://bugs.torproject.org/31810
2019-10-17 21:12:51 +02:00
teor
85d0a458c2
scripts: Add git-setup-dirs.sh, which sets up maintainer git repos
git-setup-dirs.sh sets up an upstream git repository and worktrees,
so that tor maintainers can do merges.

Closes ticket 29603.
2019-10-17 14:47:48 +10:00
teor
e6bb23434e Merge remote-tracking branch 'tor-github/pr/1419'
Obviously correct fixes to code that's already been reviewed.
2019-10-17 13:47:42 +10:00
Nick Mathewson
2c97cf3add Merge remote-tracking branch 'tor-github/pr/1329' 2019-10-16 12:31:47 -04:00
Nick Mathewson
08fd551e9f Regenerate practracker exceptions file for 0.4.3 progress. 2019-10-16 09:15:00 -04:00
Nick Mathewson
8ce17e0b35 practracker: add a missing #. 2019-10-16 09:15:00 -04:00
teor
11b5946e49 scripts: Fix a git script comment 2019-10-15 13:58:53 +10:00
teor
028987a0a1 scripts: Merge forward test branch _042 into test branch _master
Fixes an issue where test branch _041 was merged into _042 and _master.
This issue only affects test branch mode (-t).
2019-10-15 13:36:56 +10:00
Nick Mathewson
78f4e29219 git scripts: add maint/release-0.4.2. 2019-10-11 17:26:34 -04:00
Nick Mathewson
a4790e7d4b maint-0.4.2: remove ".enable_practracker_in_hooks". 2019-10-11 17:18:55 -04:00
Nick Mathewson
4ab85f4928 Document tor-coccinelle.h 2019-10-09 09:23:49 -04:00
Nick Mathewson
5fd137c482 Merge remote-tracking branch 'tor-github/pr/1358' 2019-10-03 09:11:49 -04:00
teor
3d17fafa04
control/control: Refactor some error handling code
Split some protocol error handling out of
connection_control_process_inbuf().

This refactor reduces the size of a practracker exception.

Closes 31840.
2019-10-03 11:35:42 +10:00
George Kadianakis
4673cb8168 Merge branch 'tor-github/pr/1339' 2019-09-30 13:44:59 +03:00
Nick Mathewson
fc1134e3e5 annotate_ifdef_directives: test edge-case of 80-char line
An 80-character line (79 characters if you don't count the newline)
should not be truncated, and should not have a "..." insterted.
2019-09-27 21:04:22 -04:00
Nick Mathewson
21c9f7c85e Annotate_ifdef_directives: doctest for 80-column lines. 2019-09-27 21:04:22 -04:00