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
Nick Mathewson
5418aa84ee
socks5 unit tests: add check for ipv6 address type.
2017-09-27 11:23:09 -04:00
Nick Mathewson
04f7873bab
Socks tests for bad socks5 username/passwd auth.
2017-09-27 11:16:29 -04:00
Nick Mathewson
14124f82df
Mark some tests in parse_socks.c as unreachable (BUG, LCOV)
...
These tests aren't reachable, given their actual arguments. I'm
going to mark them as BUG(), and as unreachable with LCOV.
2017-09-27 11:16:20 -04:00
Nick Mathewson
5427365907
testing: test many possible truncated SOCKS commands
...
Many of the 'truncated command' paths in fetch_from_buf_socks() were
not reached by the tests. This new unit test tries to check them
exhaustively.
2017-09-27 10:54:56 -04:00
Nick Mathewson
a57f495c1a
Move ext_or_command tests to test_proto_misc.c
...
No other code changes.
2017-09-27 09:11:15 -04:00
Nick Mathewson
b8b016940d
Add unit tests for var_cell and control0 proto functions.
2017-09-27 09:09:00 -04:00
Taylor Yu
8f8a4c0ced
Eat redundant semicolons
2017-09-26 15:12:34 -04:00
David Goulet
40ab25db62
hs-v3: Don't non fatal assert if we can't get the intro extend info
...
Fixes #23159 .
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-26 13:55:51 -04:00
Nick Mathewson
6beeb10070
Merge branch 'typecheck4'
2017-09-26 12:26:01 -04:00
Nick Mathewson
49d2346b80
Type bug in shared_random_state -- make sure Version is int.
...
The confparse field has type UINT, which corresponds to an int
type. We had uint32_t.
This shouldn't cause trouble in practice, since int happens to
4-bytes wide on every platform where an authority is running. It's
still wrong, though.
2017-09-26 12:25:34 -04:00
Nick Mathewson
a5b18dfba9
Make the TransProxyType field non-const
...
The correct type for a STRING confparse value is char *, not const
char *.
2017-09-26 12:25:07 -04:00
Nick Mathewson
4d11a468b2
Correct two state-file variable types.
...
These should have been int, but we had listed them as unsigned.
That's an easy mistake to make, since "int" corresponds with either
INT or UINT in the configuration file.
This bug cannot have actually caused a problem in practice, since we
check those fields' values on load, and ensure that they are in
range 0..INT32_MAX.
2017-09-26 12:25:01 -04:00
Nick Mathewson
eb54a856a2
Add test to make sure all confparse variables are well-typed
...
New approach, suggested by Taylor: During testing builds, we
initialize a union member of an appropriate pointer type with the
address of the member field we're trying to test, so we can make
sure that the compiler doesn't warn.
My earlier approach invoked undefined behavior.
2017-09-26 12:24:04 -04:00
Nick Mathewson
1f3db0514e
Merge remote-tracking branch 'asn/ticket23645_032_01'
2017-09-26 08:55:59 -04:00
David Goulet
648d5ea67e
hs: Improve logging
...
Also demote a log message that can occur under natural causes
(if the circuit subsystem is missing descriptors/consensus etc.).
The HS subsystem will naturally retry to connect to intro points,
so no need to make that log user-facing.
2017-09-26 13:55:44 +03:00
David Goulet
4190f602bd
circuit: Log n_circ_id and global identifier of HS circuits
...
So we can track them more easily in the logs and match any open/close/free
with those identifiers.
Part of #23645
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-25 16:21:04 -04:00
David Goulet
767b1815e9
circuit: Log circuit identifiers when cannibalizing
...
This removes the "nickname" of the cannibalized circuit last hop as it is
useless. It now logs the n_circ_id and global identifier so we can match it
with other logging statement.
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-25 16:08:11 -04:00
David Goulet
fb4a82c485
circuit: Keep a copy of n_circ_id for logging
...
Prior to the log statement, the circuit n_circ_id value is zeroed so keep a
copy so we can log it at the end.
Part of #23645
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-25 16:04:30 -04:00
David Goulet
de54e14312
circuit: Closing reason are signed values
...
Part of #23645
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-25 16:01:12 -04:00
Nick Mathewson
45530ed729
Merge branch 'bug22109'
2017-09-25 14:32:04 -04:00
Nick Mathewson
81c4793232
Make testing rend1_payload variables static
...
This fixes a clang warning.
2017-09-25 13:26:43 -04:00
Nick Mathewson
90e8d1f58f
Merge branch 'bug23539_032_01_squashed'
2017-09-25 11:12:56 -04:00
Nick Mathewson
581e2c8b2c
Whitespace fix.
2017-09-25 11:12:45 -04:00
Matt Traudt
7bbc29b0f2
sched: make interval a plain int; initialize with macro
2017-09-25 11:11:30 -04:00
David Goulet
ef2a449cce
sched: Make KISTSchedRunInterval non negative
...
Fixes #23539 .
Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-25 11:11:30 -04:00
Nick Mathewson
777e828ef3
Merge remote-tracking branch 'asn/ticket23420_032_01'
2017-09-25 09:24:36 -04:00
George Kadianakis
03b3f5486a
prop224: Add test for parsing RENDEZVOUS1 cell.
...
Just making sure that added padding does not screw up cell parsing.
2017-09-25 15:00:06 +03:00
Roger Dingledine
a1f31c0671
fix typo
2017-09-22 17:26:29 -04:00
Nick Mathewson
22e2c3bf7d
Fix check-spaces and a weird copyright.
2017-09-22 12:20:26 -04:00
Nick Mathewson
230a336798
Use setup_full_capture_of_logs for 21800
...
setup_capture_of_logs() doesn't actually suppress warnings :p
2017-09-22 10:22:47 -04:00
Nick Mathewson
ac3fdb74c2
Remove unused chosen_scheduler_type variable.
2017-09-22 09:56:54 -04:00
Nick Mathewson
122eab78d9
Merge remote-tracking branch 'pastly/bug23552_032_03'
2017-09-22 09:54:41 -04:00
Nick Mathewson
91467e04b1
Merge branch 'bug22805_v2_squashed'
2017-09-22 08:58:17 -04:00
Nick Mathewson
95a7e7e925
Stop using CREATE_FAST as a signifier of clienthood.
...
Relays send it, and we may as well let them. Part of our fix for
22805.
2017-09-22 08:57:45 -04:00
Nick Mathewson
ceb49c1c5f
Use channel_is_client() accessor in channelpadding.c.
...
Also, allow channel_is_client() to take a const channel.
2017-09-22 08:55:53 -04:00
Nick Mathewson
d1e0e486e9
Stop clearing the is_client flag on channel directly
2017-09-22 08:55:53 -04:00
Nick Mathewson
66aff2d8f3
Remove or_circuit_t.is_first_hop; use channel_is_client() instead
...
The is_first_hop field should have been called used_create_fast,
but everywhere that we wanted to check it, we should have been
checking channel_is_client() instead.
2017-09-22 08:55:53 -04:00
Matt Traudt
88b317ef28
sched: move code to respect comments
...
The diff is confusing, but were two static scheduler functions that
needed moving to static comment block.
No code change. Thanks dgoulet for original commit
2017-09-22 08:52:27 -04:00
Matt Traudt
22699e3f16
sched: only log when scheduler type changes
...
Closes 23552. Thanks dgoulet for original impl
2017-09-22 08:51:22 -04:00
Nick Mathewson
512c57cff9
test_util: capture the log in the correct place.
2017-09-22 08:51:03 -04:00
Nick Mathewson
00d7b60557
Merge branch 'bug21800'
2017-09-21 17:39:54 -04:00