]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
6 years agoprop289: Rename packaged functions with better name
David Goulet [Thu, 7 Mar 2019 16:45:38 +0000 (11:45 -0500)] 
prop289: Rename packaged functions with better name

The circuit and stream level functions that update the package window have
been renamed to have a "_note_" in them to make their purpose more clear.

Part of #26288

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Move SENDME cell processing in a separate function
David Goulet [Thu, 7 Mar 2019 16:35:52 +0000 (11:35 -0500)] 
prop289: Move SENDME cell processing in a separate function

No behavior change. Only moving code and fixing part of it in order to use the
parameters passed as pointers.

Part of #26288

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Use a 20 bytes digest instead of 4
David Goulet [Thu, 7 Mar 2019 16:20:23 +0000 (11:20 -0500)] 
prop289: Use a 20 bytes digest instead of 4

To achieve such, this commit also changes the trunnel declaration to use a
union instead of a seperate object for the v1 data.

A constant is added for the digest length so we can use it within the SENDME
code giving us a single reference.

Part of #26288

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agotests: Implement unit tests for SENDME v1
David Goulet [Tue, 19 Feb 2019 19:49:38 +0000 (14:49 -0500)] 
tests: Implement unit tests for SENDME v1

Part of #26288

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Add random bytes to the unused portion of the cell
David Goulet [Tue, 19 Feb 2019 20:02:11 +0000 (15:02 -0500)] 
prop289: Add random bytes to the unused portion of the cell

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Remember the last cell digest for v1 SENDMEs
David Goulet [Wed, 23 Jan 2019 19:39:04 +0000 (14:39 -0500)] 
prop289: Remember the last cell digest for v1 SENDMEs

In order to do so, depending on where the cell is going, we'll keep the last
cell digest that is either received inbound or sent outbound.

Then it can be used for validation.

Part of #26288

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Match the SENDME digest
David Goulet [Wed, 9 Jan 2019 20:27:51 +0000 (15:27 -0500)] 
prop289: Match the SENDME digest

Now that we keep the last seen cell digests on the Exit side on the circuit
object, use that to match the SENDME v1 transforming this whole process into a
real authenticated SENDME mechanism.

Part of #26841

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Keep track of the last seen cell digests
David Goulet [Wed, 9 Jan 2019 20:08:14 +0000 (15:08 -0500)] 
prop289: Keep track of the last seen cell digests

This makes tor remember the last seen digest of a cell if that cell is the
last one before a SENDME on the Exit side.

Closes #26839

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Support SENDME v1 cell parsing
David Goulet [Wed, 9 Jan 2019 19:03:32 +0000 (14:03 -0500)] 
prop289: Support SENDME v1 cell parsing

This commit makes tor able to parse and handle a SENDME version 1. It will
look at the consensus parameter "sendme_accept_min_version" to know what is
the minimum version it should look at.

IMPORTANT: At this commit, the validation of the cell is not fully
implemented. For this, we need #26839 to be completed that is to match the
SENDME digest with the last cell digest.

Closes #26841

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Support sending SENDME version 1
David Goulet [Wed, 9 Jan 2019 17:22:35 +0000 (12:22 -0500)] 
prop289: Support sending SENDME version 1

This code will obey the consensus parameter "sendme_emit_min_version" to know
which SENDME version it should send. For now, the default is 0 and the
parameter is not yet used in the consensus.

This commit adds the support to send version 1 SENDMEs but aren't sent on the
wire at this commit.

Closes #26840

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Add SENDME trunnel declaration
David Goulet [Tue, 8 Jan 2019 16:13:37 +0000 (11:13 -0500)] 
prop289: Add SENDME trunnel declaration

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoprop289: Add two consensus parameters
David Goulet [Wed, 9 Jan 2019 17:02:01 +0000 (12:02 -0500)] 
prop289: Add two consensus parameters

In order to be able to deploy the authenticated SENDMEs, these two consensus
parameters are needed to control the minimum version that we can emit and
accept.

