Nick Mathewson
1e66ab363a
[rust] Add "unsafe" to the testing-mode tor_malloc_ wrapper.
...
This change lets us remove the allow(unused_unsafe) directive
from allocate_and_copy_string().
2017-10-27 12:49:51 -04:00
Nick Mathewson
d64297e4e0
forward-port the 0.3.2.3-alpha changelog
2017-10-27 12:36:14 -04:00
Nick Mathewson
3a364529a4
Make distcleancheck pass with --enable-rust
2017-10-27 12:35:13 -04:00
Nick Mathewson
3cf863df1c
Merge branch 'maint-0.3.2'
...
"ours" merge to avoid version bump.
2017-10-27 12:33:21 -04:00
Nick Mathewson
d5eea977be
bump to 0.3.2.3-alpha-dev.
2017-10-27 12:33:13 -04:00
Nick Mathewson
2153814ba8
Include rust files in 'make dist'
2017-10-27 12:19:31 -04:00
Nick Mathewson
7f764bcba8
repair "make distcheck"
2017-10-27 11:59:15 -04:00
Nick Mathewson
f803c1bb17
declare shutdown_did_not_work_callback() with ATTR_NORETURN
2017-10-27 11:51:42 -04:00
Nick Mathewson
79e7c0af0e
Add a comment about removing the failsafe event loop exit code
2017-10-27 11:15:43 -04:00
Nick Mathewson
0a10335d2e
Clarify doc on tell_event_loop_to_run_external_code()
2017-10-27 11:14:37 -04:00
Nick Mathewson
30a681553f
Merge remote-tracking branch 'public/exit_carefully'
2017-10-27 11:13:05 -04:00
Nick Mathewson
fa78546dbc
Make sure all C files have copyright/license notices
2017-10-27 10:59:36 -04:00
Nick Mathewson
f5e9e2748f
Merge branch 'protover-rust-impl_squashed'
2017-10-27 10:05:30 -04:00
Nick Mathewson
91a1b9058b
Add a changes file
2017-10-27 10:02:08 -04:00
Nick Mathewson
2ca8fcb892
Add missing copyright/license statements on all .rs files
...
(Yes, I have Chelsea's permission.)
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
6be75bd61d
cargo fmt; fix line length warnings
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
90daad999e
remove experimental rust features
...
allow unsafe on function that calls C
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
7999d0bf6b
update tor_allocate and add tests
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
7d126b9db9
remove unused include.am for rust modules
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
cd2a036959
refactor smartlist for readability
...
limit scoping of unsafe, and other cleanup
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
91bca5c31b
move to allocating c strings from rust
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
76bbdfbfa9
add tor allocator for rust
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
d14a83f74f
remove unneeded dependencies, remove types where unnecessary
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
0c4d535972
refactor build infrastructure for single rust binary
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
be583a34a3
use tor allocator for string allocation in rust
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
0c04b54d4d
minimize scope for unsafe
...
update documentation
missing check for null
2017-10-27 10:02:08 -04:00
Chelsea Holland Komlo
d1820c1516
rust implementation of protover
2017-10-27 10:02:08 -04:00
David Goulet
7ee0a2b9aa
sr: Don't use a dynamic voting schedule
...
The exposed get_voting_schedule() allocates and return a new object everytime
it is called leading to an awful lot of memory allocation when getting the
start time of the current round which is done for each node in the consensus.
Closes #23623
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-27 09:23:37 -04:00
David Goulet
60164f057c
dirvote: Move code. No behavior change
...
Needed for next commit to address #23623 .
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-27 09:23:18 -04:00
Nick Mathewson
c4804bb280
Merge branch 'maint-0.3.2'
...
"ours" to avoid version bump
2017-10-27 08:59:19 -04:00
Nick Mathewson
fb88527195
update to 0.3.2.3-alpha
2017-10-27 08:59:07 -04:00
Nick Mathewson
a0f8c01004
Merge branch 'maint-0.3.2'
2017-10-27 08:05:04 -04:00
David Goulet
e598c6f6de
hs-v3: Check the ed25519 key when picking intro point
...
If the intro point supports ed25519 link authentication, make sure we don't
have a zeroed key which would lead to a failure to extend to it.
We already check for an empty key if the intro point does not support it so
this makes the check on the key more consistent and symmetric.
Fixes #24002
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-26 14:54:20 -04:00
Nick Mathewson
4af1653e0f
Merge branch 'maint-0.3.2'
2017-10-26 10:43:05 -04:00
David Goulet
dfe03a55fc
doc: Add fedora packager point of contact
...
This is a link to the user page on the Fedora project website:
https://koji.fedoraproject.org/koji/userinfo?userID=2234
Fixes #24015
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-26 10:07:56 -04:00
David Goulet
c4ef21ff5e
fuzzing: Make hsdescv3 use the decoding API correctly
...
Fixes #21509
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-26 09:52:15 -04:00
David Goulet
4d2de821ce
Revert "Temporarily disable compilation of the v3 hs fuzzing code"
...
This reverts commit 5ef656e7d1
.
2017-10-26 09:41:47 -04:00
Nick Mathewson
636d0ad68b
remove now-redundant changes file
2017-10-26 09:09:37 -04:00
Nick Mathewson
e4f02f6c18
Merge remote-tracking branch 'asn/bug23862_v2'
2017-10-26 09:09:14 -04:00
Nick Mathewson
78222831a0
Merge branch 'maint-0.3.2'
2017-10-26 09:08:52 -04:00
Nick Mathewson
62cd64cc16
fix check-changes warning
2017-10-26 09:08:49 -04:00
Nick Mathewson
be49fadad0
Merge branch 'maint-0.3.2'
2017-10-26 09:03:21 -04:00
George Kadianakis
e0276dc1c6
Add changes file for #23862 .
2017-10-26 13:36:04 +03:00
George Kadianakis
42a47c0e7d
Remove a duplicate call to update_microdesc_downloads()
...
This call happens before we update our entry guards, so it needs to be
removed for the fix to #23862 to work.
2017-10-26 13:36:04 +03:00
George Kadianakis
cbc70437a7
Update entry guard state whenever we download a consensus.
...
Update guard state even if we don't have enough dirinfo since that
actually affects the future download of dirinfos.
Fixes #23862 on 0.3.0.1-alpha
2017-10-26 13:36:04 +03:00
teor
b4aa8fc3d9
Remove buggy IPv6 support from pick_intro_point() and service_intro_point_new()
...
The previous version of these functions had the following issues:
* they can't supply both the IPv4 and IPv6 addresses in link specifiers,
* they try to fall back to a 3-hop path when the address for a direct
connection is unreachable, but this isn't supported by
launch_rendezvous_point_circuit(), so it fails.
But we can't fix these things in a bugfix release.
Instead, always put IPv4 addresses in link specifiers.
And if a v3 single onion service can't reach any intro points, fail.
This supports v3 hidden services on IPv4, dual-stack, and IPv6, and
v3 single onion services on IPv4 only.
Part of 23820, bugfix on 0.3.2.1-alpha.
2017-10-26 17:02:46 +11:00
teor
20b0e9e07d
Remove buggy IPv6 support from hs_get_extend_info_from_lspecs()
...
The previous version of this function has the following issues:
* it doesn't choose between IPv4 and IPv6 addresses correctly, and
* it doesn't fall back to a 3-hop path when the address for a direct
connection is unreachable.
But we can't fix these things in a bugfix release.
Instead, treat IPv6 addresses like any other unrecognised link specifier
and ignore them. If there is no IPv4 address, return NULL.
This supports v3 hidden services on IPv4, dual-stack, and IPv6, and
v3 single onion services on IPv4 only.
Part of 23820, bugfix on 0.3.2.1-alpha.
2017-10-26 14:38:06 +11:00
George Kadianakis
1a6814c096
Fix offending unittest and add changes file for #23862 .
2017-10-25 20:22:52 +03:00
George Kadianakis
dfd3ed5bdc
Remove a duplicate call to update_microdesc_downloads()
...
This call happens before we update our entry guards, so it needs to be
removed for the fix to #23862 to work.
2017-10-25 20:22:52 +03:00
George Kadianakis
10c5eae3fa
Update entry guard state whenever we download a consensus.
...
Update guard state even if we don't have enough dirinfo since that
actually affects the future download of dirinfos.
Fixes #23862 on 0.3.0.1-alpha
2017-10-25 20:22:52 +03:00