Nick Mathewson
c8ee12b2e8
Recover better from empty/invalid storagedir files
...
If we can't read a file because of an FS issue, we say "we can't
read that" and move on. But if we can't read it because it's empty,
because it has no labels, or because its labels are misformatted, we
should remove it.
Fixes bug 24099; bugfix on 0.3.1.1-alpha.
2017-11-20 10:14:41 -05:00
Nick Mathewson
cabcb752d7
In storagedir, take more care with errno on empty or mislabeled file
...
Required for 24099 fix -- we won't be able to act based on errno
unless we can trust it.
2017-11-20 10:10:13 -05:00
Nick Mathewson
04812e59df
Merge branch 'maint-0.3.2'
2017-11-20 08:39:39 -05:00
Nick Mathewson
e0f7a2dbd4
Merge branch 'bug23681_029_01_squashed' into maint-0.3.2
2017-11-20 08:39:34 -05:00
David Goulet
981bb60575
circuit: Don't timeout opened C_INTRODUCING circuit
...
A circuit with purpose C_INTRODUCING means that its state is opened but the
INTRODUCE1 cell hasn't been sent yet. We shouldn't consider that circuit when
looking for timing out "building circuit". We have to wait on the rendezvous
circuit to be opened before sending that cell so the intro circuit needs to be
kept alive for at least that period of time.
This patch makes that the purpose C_INTRODUCING is ignored in the
circuit_expire_building() which means that we let the circuit idle timeout
take care of it if we end up never using it.
Fixes #23681
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-11-20 08:33:44 -05:00
Nick Mathewson
2e590bac97
Remove changes files that have already been merged in 0.3.2.x
2017-11-18 11:23:41 -05:00
Nick Mathewson
fd40be15ef
Merge branch 'maint-0.3.2'
2017-11-18 11:03:16 -05:00
Nick Mathewson
65a6103afc
Merge branch 'maint-0.3.1' into maint-0.3.2
...
"Ours" merge to avoid taking ticket18329_minimal_025
2017-11-18 11:02:58 -05:00
Nick Mathewson
7358559524
Merge branch 'maint-0.3.0' into maint-0.3.1
2017-11-18 11:02:42 -05:00
Nick Mathewson
2d849716df
Merge branch 'maint-0.2.9' into maint-0.3.0
2017-11-18 11:02:08 -05:00
Nick Mathewson
53c3174ee4
Merge branch 'maint-0.2.8' into maint-0.2.9
2017-11-18 11:01:43 -05:00
Nick Mathewson
d388f9d879
Merge branch 'maint-0.2.5' into maint-0.2.8
2017-11-18 11:01:33 -05:00
Nick Mathewson
831d3b794d
Merge branch 'ticket18329_minimal_025' into maint-0.2.5
2017-11-18 11:00:45 -05:00
Nick Mathewson
43e0472fcf
Move an assertion to make scan-build happy again.
2017-11-18 10:51:23 -05:00
Nick Mathewson
7813b0e0ed
Merge branch 'maint-0.3.2'
2017-11-18 10:27:29 -05:00
Nick Mathewson
d45bf0c65c
Add an extra check in test_entrynodes
...
This check makes it so we can reach "done" without setting "conn",
and so the "if (conn)" check will not be redundant, and so coverity
won't complain. Fixes CID 1422205. Not actually a bug.
2017-11-18 10:26:45 -05:00
Nick Mathewson
b9bce4288e
Merge branch 'maint-0.3.2'
2017-11-18 10:23:52 -05:00
Nick Mathewson
a5b8b55c1c
Fix memory leak in unit test for bridge distribution config.
...
Also, check for the actual message, and fix some string confusion,
while we're at it.
Fixes bug 24345; bugfix on 0.3.2.3-alpha.
2017-11-18 10:22:14 -05:00
Nick Mathewson
2f086888b1
Make all the crypto free() functions macros that clear their targets
2017-11-17 12:01:30 -05:00
Nick Mathewson
94db8f32e4
Make all the free() functions from container.h clear their targets
2017-11-17 12:01:19 -05:00
Nick Mathewson
c1bdb80aba
Add a macro to call a free_ function and clear a variable
2017-11-17 11:45:47 -05:00
Nick Mathewson
fcdec00685
Merge branch 'maint-0.3.2'
2017-11-17 09:59:26 -05:00
Nick Mathewson
9c17a6d28b
Merge branch 'bug23817_tests_032' into maint-0.3.2
2017-11-17 09:58:12 -05:00
Nick Mathewson
3a5ca47d8f
Fix a clang unitialized-var warning
2017-11-17 09:57:52 -05:00
George Kadianakis
7e52947d57
Intoduce unittest for skipping outdated dirservers.
2017-11-17 09:57:46 -05:00
Nick Mathewson
9fbc835f10
Fix a wide comment
2017-11-17 09:57:15 -05:00
Nick Mathewson
2cee26b164
Merge branch 'bug23817_031' into maint-0.3.2
2017-11-17 09:56:53 -05:00
Nick Mathewson
96b69942a5
Make should_set_md_dirserver_restriction() look at num filtered guards
...
This seems closer to what the code intended.
2017-11-17 09:52:41 -05:00
George Kadianakis
c400ffc2e8
Skip dirserver restrictions in small networks.
2017-11-17 09:52:41 -05:00
George Kadianakis
f61e3090fb
Introduce new guard restriction and use it to skip outdated dirs.
2017-11-17 09:52:40 -05:00
George Kadianakis
7fc64f02a3
Introduce cache for outdated microdesc dirservers.
...
We gonna use this cache to avoid dirservers without outdated md info.
2017-11-17 09:52:40 -05:00
Nick Mathewson
94dce246ee
Merge branch 'maint-0.3.2'
2017-11-17 09:26:11 -05:00
Matt Traudt
b98614f1af
Only log about lost KIST support once
2017-11-17 09:25:47 -05:00
Matt Traudt
8b2c01a46f
Use less jargon in Scheduler sec. of man page
2017-11-17 09:25:07 -05:00
Matt Traudt
3537f7801d
Add notes about OS support for our scheduler types
2017-11-17 09:25:01 -05:00
Nick Mathewson
cfacd44240
Merge branch 'maint-0.3.2'
2017-11-17 09:23:07 -05:00
Nick Mathewson
85778dc92d
Merge remote-tracking branch 'dgoulet/bug23861_032_01' into maint-0.3.2
2017-11-17 09:23:04 -05:00
Neel Chauhan
eb793c31cf
Add error message for exit_node in hs_circ_send_introduce1()
2017-11-17 08:42:07 -05:00
Neel Chauhan
b8addf9746
Use memset() on intro1_data in hs_circ_send_introduce1()
2017-11-17 08:42:07 -05:00
Neel Chauhan
27d34f36e0
Add smartlist_add() to get_lspecs_from_node)
2017-11-17 08:42:07 -05:00
Nick Mathewson
368dc1003e
Merge branch 'maint-0.3.2'
2017-11-17 08:35:56 -05:00
Nick Mathewson
3a364309ac
Merge branch 'bug24167_025' into maint-0.3.2
2017-11-17 08:35:52 -05:00
Nick Mathewson
4ef70ff389
Merge branch 'maint-0.3.2'
2017-11-17 08:35:04 -05:00
Nick Mathewson
0571015819
Merge branch 'ticket24097_032' into maint-0.3.2
2017-11-17 08:35:01 -05:00
Nick Mathewson
4b56df9874
Merge branch 'maint-0.3.2'
2017-11-17 08:34:23 -05:00
Nick Mathewson
0684e6c6f0
Merge branch 'bug20963_032' into maint-0.3.2
2017-11-17 08:34:05 -05:00
Nick Mathewson
80bf270404
Add a changes file.
2017-11-16 14:07:58 -05:00
Nick Mathewson
2d3904aba6
Check the libc version to decide whether to allow openat.
2017-11-16 14:06:38 -05:00
Nick Mathewson
d2d6a1b082
Make our seccomp2 sandbox handle Glibc 2.26
...
There are three changes here:
* We need to allow epoll_pwait.
* We need to allow PF_NETLINK sockets to be opened with SOCK_CLOEXEC.
* We need to use openat() instead of open().
Note that this fix is not complete, since the openat() change is
turned off. The next commit will make the openat() change happen
when we're running glibc 2.26 or later.
Fix for 24315.
2017-11-16 13:56:22 -05:00
Nick Mathewson
7461cd3067
Permit kill(pid, 0) in the seccomp2 sandbox.
...
We don't want to allow general signals to be sent, but there's no
problem sending a kill(0) to probe whether a process is there.
Fixes bug 24198; bugfix on 0.2.5.1-alpha when the seccomp2 sandbox
was introduced.
2017-11-16 12:44:47 -05:00