See section 4 in prop289 for more details.

Note that at this commit, the functions that return the values aren't used so
compilation fails if warnings are set to errors.

Closes #26842

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Always close stream if deliver window is negative
David Goulet [Wed, 9 Jan 2019 16:03:49 +0000 (11:03 -0500)] 
sendme: Always close stream if deliver window is negative

Previously, we would only close the stream when our deliver window was
negative at the circuit-level but _not_ at the stream-level when receiving a
DATA cell.

This commit adds an helper function connection_edge_end_close() which
sends an END and then mark the stream for close for a given reason.

That function is now used both in case the deliver window goes below zero for
both circuit and stream level.

Part of #26840

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Add helper functions for DATA cell packaging
David Goulet [Fri, 11 Jan 2019 16:36:08 +0000 (11:36 -0500)] 
sendme: Add helper functions for DATA cell packaging

When we are about to send a DATA cell, we have to decrement the package window
for both the circuit and stream level.

This commit adds helper functions to handle the package window decrement.

Part of #26288

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Add helper functions for DATA cell delivery
David Goulet [Wed, 9 Jan 2019 15:39:58 +0000 (10:39 -0500)] 
sendme: Add helper functions for DATA cell delivery

When we get a relay DATA cell delivered, we have to decrement the deliver
window on both the circuit and stream level.

This commit adds helper functions to handle the deliver window decrement.

Part of #26840

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Refactor SENDME cell processing
David Goulet [Tue, 8 Jan 2019 20:03:04 +0000 (15:03 -0500)] 
sendme: Refactor SENDME cell processing

This is a bit of a complicated commit. It moves code but also refactors part
of it. No behavior change, the idea is to split things up so we can better
handle and understand how SENDME cells are processed where ultimately it will
be easier to handle authenticated SENDMEs (prop289) using the intermediate
functions added in this commit.

The entry point for the cell arriving at the edge (Client or Exit), is
connection_edge_process_relay_cell() for which we look if it is a circuit or
stream level SENDME. This commit refactors that part where two new functions
are introduced to process each of the SENDME types.

The sendme_process_circuit_level() has basically two code paths. If we are a
Client (the circuit is origin) or we are an Exit. Depending on which, the
package window is updated accordingly. Then finally, we resume the reading on
every edge streams on the circuit.

The sendme_process_stream_level() applies on the edge connection which will
update the package window if needed and then will try to empty the inbuf if
need be because we can now deliver more cells.

Again, no behavior change but in order to split that code properly into their
own functions and outside the relay.c file, code modification was needed.

Part of #26840.

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Modernize and cleanup old moved code
David Goulet [Tue, 8 Jan 2019 17:09:01 +0000 (12:09 -0500)] 
sendme: Modernize and cleanup old moved code

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Move code to the new files sendme.{c|h}
David Goulet [Tue, 8 Jan 2019 16:31:32 +0000 (11:31 -0500)] 
sendme: Move code to the new files sendme.{c|h}

Take apart the SENDME cell specific code and put it in sendme.{c|h}. This is
part of prop289 that implements authenticated SENDMEs.

Creating those new files allow for the already huge relay.c to not grow in LOC
and makes it easier to handle and test the SENDME cells in an isolated way.

This commit only moves code. No behavior change.

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'maint-0.4.0'
Nick Mathewson [Mon, 29 Apr 2019 14:15:11 +0000 (10:15 -0400)] 
Merge branch 'maint-0.4.0'

6 years agoMerge remote-tracking branch 'tor-github/pr/974' into maint-0.4.0
Nick Mathewson [Mon, 29 Apr 2019 14:15:03 +0000 (10:15 -0400)] 
Merge remote-tracking branch 'tor-github/pr/974' into maint-0.4.0

6 years agoMerge remote-tracking branch 'tor-github/pr/889'
Nick Mathewson [Fri, 26 Apr 2019 00:25:34 +0000 (20:25 -0400)] 
Merge remote-tracking branch 'tor-github/pr/889'

6 years agoMerge remote-tracking branch 'tor-github/pr/922'
Nick Mathewson [Fri, 26 Apr 2019 00:08:39 +0000 (20:08 -0400)] 
Merge remote-tracking branch 'tor-github/pr/922'

6 years agoMerge branch 'maint-0.4.0'
George Kadianakis [Thu, 25 Apr 2019 12:47:07 +0000 (15:47 +0300)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'tor-github/pr/960' into maint-0.4.0
George Kadianakis [Thu, 25 Apr 2019 12:46:45 +0000 (15:46 +0300)] 
Merge branch 'tor-github/pr/960' into maint-0.4.0

6 years agoMerge branch 'tor-github/pr/953'
George Kadianakis [Thu, 25 Apr 2019 12:43:47 +0000 (15:43 +0300)] 
Merge branch 'tor-github/pr/953'

6 years agoMerge remote-tracking branch 'tor-github/pr/942'
Nick Mathewson [Wed, 24 Apr 2019 21:06:56 +0000 (17:06 -0400)] 
Merge remote-tracking branch 'tor-github/pr/942'

6 years agoMerge remote-tracking branch 'tor-github/pr/964'
Nick Mathewson [Wed, 24 Apr 2019 21:05:20 +0000 (17:05 -0400)] 
Merge remote-tracking branch 'tor-github/pr/964'

6 years agoAllow do_resolve() to be longer.
Nick Mathewson [Wed, 24 Apr 2019 18:15:18 +0000 (14:15 -0400)] 
Allow do_resolve() to be longer.

6 years agoMerge branch 'tor-github/pr/951'
David Goulet [Wed, 24 Apr 2019 13:53:15 +0000 (09:53 -0400)] 
Merge branch 'tor-github/pr/951'

6 years agoMerge branch 'tor-github/pr/943'
David Goulet [Wed, 24 Apr 2019 13:51:14 +0000 (09:51 -0400)] 
Merge branch 'tor-github/pr/943'

6 years agoMerge branch 'tor-github/pr/955'
David Goulet [Wed, 24 Apr 2019 13:45:32 +0000 (09:45 -0400)] 
Merge branch 'tor-github/pr/955'

6 years agoMerge branch 'tor-github/pr/939'
David Goulet [Wed, 24 Apr 2019 13:43:28 +0000 (09:43 -0400)] 
Merge branch 'tor-github/pr/939'

6 years agoMerge branch 'tor-github/pr/930'
David Goulet [Wed, 24 Apr 2019 13:39:32 +0000 (09:39 -0400)] 
Merge branch 'tor-github/pr/930'

6 years agoMerge remote-tracking branch 'tor-github/pr/944'
Nick Mathewson [Tue, 23 Apr 2019 19:39:23 +0000 (15:39 -0400)] 
Merge remote-tracking branch 'tor-github/pr/944'

6 years agoRename outvar to follow _out convention.
Nick Mathewson [Tue, 23 Apr 2019 18:14:17 +0000 (14:14 -0400)] 
Rename outvar to follow _out convention.

6 years agoMerge remote-tracking branch 'tor-github/pr/935'
Nick Mathewson [Tue, 23 Apr 2019 18:11:04 +0000 (14:11 -0400)] 
Merge remote-tracking branch 'tor-github/pr/935'

6 years agoMerge remote-tracking branch 'tor-github/pr/971'
Nick Mathewson [Tue, 23 Apr 2019 16:52:54 +0000 (12:52 -0400)] 
Merge remote-tracking branch 'tor-github/pr/971'

6 years agoMerge branch 'ticket30051_take2_squashed'
Nick Mathewson [Tue, 23 Apr 2019 16:51:44 +0000 (12:51 -0400)] 
Merge branch 'ticket30051_take2_squashed'

6 years agoAdd changes file
rl1987 [Fri, 19 Apr 2019 06:51:04 +0000 (09:51 +0300)] 
Add changes file

6 years agoCall practracker from pre-push and pre-commit hooks
rl1987 [Fri, 19 Apr 2019 06:46:36 +0000 (09:46 +0300)] 
Call practracker from pre-push and pre-commit hooks

6 years agoMerge remote-tracking branch 'tor-github/pr/962'
Nick Mathewson [Tue, 23 Apr 2019 16:48:37 +0000 (12:48 -0400)] 
Merge remote-tracking branch 'tor-github/pr/962'

6 years agoStop looking for scripts in the build directory during "make shellcheck"
teor [Tue, 23 Apr 2019 02:31:14 +0000 (12:31 +1000)] 
Stop looking for scripts in the build directory during "make shellcheck"

Fixes bug 30263; bugfix on 0.4.0.1-alpha.

6 years agoTravis: Show stem's tor log after failure
teor [Mon, 22 Apr 2019 01:48:07 +0000 (11:48 +1000)] 
Travis: Show stem's tor log after failure

Closes ticket 30234.

6 years agoInitialize rate_limited in hs_pick_hsdir() to false
Neel Chauhan [Fri, 19 Apr 2019 13:50:54 +0000 (09:50 -0400)] 
Initialize rate_limited in hs_pick_hsdir() to false

6 years agoOnly set rate_limited in hs_pick_hsdir() if rate_limited_count or responsible_dirs_co...
Neel Chauhan [Fri, 19 Apr 2019 13:21:20 +0000 (09:21 -0400)] 
Only set rate_limited in hs_pick_hsdir() if rate_limited_count or responsible_dirs_count is greater than 0

6 years agoInitialize rate_limited to false in directory_get_from_hs_dir()
Neel Chauhan [Fri, 19 Apr 2019 13:17:29 +0000 (09:17 -0400)] 
Initialize rate_limited to false in directory_get_from_hs_dir()

6 years agoMake rate_limited and is_rate_limited a bool
Neel Chauhan [Fri, 19 Apr 2019 12:33:00 +0000 (08:33 -0400)] 
Make rate_limited and is_rate_limited a bool

6 years agoMerge branch 'maint-0.4.0'
teor [Fri, 19 Apr 2019 02:00:59 +0000 (12:00 +1000)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'maint-0.3.5' into maint-0.4.0
teor [Fri, 19 Apr 2019 02:00:50 +0000 (12:00 +1000)] 
Merge branch 'maint-0.3.5' into maint-0.4.0

6 years agoMerge branch 'maint-0.3.4' into maint-0.3.5
teor [Fri, 19 Apr 2019 02:00:41 +0000 (12:00 +1000)] 
Merge branch 'maint-0.3.4' into maint-0.3.5

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.4
teor [Fri, 19 Apr 2019 01:59:18 +0000 (11:59 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.4

"ours" merge, to avoid taking any changes from PR 792 in 0.3.4.
(We already merged PR 791 for 29665 into 0.3.4.)

6 years agoMerge remote-tracking branch 'tor-github/pr/710' into maint-0.3.5
teor [Fri, 19 Apr 2019 01:52:48 +0000 (11:52 +1000)] 
Merge remote-tracking branch 'tor-github/pr/710' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/726' into maint-0.3.5
teor [Fri, 19 Apr 2019 01:51:05 +0000 (11:51 +1000)] 
Merge remote-tracking branch 'tor-github/pr/726' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/745' into maint-0.3.5
teor [Fri, 19 Apr 2019 01:48:41 +0000 (11:48 +1000)] 
Merge remote-tracking branch 'tor-github/pr/745' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/947' into maint-0.3.5
teor [Fri, 19 Apr 2019 01:47:50 +0000 (11:47 +1000)] 
Merge remote-tracking branch 'tor-github/pr/947' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/946' into maint-0.3.4
teor [Fri, 19 Apr 2019 01:47:10 +0000 (11:47 +1000)] 
Merge remote-tracking branch 'tor-github/pr/946' into maint-0.3.4

6 years agoMerge remote-tracking branch 'tor-github/pr/638' into maint-0.3.4
teor [Fri, 19 Apr 2019 01:44:38 +0000 (11:44 +1000)] 
Merge remote-tracking branch 'tor-github/pr/638' into maint-0.3.4

6 years agoMerge remote-tracking branch 'tor-github/pr/791' into maint-0.3.4
teor [Fri, 19 Apr 2019 01:43:46 +0000 (11:43 +1000)] 
Merge remote-tracking branch 'tor-github/pr/791' into maint-0.3.4

6 years agoMerge remote-tracking branch 'tor-github/pr/792' into maint-0.2.9
teor [Fri, 19 Apr 2019 01:42:09 +0000 (11:42 +1000)] 
Merge remote-tracking branch 'tor-github/pr/792' into maint-0.2.9

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.4
teor [Fri, 19 Apr 2019 01:39:17 +0000 (11:39 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.4

"ours" merge, to avoid taking any changes from PR 772 in 0.3.4.
(We already merged a different fix for 23790 into 0.3.2 and later.)

6 years agoMerge remote-tracking branch 'tor-github/pr/772' into maint-0.2.9
teor [Fri, 19 Apr 2019 01:38:52 +0000 (11:38 +1000)] 
Merge remote-tracking branch 'tor-github/pr/772' into maint-0.2.9

6 years agopractracker: accept more lines in microdescs_parse_from_string()
teor [Fri, 19 Apr 2019 00:34:16 +0000 (10:34 +1000)] 
practracker: accept more lines in microdescs_parse_from_string()

Part of 28223.

6 years agoMerge branch 'tor-github/pr/938'
George Kadianakis [Thu, 18 Apr 2019 10:23:32 +0000 (13:23 +0300)] 
Merge branch 'tor-github/pr/938'

6 years agoMerge branch 'tor-github/pr/925'
George Kadianakis [Thu, 18 Apr 2019 10:22:54 +0000 (13:22 +0300)] 
Merge branch 'tor-github/pr/925'

6 years agoMerge branch 'maint-0.4.0'
George Kadianakis [Thu, 18 Apr 2019 10:22:23 +0000 (13:22 +0300)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'tor-github/pr/891' into maint-0.4.0
George Kadianakis [Thu, 18 Apr 2019 10:21:59 +0000 (13:21 +0300)] 
Merge branch 'tor-github/pr/891' into maint-0.4.0

6 years agoGrammar fixes for IPv6Exit in tor.1.txt
Neel Chauhan [Thu, 18 Apr 2019 01:41:31 +0000 (21:41 -0400)] 
Grammar fixes for IPv6Exit in tor.1.txt

6 years agoUpdate tor.1 man page for IPv6Exit
Neel Chauhan [Wed, 17 Apr 2019 11:26:55 +0000 (07:26 -0400)] 
Update tor.1 man page for IPv6Exit

6 years agoRemove contrib/dist/tor.sh.in
rl1987 [Wed, 17 Apr 2019 10:15:02 +0000 (13:15 +0300)] 
Remove contrib/dist/tor.sh.in

6 years agopractracker: accept the extra 25 line string from 27821
teor [Wed, 17 Apr 2019 08:44:26 +0000 (18:44 +1000)] 
practracker: accept the extra 25 line string from 27821

6 years agoconnection_edge: remove an extra ;
teor [Wed, 17 Apr 2019 08:43:20 +0000 (18:43 +1000)] 
connection_edge: remove an extra ;

6 years agoconnection_edge: Return a web page when HTTPTunnelPort is misconfigured
teor [Wed, 17 Apr 2019 07:58:40 +0000 (17:58 +1000)] 
connection_edge: Return a web page when HTTPTunnelPort is misconfigured

Return an informative web page when the HTTPTunnelPort is used as an
HTTP proxy.

Closes ticket 27821, patch by "eighthave".

6 years agoMerge branch 'maint-0.4.0'
teor [Wed, 17 Apr 2019 06:46:47 +0000 (16:46 +1000)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'maint-0.3.5' into maint-0.4.0
teor [Wed, 17 Apr 2019 06:46:40 +0000 (16:46 +1000)] 
Merge branch 'maint-0.3.5' into maint-0.4.0

6 years agochanges: update the changes file for 30001
teor [Wed, 17 Apr 2019 02:34:33 +0000 (12:34 +1000)] 
changes: update the changes file for 30001

6 years agoDo not warn about compatible OpenSSL upgrades
Bernhard M. Wiedemann [Mon, 15 Apr 2019 11:57:24 +0000 (13:57 +0200)] 
Do not warn about compatible OpenSSL upgrades

When releasing OpenSSL patch-level maintenance updates,
we do not want to rebuild binaries using it.
And since they guarantee ABI stability, we do not have to.

Without this patch, warning messages were produced
that confused users:
https://bugzilla.opensuse.org/show_bug.cgi?id=1129411

Fixes bug 30190; bugfix on 0.2.4.2-alpha commit 7607ad2bec

Signed-off-by: Bernhard M. Wiedemann <bwiedemann@suse.de>
6 years agoUpdate practracker exceptions.txt for policies.c
Neel Chauhan [Tue, 16 Apr 2019 13:16:52 +0000 (09:16 -0400)] 
Update practracker exceptions.txt for policies.c

6 years agoClarify comment about IPv6Exit in policies_parse_exit_policy_from_options()
Neel Chauhan [Tue, 16 Apr 2019 12:22:17 +0000 (08:22 -0400)] 
Clarify comment about IPv6Exit in policies_parse_exit_policy_from_options()

6 years agoClarify torrc comment for IPv6Exit
Neel Chauhan [Tue, 16 Apr 2019 12:20:48 +0000 (08:20 -0400)] 
Clarify torrc comment for IPv6Exit

6 years agoAdd policy_using_default_exit_options() to determine if we're using the default exit...
Neel Chauhan [Tue, 16 Apr 2019 12:19:44 +0000 (08:19 -0400)] 
Add policy_using_default_exit_options() to determine if we're using the default exit options

6 years agoMerge remote-tracking branch 'tor-github/pr/910'
Nick Mathewson [Tue, 16 Apr 2019 12:09:20 +0000 (08:09 -0400)] 
Merge remote-tracking branch 'tor-github/pr/910'

6 years agoMerge remote-tracking branch 'tor-github/pr/884'
Nick Mathewson [Tue, 16 Apr 2019 12:08:06 +0000 (08:08 -0400)] 
Merge remote-tracking branch 'tor-github/pr/884'

6 years agoIn warn_if_nul_found, log surrounding context.
Nick Mathewson [Mon, 15 Apr 2019 19:33:09 +0000 (15:33 -0400)] 
In warn_if_nul_found, log surrounding context.

We need to encode here instead of doing escaped(), since fwict
escaped() does not currently handle NUL bytes.

Also, use warn_if_nul_found in more cases to avoid duplication.

6 years agofixup! Even more diagnostic messages for bug 28223.
Nick Mathewson [Mon, 15 Apr 2019 19:21:18 +0000 (15:21 -0400)] 
fixup! Even more diagnostic messages for bug 28223.

Use TOR_PRIuSZ in place of %zu.

6 years agoDocument check for 30176, since it's a bit subtle.
Nick Mathewson [Mon, 15 Apr 2019 18:52:08 +0000 (14:52 -0400)] 
Document check for 30176, since it's a bit subtle.

6 years agoClear memory in smartlist_remove_keeporder.
Tobias Stoeckmann [Sat, 13 Apr 2019 14:55:36 +0000 (16:55 +0200)] 
Clear memory in smartlist_remove_keeporder.

The smartlist functions take great care to reset unused pointers inside
the smartlist memory to NULL.

The function smartlist_remove_keeporder does not clear memory in such
way when elements have been removed. Therefore call memset after the
for-loop that removes elements. If no element is removed, it is
effectively a no-op.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
6 years agoAdd test to verify that unused pointers are NULL.
Tobias Stoeckmann [Sat, 13 Apr 2019 14:54:05 +0000 (16:54 +0200)] 
Add test to verify that unused pointers are NULL.

The smartlist code takes great care to set all unused pointers inside
the smartlist memory to NULL. Check if this is also the case after
modifying the smartlist multiple times.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
6 years agoMerge branch 'bug30189_035' into bug30189_041
Nick Mathewson [Mon, 15 Apr 2019 18:27:32 +0000 (14:27 -0400)] 
Merge branch 'bug30189_035' into bug30189_041

6 years agoUse a tor_abort_() wrapper in our util_bug.h macros
Nick Mathewson [Mon, 15 Apr 2019 18:16:23 +0000 (14:16 -0400)] 
Use a tor_abort_() wrapper in our util_bug.h macros

Previously, our use of abort() would break anywhere that we didn't
include stdlib.h.  This was especially troublesome in case where
tor_assert_nonfatal() was used with ALL_BUGS_ARE_FATAL, since that
one seldom gets tested.

As an alternative, we could have just made this header include
stdlib.h.  But that seems bloaty.

Fixes bug 30189; bugfix on 0.3.4.1-alpha.

6 years agoMerge branch 'tor-github/pr/941'
George Kadianakis [Mon, 15 Apr 2019 10:57:40 +0000 (13:57 +0300)] 
Merge branch 'tor-github/pr/941'

6 years agoMerge branch 'maint-0.4.0'
George Kadianakis [Mon, 15 Apr 2019 10:56:48 +0000 (13:56 +0300)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'tor-github/pr/948' into maint-0.4.0
George Kadianakis [Mon, 15 Apr 2019 10:56:37 +0000 (13:56 +0300)] 
Merge branch 'tor-github/pr/948' into maint-0.4.0

6 years agoMerge branch 'rust-panic1-035' into rust-panic1-040
teor [Mon, 15 Apr 2019 00:18:59 +0000 (10:18 +1000)] 
Merge branch 'rust-panic1-035' into rust-panic1-040

6 years agoMerge branch 'rust-panic1-034' into rust-panic1-035
teor [Mon, 15 Apr 2019 00:18:01 +0000 (10:18 +1000)] 
Merge branch 'rust-panic1-034' into rust-panic1-035

Trivial merge: a blank line was removed between 0.3.4 and 0.3.5.

6 years agoMerge branch 'rust-panic1' into rust-panic1-034
teor [Mon, 15 Apr 2019 00:15:02 +0000 (10:15 +1000)] 
Merge branch 'rust-panic1' into rust-panic1-034

6 years agoRemove unused get_options()
Neel Chauhan [Sun, 14 Apr 2019 18:51:42 +0000 (14:51 -0400)] 
Remove unused get_options()

6 years agoUpdate exceptions.txt for Bug #29613
Neel Chauhan [Sun, 14 Apr 2019 18:27:05 +0000 (14:27 -0400)] 
Update exceptions.txt for Bug #29613

6 years agoAdd changes file for Bug #29613
Neel Chauhan [Fri, 12 Apr 2019 00:22:46 +0000 (20:22 -0400)] 
Add changes file for Bug #29613

6 years agoUpdate torrc.sample.in to IPv6Exit 1 being an exit by default
Neel Chauhan [Fri, 12 Apr 2019 00:22:27 +0000 (20:22 -0400)] 
Update torrc.sample.in to IPv6Exit 1 being an exit by default

6 years agoBecome an exit relay if IPv6Exit is 1
Neel Chauhan [Fri, 12 Apr 2019 00:21:51 +0000 (20:21 -0400)] 
Become an exit relay if IPv6Exit is 1