Nick Mathewson
d579d751dc
Kludge include.am to work with automake <1.12
...
The SH_LOG_COMPILER feature doesn't work with older automakes, and
those are still in use in many environments we want to support
development on, like Debian Stable.
Instead, use autoconf substitution to fill out the shebang lines on
the shell scripts, and an intermediate make target to make them
executable.
This is a bugfix on the patches for #15344 . Bug not in any released
tor.
2015-04-24 08:41:53 -04:00
Nick Mathewson
ecf98313d6
Add +x to these .in files; see if it helps
2015-04-23 16:15:21 -04:00
Nick Mathewson
b64eb6c47c
Make a return value explicitly ignored.
...
This might make coverity happy
2015-04-23 13:05:06 -04:00
Nick Mathewson
54000d7ad9
Merge remote-tracking branch 'dgoulet/bug14847_027_06'
2015-04-23 12:24:35 -04:00
Nick Mathewson
9a81ed1d23
Fix some RNG function issues
2015-04-23 11:13:51 -04:00
Nick Mathewson
85eadb733f
Merge remote-tracking branch 'teor/longest-policy-comment'
2015-04-23 11:05:24 -04:00
Nick Mathewson
c366e1fa32
Merge remote-tracking branch 'public/remove_old_libevent_autoconf_stuff'
2015-04-23 10:27:01 -04:00
Nick Mathewson
9b6e57290f
Fix crash-test for assertion failure
...
When we made assertions not get compiled in for the coverage case, we
missed one case where, for our tests, we really DO want to have an
assertion fail: the backtrace test.
Bugfix on 1228dd293b60a8eaab03472fa29428c5e2752c44; bug not in any
released tor
2015-04-23 10:25:16 -04:00
teor
9a34caa4e7
Correct "longest possible policy" comment in router policy
...
The "longest possible policy" comment in
router_parse_addr_policy_item_from_string() used an example policy
that was actually shorter than the maximum length.
This comment was amended, and expanded to count the maximum number of
characters.
Comment change only.
2015-04-23 23:59:19 +10:00
cypherpunks
0e89abfa73
Integrate backtrace test into the automake test suite.
...
For this to work bt_test.py now returns an exit code indicating success or
failure. Additionally, check-local and its specific dependencies are now
obsolete so they are removed.
2015-04-23 09:56:25 -04:00
cypherpunks
c535494238
Integrate ntor test into the automake test suite.
2015-04-23 09:56:16 -04:00
cypherpunks
21e2425307
Integrate zero_length_keys test into the automake test suite.
...
The zero length keys test now requires the path to the Tor binary as the first
parameter to ensure the correct Tor binary is used without hard coding a path.
The wrapper script calls the zero length keys test for each test separately to
ensure the correct shell is used (as configured by autoconf). Another solution
would have been to place the tests into separate functions so multiple tests
could be run internally. This would have made a diff of considerable size and
frankly it is outside the scope of this fix.
2015-04-23 09:56:12 -04:00
Nick Mathewson
372aef8981
Merge remote-tracking branch 'public/bug15546'
2015-04-23 09:50:29 -04:00
Nick Mathewson
c3894473fe
whitespace fixes
2015-04-23 09:36:43 -04:00
Nick Mathewson
af83a205b0
Merge remote-tracking branch 'andrea/ticket14840'
2015-04-23 09:34:00 -04:00
Nick Mathewson
f5fa6ac534
Avoid memory leak in error messages in control.c (not in any tor)
2015-04-23 09:26:39 -04:00
Nick Mathewson
43a8457b56
Merge remote-tracking branch 'dgoulet/bug14845_026_01'
2015-04-23 09:25:00 -04:00
Nick Mathewson
01d988d72f
Merge remote-tracking branch 'teor/bug-15642-v3-fallback-unit-tests'
2015-04-23 09:22:16 -04:00
Nick Mathewson
f1204e0c02
Fix another signed/unsigned comparison bug
2015-04-23 09:21:44 -04:00
Nick Mathewson
241e6b0937
Fix some conversion problems
2015-04-23 09:16:42 -04:00
Nick Mathewson
647b7d37c2
Merge remote-tracking branch 'public/bug15745_027_03'
2015-04-23 09:10:35 -04:00
Nick Mathewson
3acee61422
Merge branch 'feature15652_squashed'
2015-04-23 09:09:33 -04:00
Nick Mathewson
55118d90ca
Fix some implicit conversion warnings
2015-04-23 09:09:20 -04:00
Yawning Angel
196499da73
Use a custom Base64 encoder with more control over the output format.
2015-04-23 09:06:58 -04:00
Nick Mathewson
8a951ed158
Merge remote-tracking branch 'teor/bug-15771-reachability'
2015-04-23 09:04:53 -04:00
teor
d68bbb0a29
Unit tests for consider_adding_dir_servers() as modified in #15642
...
Unit tests for the 10 valid combinations of set/NULL config options
DirAuthorities, AlternateBridgeAuthority, AlternateDirAuthority,
and FallbackDir.
Add assertion in consider_adding_dir_servers() for checks in
validate_dir_servers():
"You cannot set both DirAuthority and Alternate*Authority."
2015-04-23 00:16:04 +10:00
teor
027f73f70e
Disable default fallback directories when other directories are set
...
Only add the default fallback directories when the DirAuthorities,
AlternateDirAuthority, and FallbackDir directory config options
are set to their defaults.
The default fallback directory list is currently empty, this fix will
only change tor's behaviour when it has default fallback directories.
Fixes bug 15642; bugfix on 90f6071d8d
in 0.2.4.7-alpha. Patch by "teor".
2015-04-23 00:16:04 +10:00
teor
9139aeadb8
Reachability should check ExtendAllowPrivateAddresses not TestingTorNetwork
...
When self-testing reachability, use ExtendAllowPrivateAddresses
to determine if local/private addresses imply reachability.
The previous fix used TestingTorNetwork, which implies
ExtendAllowPrivateAddresses, but this excluded rare configs where
ExtendAllowPrivateAddresses is set but TestingTorNetwork is not.
Fixes bug 15771; bugfix on 0.2.6.1-alpha, bug #13924 .
Patch by "teor", issue discovered by CJ Ess.
2015-04-22 23:54:21 +10:00
David Goulet
6f5f38a0bc
Add function to validate HS descriptor ID
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-22 09:28:20 -04:00
David Goulet
a4585405d6
Multiple fixes for the HSFETCH command
...
Ref:
https://trac.torproject.org/projects/tor/ticket/14847?replyto=31#comment:31
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
917c3aac60
Use rend_valid_service_id() in the HSFETCH command
...
Also, fix a small typo in a comment.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
dd07c78524
Test: fix HSFETCH control command with latest change
...
The expected message of the command now expects "650+" and "650 OK".
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
3ec651c0a6
Control: make HSFETCH command use LongName
...
The "SERVER=" option now supports LongName described in the control-spec.txt
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
b100ebee4e
Control: add + and 650 OK to HS_DESC_CONTENT event
...
The HS_DESC_CONTENT event results in multiple line thus must be prefixed
with a "650+" and ending with "650 OK".
Reported-by: Damian Johnson <atagar@torproject.org>
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
28cf9f2186
Control: unbolt rend_data from HS desc event
...
The HS_DESC event was using rend_data_t from the dir connection to reply the
onion address and authentication type. With the new HSFETCH command, it's
now possible to fetch a descriptor only using the descriptor id thus
resulting in not having an onion address in any HS_DESC event.
This patch removes rend_query from the hs desc control functions and replace
it by an onion address string and an auth type.
On a successful fetch, the service id is taken from the fetched descriptor.
For that, an extra parameter is added to "store as a client" function that
contains the cache entry stored.
This will make the control event functions scale more easily over time if
other values not present in rend_data_t are needed since the rend_data from
the dir connection might not contained everything we need.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
59f8dced11
Refactor HS descriptor fetch to support descriptor ID
...
Big refactor of the HS client descriptor fetch functionnality. This allows
to fetch an HS descriptor using only a descriptor ID. Furthermore, it's also
possible to provide a list of HSDir(s) now that are used instead of the
automatically choosen one.
The approach taken was to add a descriptor_id field to the rend_data_t
structure so it can be used, if available, by the HS client. The onion
address field however has priority over it that is if both are set, the
onion address is used to fetch the descriptor.
A new public function is introduced called rend_client_fetch_v2_desc(...)
that does NOT lookup the client cache before fetching and can take a list of
HSDirs as a parameter.
The HSFETCH control command now uses this new function thus making it work
and final.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:48 -04:00
David Goulet
7db58445fd
Control: add HS_DESC_CONTENT event
...
As defined in section 4.1.26 in the control-spec.txt, this new event replies
the content of a successfully fetched HS descriptor. This also adds a unit
test for the controller event.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:15:02 -04:00
David Goulet
084be23697
Control: groud work for the HSFETCH command
...
This adds the command on the controller side that parses and validate
arguments but does nothing for now. The HS desriptor fetch must be
modularized a bit more before we can use the command.
See control-spec.txt section 3.26 for more information on this command.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:15:02 -04:00
David Goulet
e9782043c8
Remove onion address usage in lookup_last_hid_serv_request
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:15:02 -04:00
Yawning Angel
9a9ab455a3
Use correct severity in the get_if_addrs tests.
2015-04-21 16:42:07 +00:00
Nick Mathewson
e48ad353a3
Add test for random-int-in-range
2015-04-21 11:41:31 -04:00
Nick Mathewson
6bf31543dc
Make the crypto_rand_int_range return value right-exclusive.
2015-04-21 11:30:21 -04:00
David Goulet
3f41318472
Add crypto_rand_int_range() and use it
...
Incidently, this fixes a bug where the maximum value was never used when
only using crypto_rand_int(). For instance this example below in
rendservice.c never gets to INTRO_POINT_LIFETIME_MAX_SECONDS.
int intro_point_lifetime_seconds =
INTRO_POINT_LIFETIME_MIN_SECONDS +
crypto_rand_int(INTRO_POINT_LIFETIME_MAX_SECONDS -
INTRO_POINT_LIFETIME_MIN_SECONDS);
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 11:06:12 -04:00
David Goulet
6f6881c432
Use a random count of INTRODUCE2 for IP rotation
...
An introduction point is currently rotated when the amount of INTRODUCE2
cells reached a fixed value of 16384. This makes it pretty easy for an
attacker to inflate that number and observe when the IP rotates which leaks
the popularity of the HS (amount of client that passed through the IP).
This commit makes it a random count between the current value of 16384 and
two times that.
Fixes #15745
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-20 17:38:31 -04:00
Andrea Shepard
bc8b9a28a4
Add default DirAuthority lines to output of getinfo_helper_config(config/defaults) if not already present
2015-04-17 22:40:08 +00:00
Andrea Shepard
42cee727fa
Move list of default directory authorities to file scope
2015-04-17 06:33:17 +00:00
Nick Mathewson
06939551f4
code style fixes
2015-04-16 11:17:16 -04:00
Nick Mathewson
fabfa28c48
Fix missing-initializer warning
2015-04-16 11:16:20 -04:00
Nick Mathewson
f152081de1
Merge remote-tracking branch 'arma/ticket8766'
2015-04-16 11:15:29 -04:00
Nick Mathewson
cc10f13408
Fix indentation on a block
2015-04-15 11:10:54 -04:00
Nick Mathewson
1a7dea9191
Remove spurious warn
2015-04-15 11:10:48 -04:00
Nick Mathewson
b98cc79477
Merge remote-tracking branch 'sebastian/bug14784'
2015-04-15 11:10:37 -04:00
Nick Mathewson
d59c4063f3
Stop modifying const argument in handle_control_postdescriptor
...
Fixes 15546.
2015-04-15 10:47:50 -04:00
Nick Mathewson
c3e8b7f2da
Fix another space issue
2015-04-15 10:38:12 -04:00
Nick Mathewson
eec58c3548
Merge remote-tracking branch 'teor/fix-spaces-20150415'
2015-04-15 10:37:55 -04:00
Nick Mathewson
8837cc266e
Merge remote-tracking branch 'dgoulet/bug14391_026_v2'
2015-04-15 10:33:04 -04:00
cypherpunks
59e753a4a6
Make --hash-password imply --hush to prevent unnecessary noise.
2015-04-15 09:39:41 -04:00
teor
af2b6bdaba
Fix spaces in crypto.h and test-memwipe.c
2015-04-15 19:42:41 +10:00
Yawning Angel
e891deb021
Disable the udp_socket_trick_blackbox tests that fail due to #12377
...
Till someone writes get_interface_address6 interface enumeration that is
routing table aware, these tests will continue to fail on certain
systems because the get_interface_address6() code is broken.
2015-04-10 18:13:34 +00:00
Yawning Angel
ba2485f7df
Remove USE_OPENSSL_BASE64
and the associated code.
...
The alternative has been available since 2007, there's no way to
actually enable the ifdef, and it breaks on well formed but not OpenSSL
style inputs.
2015-04-10 09:12:47 +00:00
Nick Mathewson
f9327848ba
Collect badness values in ntor_ref.py; don't just clobber.
...
Fixes bug 15591; patch from joelanders
2015-04-09 11:57:55 -04:00
Nick Mathewson
202bbfbaa4
Merge branch 'bug15604_squashed'
2015-04-07 15:15:54 -04:00
rl1987
fda2aa7703
Set ConnDirectionStatistics back to 0 if not running as relay.
2015-04-07 15:15:28 -04:00
Nick Mathewson
edde1a7844
Merge branch 'bug15541_squashed'
2015-04-07 14:09:55 -04:00
rl1987
6b0c443dde
Update other entries in CMDLINE_ONLY_OPTIONS to use values from takes_argument_t.
2015-04-07 14:09:41 -04:00
rl1987
e89c200c47
Print the error message for --dump-config even if no arguments are given.
2015-04-07 14:09:41 -04:00
rl1987
ad54c197a9
Fix error message in do_dump_config().
2015-04-06 21:01:43 +03:00
Yawning Angel
79544a6fc5
Fix the memory leak in warn_if_option_path_is_relative()
.
...
Fixes coverity defect CID 1293337, not in any released version of tor.
2015-04-06 17:53:01 +00:00
Nick Mathewson
f620b8f032
bump version to 0.2.6.7-dev
2015-04-06 10:02:59 -04:00
Nick Mathewson
eb41214dba
bump version to 0.2.6.7
2015-04-06 10:00:30 -04:00
Nick Mathewson
3a5d4d666e
bump 0.2.5 version to 0.2.5.12
2015-04-06 09:56:37 -04:00
Nick Mathewson
542100d3ca
Bump 0.2.4 version more places
2015-04-06 09:48:53 -04:00
Nick Mathewson
a201a5396e
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-04-06 09:26:28 -04:00
Nick Mathewson
0475552140
Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6
2015-04-06 09:26:16 -04:00
Nick Mathewson
fe69a7e1d7
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
2015-04-06 09:25:37 -04:00
Yawning Angel
dc3cb00080
Handle empty/zero length encoded intro points more gracefully.
...
In theory these should never the triggered as the only caller now
validates the parameters before this routine gets called.
2015-04-06 09:21:43 -04:00
Yawning Angel
7b5f558da4
Treat empty introduction points sections as missing.
...
Found by DonnchaC.
2015-04-06 09:20:46 -04:00
Yawning Angel
49ddd92c11
Validate the RSA key size received when parsing INTRODUCE2 cells.
...
Fixes bug 15600; reported by skruffy
2015-04-06 09:18:17 -04:00
Nick Mathewson
24352d0d70
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-04-03 09:47:57 -04:00
George Kadianakis
929a8f199b
Decrease the amount of rend circ relaunches for hidden services.
2015-04-03 09:47:40 -04:00
George Kadianakis
8656cbcfc0
... and if we do get multiple INTRODUCE1s on a circuit, kill the circuit
...
(Sending a nak would be pointless.)
See ticket 15515 for discussion.
2015-04-03 09:40:47 -04:00
Nick Mathewson
c1b36488e9
Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6
2015-04-03 09:39:19 -04:00
Nick Mathewson
3781955f07
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
2015-04-03 09:38:54 -04:00
Nick Mathewson
01e4bc80cd
Merge branch 'bug15515_024' into maint-0.2.4
2015-04-03 09:36:59 -04:00
George Kadianakis
bcb839387e
... and if we do get multiple INTRODUCE1s on a circuit, kill the circuit
...
(Sending a nak would be pointless.)
See ticket 15515 for discussion.
2015-04-03 09:36:05 -04:00
George Kadianakis
8dba8a088d
Block multiple introductions on the same intro circuit.
2015-04-03 09:35:47 -04:00
Yawning Angel
38c8e0bfc5
Fix the windows test failure caused by the #15435 changes.
2015-04-02 03:25:51 +00:00
Sebastian Hahn
e10e6f78b1
Update entrynodes unit test for dirs
...
We no longer base our opinion on whether someone is a directory solely
on the routerstatus we might have for that relay, but also on a
routerinfo. Remove logic in test checking that. This broke unit tests in
05f7336624
.
Reported by toralf on #tor-dev, thanks!
2015-04-01 21:10:39 +02:00
Sebastian Hahn
86002a83d3
Bridges are always dirs
...
This check was accidentally deleted in 05f7336624
.
2015-04-01 21:07:46 +02:00
Nick Mathewson
081b0c0f77
mark dirinfo_type as unused in populate_live_entry_guards
2015-04-01 14:20:01 -04:00
Nick Mathewson
05fbbfe472
Merge remote-tracking branch 'public/remove_old_version_checks'
2015-04-01 14:02:02 -04:00
Nick Mathewson
d366c3354f
Merge branch 'remove_digests'
2015-04-01 13:53:03 -04:00
Nick Mathewson
cd8f13b5cb
Merge branch 'bug13736'
2015-04-01 13:46:50 -04:00
Nick Mathewson
baf24bf4d1
Unindent a block in crypto_set_tls_dh_prime
2015-04-01 13:40:37 -04:00
Nick Mathewson
8ba2d971b1
Remove needless call to crypto_set_tls_dh_prime()
2015-04-01 13:37:47 -04:00
Nick Mathewson
aa7b792250
Merge remote-tracking branch 'yawning/feature15435'
2015-04-01 13:34:14 -04:00
Nick Mathewson
34fa4ad637
Merge remote-tracking branch 'public/bug15515_025'
2015-04-01 12:59:19 -04:00
George Kadianakis
a7eae4ddc5
Block multiple introductions on the same intro circuit.
2015-04-01 12:58:52 -04:00
Nick Mathewson
13209eb6f3
Merge remote-tracking branch 'dgoulet/bug15296_027_01'
2015-04-01 12:50:36 -04:00
Nick Mathewson
0ddd8f06a9
Merge remote-tracking branch 'yawning/feature15471'
2015-04-01 12:47:16 -04:00
Nick Mathewson
c66dd17980
Drop support for --digests
...
This is a fair amount of maintainance burden, and doesn't help much
more than the git microversion.
Closes ticket 14742.
2015-04-01 09:54:20 -04:00
Nick Mathewson
1ac3cb4823
work around lack of AF_CCITT
2015-03-31 15:56:52 -04:00
Nick Mathewson
02c3879f87
Merge remote-tracking branch 'teor/ticket15431-event-mask-tests'
2015-03-31 14:57:04 -04:00
Nick Mathewson
725d6157df
fix some compilation warnings
2015-03-31 14:42:01 -04:00
Nick Mathewson
30e933b136
Merge branch 'ticket14710_squashed'
2015-03-31 14:37:09 -04:00
rl1987
33fbb5011d
Use tor_inet_pton() (not inet_pton()) in testcases.
2015-03-31 14:37:02 -04:00
rl1987
5e759127f8
Remove unused function.
2015-03-31 14:37:02 -04:00
rl1987
b5f84fde49
IPv6 case for whitebox test.
2015-03-31 14:37:02 -04:00
rl1987
a4f89e21a6
Whitebox test for get_interface_address6_via_udp_socket_hack().
...
Also, fix some whitespace mishaps.
2015-03-31 14:37:02 -04:00
rl1987
c03493ad13
Skipping the AF_INET6 case because bug #12377 makes it fail.
2015-03-31 14:37:02 -04:00
rl1987
92fc728d83
Bugfix: we don't want loopback/multicastaddress from _hack().
2015-03-31 14:37:02 -04:00
rl1987
6af471f394
Rework the black box test, like Yawning and nickm suggested.
2015-03-31 14:37:01 -04:00
rl1987
a13f944314
Black box test for get_interface_address6_via_udp_socket_hack().
2015-03-31 14:36:35 -04:00
rl1987
6888523d73
Moving the hacky part of get_interface_address6() into separate function.
2015-03-31 14:36:28 -04:00
Yawning Angel
fa81508eb2
Use prctl() to have the kernel SIGTERM background processes on exit.
...
This uses a Linux-ism to attempt to always clean up background processes
if possible. Note that it is not a catch-all, in that executables with
suid/sgid or elevated capabilities will have the prctl() attribute
stripped as part of the execve().
Resolves ticket 15471.
2015-03-26 14:56:14 +00:00
Yawning Angel
fda61e030e
Implement "TOR_PT_EXIT_ON_STDIN_CLOSE".
...
Background processes spawned by Tor now will have a valid stdin.
Pluggable transports can detect this behavior with the aformentioned
enviornment variable, and exit if stdin ever gets closed.
2015-03-26 12:55:12 +00:00
Nick Mathewson
e5e2644f23
clean up list of paths that cannot be relative
2015-03-25 09:16:04 -04:00
Nick Mathewson
dde4ffeb97
Merge remote-tracking branch 'dgoulet/bug15377_027_01'
2015-03-24 16:27:27 -04:00
David Goulet
2dc5d790d3
Test: add missing libor.a in include.am
...
Also add test-memwipe to .gitignore file.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-03-24 16:04:30 -04:00
Nick Mathewson
9e80fc8171
Merge remote-tracking branch 'sebastian/coverage_builds'
2015-03-24 15:16:49 -04:00
Nick Mathewson
25c3ff4500
Merge remote-tracking branch 'public/bug15269'
2015-03-24 14:59:09 -04:00
Nick Mathewson
112c554fcf
Merge branch 'bug14018'
2015-03-24 14:36:23 -04:00
rl1987
09c54655f1
Complain if relative paths are used in configuration
...
When we validate torrc options, print warning(s) when relative
path(s) been found.
2015-03-24 14:35:52 -04:00
Nick Mathewson
8f951d0196
Put an upper bound on test_workqueue -I argument
...
This makes coverity happy, since it doesn't like us looping against
a value which might be INT_MAX.
This is CID 1268069
2015-03-24 10:49:29 -04:00
Nick Mathewson
fec923d72b
Check return values for tor_addr_parse(default) in config.c
...
In these cases, the address is always a constant "default", so
should always succeed. But coverity can't tell that.
Fixes CID 1291645
2015-03-24 10:46:39 -04:00
Nick Mathewson
dfd6cf9ea2
bump to 0.2.6.6
2015-03-24 10:23:34 -04:00
Nick Mathewson
05f7336624
Remove version checks for microdescriptor support
...
At this point, relays without microdescriptor support are no longer
allowed on the Tor network.
2015-03-24 09:25:35 -04:00
Nick Mathewson
0f31080d63
Stop checking for torrc state files generated by very old Tor versions
...
These haven't worked in so long that if you had a state file of this
kind, the guards in it would be so old that you wouldn't use them
anyway.
2015-03-24 09:24:12 -04:00
Nick Mathewson
190ed66b06
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-23 09:25:35 -04:00
Nick Mathewson
c113544a94
Merge remote-tracking branch 'public/bug15436_025' into maint-0.2.6
2015-03-23 09:25:15 -04:00
Yawning Angel
732f522a42
Fix unaligned access in SipHash-2-4.
...
The compiler is allowed to assume that a "uint64_t *" is aligned
correctly, and will inline a version of memcpy that acts as such.
Use "uint8_t *", so the compiler does the right thing.
2015-03-23 09:20:02 -04:00
Sebastian Hahn
1a50cb88e6
Fix test-network.sh argument parsing
...
The bash on one of my machines didn't understand the question mark
correctly, it didn't end up accepting flavor. We can spell it out
explicitly.
2015-03-22 09:43:50 +01:00
teor
b41a5039f1
Compile-time check that control_event_t.event_mask is big enough
...
Add a compile-time check that the number of events doesn't exceed
the capacity of control_event_t.event_mask.
2015-03-22 14:25:42 +11:00
teor
99c10a95e4
Add unit tests for control_event_is_interesting()
...
Part of ticket 15431, checks for bugs similar to 13085.
2015-03-22 14:24:41 +11:00
Sebastian Hahn
e069a82aa7
build tor-cov-{resolve,gencert}
...
This allows us to run tor-cov-gencert from chutney for coverage builds.
2015-03-22 04:21:08 +01:00
Sebastian Hahn
1228dd293b
Disable assertions during coverage builds
...
This removes roughly 5000 branches in my testing. We never want to
trigger assertions even during tests, so this is sane. Implements #15400 .
2015-03-21 02:34:44 +01:00
Sebastian Hahn
348f2744cf
Initialize two variables
...
This is a trivial change to get around two compiler warnings when
assertions are removed during coverage builds.
2015-03-21 02:00:17 +01:00
Nick Mathewson
e82e600d6e
Here is a test for memwipe.
...
It invokes undefined behavior, I'm afraid, since there's no other
c-legal way to test whether memwipe() works when we're not allowed to
look at it.
Closes ticket 15377.
2015-03-19 18:47:24 -04:00
Nick Mathewson
ca03b10b0c
bump to 0.2.6.5-rc.dev
2015-03-18 16:32:13 -04:00
Nick Mathewson
54d6e5e71e
Merge remote-tracking branch 'public/feature15053'
2015-03-18 14:27:00 -04:00
Nick Mathewson
77c671b7dd
bump to 0.2.6.5-rc
2015-03-18 09:10:48 -04:00
Nick Mathewson
d8263ac254
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-18 08:58:15 -04:00
David Goulet
c9534f7902
Remove extra newline at the end of HS descriptor
...
The rend-spec.txt document doesn't specify this extra newline. Furthermore,
this is the only descryptor type that contains one. Client and HSDir without
this patch still work perfectly since the HS descriptor parsing doesn't
expect a newline at the end.
Fixes #15296
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-03-16 09:04:51 -04:00
Nick Mathewson
e75e0c7278
Make log.o depend on micro-revision.i
...
Otherwise micro-revision.i might not get built on time.
2015-03-15 17:09:58 -04:00
Nick Mathewson
a0f892f190
Simplify the loop.
2015-03-14 14:31:26 -04:00
Nick Mathewson
ddb1889eb8
Add comments for new functions
2015-03-14 14:28:29 -04:00
Nick Mathewson
92d04721a2
remove a needless "if (1)" that was there for indentation; fix indentation.
2015-03-14 14:28:29 -04:00
Nick Mathewson
b78803f9f5
Extract main part of main loop into a separate function
...
For 15176; Shadow would like this.
Based on a patch by Rob Jansen, but revised to have a minimal-sized diff.
2015-03-14 14:28:29 -04:00
Nick Mathewson
7bed9dc73a
Avoid double-parens in log_fn() messages on clang.
...
On clang (and elsewhere?) __PRETTY_FUNCTION__ includes parenthesized
argument lists. This is clever, but it makes our old "%s(): " format
look funny.
This is a fix on 0957ffeb
, aka svn:r288. Fixes bug 15269.
2015-03-14 14:12:03 -04:00
Nick Mathewson
feca329031
Log version when LD_BUG is logged.
...
Closes ticket 15026.
2015-03-14 13:50:23 -04:00
cypherpunks
ce9bd4e04c
Do not distribute common_sha1.i and or_sha1.i.
...
These files get generated automatically so there is need to include them in the
distribution.
2015-03-14 13:00:06 -04:00
cypherpunks
5176f6f103
Remove relative paths to header files.
...
The paths are already in the directory search path of the compiler therefore no
need to include them in the source code.
2015-03-14 13:00:05 -04:00
cypherpunks
7a86d53dee
Clean up generated files.
...
Remove src/or/or_sha1.i and src/common/common_sha1.i on `make clean` and remove
the temporary micro-revision file when its no longer needed.
Additional changes;
- show a message when generating the micro-revision file.
- add the temporary micro revision file to the list of files to be removed on
`make clean` just in case.
- fix indentation of the make rule to improve readability.
2015-03-14 13:00:04 -04:00
cypherpunks
17cbc4350f
Use output variables instead of relative paths.
...
Fixes the following rules in out-of-tree builds;
- check-spaces
- check-docs
- check-logs
- Doxygen
- coverage-html
And cleans up additional directories;
- coverage_html
- doc/doxygen
2015-03-14 13:00:04 -04:00
Nick Mathewson
511ca9b91c
Remove DynamicDHGroups as obsoleted by PluggableTransports or P256.
...
Closes ticket 13736.
2015-03-14 12:40:55 -04:00
Nick Mathewson
4247ce99e5
ug. test, _then_ commit, nick.
2015-03-14 12:14:32 -04:00
Nick Mathewson
f70f1d283e
Do not printf success messages when we are --quieted or --hushed.
...
Fixes 14994. Calling this a bug on when --quiet and --hush began to have
their current behavior.
2015-03-14 12:12:53 -04:00
Nick Mathewson
3a68f2f54e
const-ify the new failure vars, and one old one
2015-03-13 09:41:49 -04:00
Nick Mathewson
833b6d30be
Merge remote-tracking branch 'sebastian/bug15211'
2015-03-13 09:39:04 -04:00
Matthew Finkel
61dcd926aa
Flag when a controlsocket is configured as WorldWritable
2015-03-13 07:06:16 +00:00
Matthew Finkel
5ce5527823
Move to the next flag when we recognize Writable flags
2015-03-13 07:04:22 +00:00
Nick Mathewson
517e0f965b
Remove workarounds for Libevent < 1.3.
...
This actually lets us dump a lot of old cruft that nobody had (I
hope!) tested in ages.
Closes 15248.
2015-03-12 16:59:05 -04:00
Sebastian Hahn
badc81de5b
Don't init hs intro key as side effect of an assert
2015-03-12 18:59:46 +01:00
Sebastian Hahn
447769dd28
Don't init control authchallenge nonce as assert side effect
...
Fixes part of bug 15211.
2015-03-12 18:57:57 +01:00
Nick Mathewson
3ee2fca7ca
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-12 13:16:22 -04:00
Nick Mathewson
eb68ea20f8
Merge remote-tracking branch 'public/feature15212_026' into maint-0.2.6
2015-03-12 13:15:08 -04:00
Nick Mathewson
16b1b2199d
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-12 13:13:06 -04:00
Yawning Angel
b3281fc6d6
Initialize the extorport auth cookie before launching PTs.
...
PTs expect the auth cookie to be available immedieately after launch,
leading to a race condition when PTs opt to cache the extorport cookie
once immediately after startup.
Fixes #15240 .
2015-03-12 13:12:56 -04:00
Sebastian Hahn
68e9f364a0
don't init threads as side effect of assertion
...
Fixes part of bug 15211.
2015-03-12 17:52:37 +01:00
Nick Mathewson
9063f29160
Revert "Make TransProxyType ipfw work correctly"
...
This reverts commit 681802817d
.
(I didn't mean to backport this, but somehow I had based my branch
for #15205 on it.)
2015-03-12 12:49:08 -04:00
Nick Mathewson
eecd410984
Merge remote-tracking branch 'public/bug15205_025' into maint-0.2.5
2015-03-12 12:27:25 -04:00
Nick Mathewson
b683b9af00
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-12 11:37:56 -04:00
Nick Mathewson
d4c1716263
add an explanatory comment
2015-03-12 11:28:18 -04:00
Nick Mathewson
648af0438d
Also, add an assertion to assign_onionskin_to_cpuworker
2015-03-12 11:15:50 -04:00
Nick Mathewson
66c8180207
Fix crash bug when calling cpuworkers_rotate_keyinfo on a client.
...
Fixes bug 15245; bugfix on 0.2.6.3-alpha. Thanks to anonym for reporting!
2015-03-12 11:14:39 -04:00
Nick Mathewson
a00d07ac1b
Bump 025 version to 0.2.5.11
2015-03-12 10:52:09 -04:00
Nick Mathewson
5f46a59ba3
Bump 0.2.4 version.
2015-03-12 10:50:15 -04:00
Nick Mathewson
2bfdfc849b
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-12 10:06:10 -04:00
Nick Mathewson
192ed94410
Use PTHREAD_CREATE_DETACHED macro instead of 1: fix Solaris crash
...
When calling pthread_attr_setdetachstate, we were using 1 as the
argument. But the pthreads documentation says that you have to say
PTHREAD_CREATE_DETACH, which on Solaris is apparently 0x40. Calling
pthread_attr_setdetachstate with 1 crashes on Solaris with FLTBOUNDS.
(Because we're so late in the release cycle, I made the code define
PTHREAD_CREATE_DETACHED if it doesn't exist, so we aren't likely to
break any other platforms.)
This bug was introduced when we made threading mandatory in
0.2.6.1-alpha; previously, we had force-disabled threading on
Solaris. See #9495 discussion.
2015-03-12 10:03:02 -04:00
Nick Mathewson
809517a863
Allow {World,Group}Writable on AF_UNIX {Socks,Control}Ports.
...
Closes ticket 15220
2015-03-11 13:31:33 -04:00
Nick Mathewson
985687bc4f
Fix check-spaces
2015-03-10 10:10:35 -04:00
Nick Mathewson
d29a8ad564
Add link protocol version counts to the heartbeat message
...
Closes ticket 15212
2015-03-10 10:07:41 -04:00
Nick Mathewson
e732ec295d
Merge commit 'origin/maint-0.2.6^'
2015-03-10 08:36:53 -04:00
Nick Mathewson
99b59dee70
bump 0.2.6 to 0.2.6.4-rc-dev
2015-03-10 08:20:47 -04:00
Nick Mathewson
1af67d7f72
Merge remote-tracking branch 'public/bug15205_025' into maint-0.2.6
2015-03-09 19:47:12 -04:00
Nick Mathewson
59f4c41087
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-09 16:25:41 -04:00
Nick Mathewson
7c9be64e1a
Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6
2015-03-09 16:25:11 -04:00
Nick Mathewson
306f2f0eff
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
2015-03-09 16:24:44 -04:00
Nick Mathewson
220e9be095
Merge remote-tracking branch 'karsten/geoip6-mar2015' into maint-0.2.4
2015-03-09 16:24:07 -04:00
Nick Mathewson
5588e677bd
Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4
2015-03-09 16:23:55 -04:00
Karsten Loesing
62714068d9
Update geoip6 to the March 3 2015 database.
2015-03-09 21:11:52 +01:00
Karsten Loesing
beda8d2934
Update geoip to the March 3 2015 database.
2015-03-09 21:09:44 +01:00
Nick Mathewson
24c031b1a2
Don't use checked strl{cat,cpy} on OSX.
...
There is a bug in the overlap-checking in strlcat that can crash Tor
servers. Fixes bug 15205; this is an OSX bug, not a Tor bug.
2015-03-09 15:09:49 -04:00
Nick Mathewson
64bfc2930a
Restore c89 in 0.2.5
2015-03-09 13:22:58 -04:00
Nick Mathewson
448bd22092
Merge remote-tracking branch 'public/bug14261_025' into maint-0.2.5
2015-03-09 13:17:20 -04:00
Nick Mathewson
62631904cb
GETINFO bw-event-cache to get information on recent BW events
...
Closes 14128; useful to regain functionality lost because of 13988.
2015-03-09 13:13:56 -04:00
Nick Mathewson
e3408248b9
Merge remote-tracking branch 'public/bug13988_025' into maint-0.2.5
2015-03-09 13:12:54 -04:00
Nick Mathewson
410ce4cb49
Merge remote-tracking branch 'public/bug15088_025' into maint-0.2.5
2015-03-09 13:09:50 -04:00
Nick Mathewson
ed7f2482e2
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-09 13:08:20 -04:00
Nick Mathewson
fb0de57ba2
Merge remote-tracking branch 'public/feature15006_026' into maint-0.2.6
2015-03-09 13:05:27 -04:00
Nick Mathewson
0ec135b696
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-09 11:14:03 -04:00
Tom van der Woerdt
d39ede7f20
testing_common.c: avoid side-effects of tor_assert
2015-03-09 11:10:58 -04:00
Nick Mathewson
bd80ba9a9f
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-09 11:10:04 -04:00
Nick Mathewson
a7f75b2056
Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6
2015-03-09 11:09:49 -04:00
Nick Mathewson
1a7419c3df
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
2015-03-09 11:09:30 -04:00
Nick Mathewson
6704e18dd2
Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4
2015-03-09 11:08:57 -04:00
Nick Mathewson
4ced3b59aa
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-04 15:19:43 +01:00
Nick Mathewson
de2c5ad815
Revert "Missing dependencies; fixes 15127."
...
This reverts commit 930ab95e1f
.
2015-03-04 15:18:33 +01:00
Nick Mathewson
98822df3dc
Make boostrap events include hostname ANDaddr AND digest
2015-03-04 14:23:59 +01:00
Nick Mathewson
6ae9769b29
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-04 12:29:25 +01:00
Nick Mathewson
a726cd76df
Merge remote-tracking branch 'public/bug15064_025' into maint-0.2.6
2015-03-04 12:26:43 +01:00
Nick Mathewson
681802817d
Make TransProxyType ipfw work correctly
...
Fixes bug 15064; bugfix on 0.2.5.4-alpha.
2015-03-04 12:25:52 +01:00
Nick Mathewson
55e1fe874d
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-04 12:20:01 +01:00
Nick Mathewson
c5c4ea2db0
Merge remote-tracking branch 'public/bug15088_025' into maint-0.2.6
2015-03-04 12:19:28 +01:00
Nick Mathewson
d5b2cbea10
Add wait4 to the seccomp2 sandbox allowable syscall list
...
fixes bug 15088. patch from sanic.
2015-03-04 12:18:10 +01:00
Nick Mathewson
6a8550fa3c
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-04 12:15:10 +01:00
Nick Mathewson
5ad47aafab
Merge remote-tracking branch 'public/bug15127_025' into maint-0.2.6
2015-03-04 12:14:17 +01:00
Nick Mathewson
2d926d0147
only declare rv when it is used in destination_from_socket. Fixes 15151
2015-03-04 12:12:41 +01:00
Nick Mathewson
930ab95e1f
Missing dependencies; fixes 15127.
2015-03-04 12:09:33 +01:00
Roger Dingledine
a1bdb6e42c
fix typo in comment
2015-03-03 19:12:27 -05:00
Nick Mathewson
81a994ce77
Make the assert related to 15083 a tiny bit more tolerant
2015-03-03 22:25:26 +01:00
Nick Mathewson
71ee53fe9b
Do not leave empty, invalid chunks in buffers during buf_pullup
...
This fixes an assertion failure bug in 15083; bugfix on 0.2.0.10-alpha.
Patch from 'cypherpunks'
2015-03-03 22:21:41 +01:00
Andrea Shepard
d97f43dc8b
Fix formatting
2015-03-02 10:24:58 +00:00
Nick Mathewson
79c69d18b7
Include a HOST item in BOOTSTRAP problem messages
...
Closes ticket 15006.
2015-02-27 11:28:30 -05:00
Nick Mathewson
d7fcaca3fc
Have zero_length_keys.sh use an empty torrc file.
...
Fixes 15033; bugfix on 0.2.6.3-alpha.
2015-02-26 15:22:37 -05:00
Nick Mathewson
3e30d4df7f
Have zero_length_keys.sh use an empty torrc file.
...
Fixes 15033; bugfix on 0.2.6.3-alpha.
2015-02-26 15:21:31 -05:00
Nick Mathewson
1b913777c7
Merge remote-tracking branch 'atagar/trac14806'
2015-02-25 09:30:29 -05:00
Nick Mathewson
0dde4d6fa2
Merge remote-tracking branch 'yawning/bug14922'
2015-02-25 08:56:34 -05:00
Nick Mathewson
2bcb596dcf
Merge remote-tracking branch 'public/bug14129_024' into maint-0.2.4
2015-02-24 13:23:44 -05:00
Nick Mathewson
a9720b90f8
Fix whitespace from tor_x509_cert rename
2015-02-24 12:03:11 -05:00
Nick Mathewson
f253aef14f
Mechanical rename: tor_cert_t -> tor_x509_cert_t
2015-02-24 12:03:10 -05:00
Nick Mathewson
3e9409ef58
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-02-24 11:36:34 -05:00
Nick Mathewson
783a44f9e9
Log less/better about systemd at startup
...
Report errors if the notification fails; report success only if it
succeeds; and if we are not notifying systemd because we aren't
running with systemd, don't log at notice.
2015-02-24 11:11:24 -05:00
Nick Mathewson
e49d63a7ce
Bump master to 0.2.7
2015-02-24 10:31:05 -05:00
Nick Mathewson
af60e7566e
Update test_status.c to accommodate changes in heartbeat messages
...
Fixes #15012 ; bug not in any released Tor
2015-02-24 10:05:34 -05:00
Nick Mathewson
d74a78c58a
Merge branch 'bug14950_logs_squashed'
2015-02-23 13:04:03 -05:00
Nick Mathewson
d221b507c9
Avoid logging natural-language reports that are redundant with bootstrapping
2015-02-23 13:03:56 -05:00
Nick Mathewson
10ae9b9bf5
Usually downgrade middle heartbeat messages when stuff is in-range
2015-02-23 13:03:56 -05:00
Nick Mathewson
098cbcbb9e
Merge branch 'bug14989'
2015-02-23 13:03:07 -05:00
Nick Mathewson
21ac0cd2af
Let AF_UNIX connections through the sandbox
...
Fixes bug 15003; bugfix on 0.2.6.3-alpha.
2015-02-23 12:35:20 -05:00
Nick Mathewson
f1fa85ea73
Fix running with the seccomp2 sandbox
...
We had a regression in 0.2.6.3-alpha when we stopped saying
IPPROTO_TCP to socket(). Fixes bug 14989, bugfix on 0.2.6.3-alpha.
2015-02-23 12:16:08 -05:00
Nick Mathewson
7a1a0a4cd7
Merge remote-tracking branch 'public/bug14988_025'
2015-02-23 11:33:07 -05:00
Nick Mathewson
aeb38bbdce
add another unused-var marker in backtrace.c for 14988
2015-02-23 11:32:04 -05:00
cypherpunks
5246e8f992
Remove lingering mempool code
2015-02-23 11:19:31 -05:00
rl1987
385558c32f
Fix endianness issues in test_config_resolve_my_address().
...
Since resolve_my_address() yields IP address in host order there is
no need to use byteorder functions for conversion.
2015-02-23 09:57:17 -05:00
Nick Mathewson
8a9d86bf05
Merge remote-tracking branch 'public/bug11454_11457'
2015-02-20 01:08:12 -05:00
Nick Mathewson
03a4e97c76
Merge remote-tracking branch 'origin/maint-0.2.5'
2015-02-20 01:05:21 -05:00
Nick Mathewson
1525eeeb49
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
2015-02-20 01:04:49 -05:00
Nick Mathewson
5334bcd7e3
bump version to 0.2.6.3-alpha-dev
2015-02-19 17:20:40 -05:00
Nick Mathewson
251f6cfcd8
Quiet "caching debian-tor for debian-tor" notice
2015-02-19 12:30:34 -05:00
Nick Mathewson
76d8c23ab4
Try to fix authdir_newdesc events
...
We were sending values that were truncated by the length of the
annotations.
2015-02-19 11:35:27 -05:00
Nick Mathewson
cef802a041
Increment version to 0.2.6.3-alpha
2015-02-19 10:05:08 -05:00
Nick Mathewson
b897e386da
Merge branch 'bug12844_macros'
2015-02-19 09:41:36 -05:00
Nick Mathewson
557a0c83f3
Do not try to download an EI for which we don't have a matching SD.
...
This quiets some log messages for #13762 , and adds a better INFO message
for the underlying confusion.
2015-02-19 09:40:36 -05:00
Nick Mathewson
86105a4009
Check ENABLE_TOR2WEB_MODE before any tor2webmode code
2015-02-19 09:09:25 -05:00
Roger Dingledine
64d5e0e417
stop warning each time we check minimum-dir-info
...
We already log whenever our state changes, e.g. whenever new directory
information arrives. This additional log_warn() will at best just add more
log messages, or worse, make the user wonder what she needs to fix.
(Changed after consultation with Yawning.)
2015-02-19 06:27:14 -05:00
Roger Dingledine
70f46f7ae6
don't update dir_info_status when we have minimum dir info
...
Nothing ever uses the string when we're in "have minimum dir info"
state. The flow of the function is "check for problems, if you see a
problem write an explanation to dir_info_status and set res to 0". If
you get to the end of the function without any problems, then res =
1 and we're all ready to start making circuits.
(Changed after consultation with Yawning.)
2015-02-19 06:15:25 -05:00
Roger Dingledine
0e4bdc4005
clean up comments and whitespace a bit
2015-02-18 19:27:02 -05:00
Nick Mathewson
b7b8b9ecf9
Downgrade new extrainfo_insert warnings on startup
2015-02-18 13:41:00 -05:00
Nick Mathewson
a767b66640
Merge branch 'bug13762_diagnostic_redux'
2015-02-18 13:29:12 -05:00
Nick Mathewson
d3f714deb8
Patch from cypherpunks to try to diagnose 8387.
2015-02-18 13:25:01 -05:00
Nick Mathewson
e65fe0a747
Improve log messages for diagnosing 13762
2015-02-18 13:05:15 -05:00
Nick Mathewson
843c368475
Merge remote-tracking branch 'yawning/cid1270894'
2015-02-18 12:13:54 -05:00
Yawning Angel
39a496eeb8
Actually free measured_guardfraction.
...
CID 1270894
2015-02-18 16:36:57 +00:00
Nick Mathewson
afe10e4707
whitespace fixes
2015-02-18 10:55:56 -05:00
Nick Mathewson
6378bcf4b9
Fix an implicit-narrowing warning
2015-02-18 09:34:15 -05:00
Nick Mathewson
9e6147a40c
Merge remote-tracking branch 'yawning/bug14918'
2015-02-18 09:21:16 -05:00
Nick Mathewson
6cdb213b6c
Combine test_helpers.[ch] and testhelper.[ch]
2015-02-18 09:19:38 -05:00
Nick Mathewson
96211bcf71
Merge branch 'bug9321_rerebase'
...
Conflicts:
src/or/dirvote.h
src/test/include.am
src/test/test_entrynodes.c
2015-02-18 09:17:02 -05:00
George Kadianakis
5c34a53068
Don't exit if we can't find the GuardfractionFile when booting.
...
...just disable the feature in that case.
2015-02-18 09:09:34 -05:00
George Kadianakis
33053d50a0
Final guardfraction preparations for upstream merge.
...
- Write a changes file.
- Change some logs to lesser severities.
2015-02-18 09:09:34 -05:00
George Kadianakis
028ede2f5e
Add unittests for the guardfraction feature.
2015-02-18 09:09:34 -05:00
George Kadianakis
c2b13e22e7
Unittest prep: Move get_yesterday_date_str() to helper file.
...
We want to use this function in our guardfraction unittests, so make a
test_helpers module and move it there.
2015-02-18 09:09:34 -05:00
George Kadianakis
b941f109ac
Calculate relay weighted bandwidth using guardfraction bandwidths.
...
Now use the guardfraction function to calculate individual relay
bandwidth weights.
2015-02-18 09:09:34 -05:00
George Kadianakis
f7a8b19184
Calculate total bandwidth weights using the guardfraction bandwidths.
...
Now use the function introduced in the previous commit, to calculate the
total bandwidth weights when making the consensus.
2015-02-18 09:09:33 -05:00
George Kadianakis
14a3c17ce6
Calculate the guardfraction bandwidth of a guard.
2015-02-18 09:09:33 -05:00
George Kadianakis
f4a63f8eab
Parse GuardFraction info from consensuses and votes.
...
Also introduce the UseGuardFraction torrc option which decides whether
clients should use guardfraction information found in the consensus.
2015-02-18 09:09:33 -05:00
George Kadianakis
db805b9170
Write GuardFraction information to consensus.
...
If we've seen enough votes with guardfraction information, write down
the GuardFraction string in the consensus.
2015-02-18 09:09:33 -05:00
George Kadianakis
7ddfb6aa2f
Write guardfraction information to votes.
...
If a dirauth has guardfraction information about a guard, write it down
when serializing the routerstatus.
2015-02-18 09:09:33 -05:00
George Kadianakis
5ee48d47a7
Parse Guardfraction file and apply results to routerstatuses.
...
Parse the file just before voting and apply its information to the
provided vote_routerstatus_t. This follows the same logic as when
dirauths parse bwauth files.
2015-02-18 09:09:32 -05:00
Yawning Angel
8571e86d27
Fix bootstrap directory information logging.
...
`dir_info_status` is used from main.c:directory_info_has_arrived() to
provide useful (INFO/NOTICE) level logging to users, and should always
be updated regardless of the rate limiting.
2015-02-18 13:58:13 +00:00
Yawning Angel
6fdb179d84
Fix compute_frac_paths_available, when ExitNodes is not set.
2015-02-18 12:51:07 +00:00
Yawning Angel
cbd26157c5
Remove tor_strclear(), and replace previous calls with memwipe().
2015-02-17 18:53:33 +00:00
Nick Mathewson
d038430a14
Merge branch 'bug14918'
2015-02-17 12:49:29 -05:00
Nick Mathewson
9bf6da1861
Merge remote-tracking branch 'public/feature_13822'
2015-02-17 12:34:13 -05:00
Nick Mathewson
8eb3d81e6e
Fix some issues with reporting exit-free networks
...
Fixes bug 14918.
2015-02-17 12:07:24 -05:00
George Kadianakis
6517219093
Control: command to lookup cached HS descriptor
...
This adds the key "hs/client/desc/id/<ADDR>" to the GETINFO command used to
lookup the given onion address in the client hs descriptor cache.
If found, prints it formatted as specified in section 1.3 of rend-spec.txt.
Fixes #14845
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-02-17 11:30:25 -05:00
Nick Mathewson
0b46b08225
Check thread count for negative; realloc->reallocarray
...
CID 1268069
2015-02-17 08:46:11 -05:00
Nick Mathewson
7620c613e8
Have tinytest tolerate systems where char has > 8 bytes
...
CID 1064418
2015-02-17 08:40:55 -05:00
Nick Mathewson
c3813e2e64
Use --list-fingerprint instead of process control in zero_length_keys.sh
...
Using kill and wait in this way may have been making windows
builders unhappy.
2015-02-17 08:30:32 -05:00
Nick Mathewson
8375663adf
Wrap two long lines
2015-02-17 08:30:28 -05:00
Roger Dingledine
d6dbd55849
trivial whitespace fix
2015-02-17 06:01:33 -05:00
Nick Mathewson
0b3ae7d9e5
Maybe this will make coverity not care that this check is dead. CID 1268063
2015-02-16 15:44:18 -05:00
Nick Mathewson
2fe139473d
No, coverity, this is not a memory leak. 1268065
2015-02-16 15:42:48 -05:00
Nick Mathewson
5d2a23397a
Fix a few coverity "Use after NULL check" warnings
...
Also remove the unit test mocks that allowed get_options() to be
NULL; that's an invariant violation for get_options().
2015-02-16 15:40:15 -05:00
Nick Mathewson
7117959199
Fix deadcode warning in get_interface_addresses_raw().
...
CID 1268070
2015-02-16 15:28:36 -05:00
Nick Mathewson
2af7bc5b46
Fix a trivial double-close in address.c. CID 1268071
2015-02-16 15:24:13 -05:00
Sina Rabbani
8e61d38cf1
Faravahar's New IP Address as of 2/20/2015
2015-02-16 11:51:36 -05:00
Sebastian Hahn
0c11d8b2d2
Implement status/fresh-relay-descs command
...
The idea here is that a controller should be able to make Tor produce a
new relay descriptor on demand, without that descriptor actually being
uploaded to the dirauths (they would likely reject it anyway due to
freshness concerns).
Implements #14784 .
2015-02-15 12:36:07 +01:00
Sebastian Hahn
8feaf3846d
Refactor router_rebuild_descriptor
...
Allow building a router descriptor without storing it to global state.
This is in preparation of a patch to export the created descriptors via
the control port.
2015-02-15 12:33:20 +01:00
Sebastian Hahn
3bcdb26267
Call cpu_init if we change to being a relay
...
The issue is that we use the cpuworker system with relays only, so if we
start up as a client and transition to being a relay later, we'll be
sad.
This fixes bug 14901; not in any released version of Tor.
2015-02-15 11:49:19 +01:00
Sebastian Hahn
424edd5710
Don't leak a cond var when starting threads in a pool
2015-02-15 11:21:54 +01:00
Nick Mathewson
5644d92dd7
Merge remote-tracking branch 'sebastian/bug14875'
2015-02-12 14:50:13 -05:00
Sebastian Hahn
c8ce973dc7
Avoid undefined behaviour in ifreq_to_smartlist
...
This could trigger where _SIZEOF_ADDR_IFREQ() might not return a
multiple of sizeof(void *). Fixes bug 14875; not in any released version
of Tor.
2015-02-12 14:56:47 +01:00
Sebastian Hahn
87a95b0236
Actually get all interface addresses
...
If we guessed a buffer size too small, we never increased the buffer and
tried again
Also simplify the interface of ifreq_to_smartlist a little
2015-02-12 14:54:39 +01:00
Nick Mathewson
f794a09164
Merge branch 'bug14478_squashed'
2015-02-11 15:59:41 -05:00
Sebastian Hahn
dfb409b8b0
Put error messages to stderr
...
Thanks weasel :)
Also remove stray debug output
2015-02-11 15:59:34 -05:00
Sebastian Hahn
c5f176b9b0
Change exit code of zero_length_keys script
...
Weasel notes that exit codes above 128 are for when a script dies from a
signal.
2015-02-11 15:59:34 -05:00
Sebastian Hahn
6ecd6e27da
Avoid undefined behaviour of test
...
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-11 15:59:34 -05:00
Sebastian Hahn
0a0c5d7c0e
Check that mktemp result is a directory
...
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-11 15:59:34 -05:00
Sebastian Hahn
f84a54c159
Clean up after zero length key test
2015-02-11 15:59:34 -05:00
Nick Mathewson
99e915dbfe
Merge remote-tracking branch 'public/bug14759'
2015-02-11 15:15:24 -05:00
Nick Mathewson
b223b7c22d
fix a compilation warning
2015-02-11 15:10:35 -05:00
Nick Mathewson
d7a1e83f50
Merge remote-tracking branch 'public/remove_freelist'
2015-02-11 15:09:01 -05:00
Nick Mathewson
caf28519d9
Merge branch 'bug12844'
...
Conflicts:
src/or/circuituse.c
src/test/include.am
src/test/test_entrynodes.c
2015-02-11 15:06:04 -05:00
Nick Mathewson
0899f51bc6
Additional paranoia: do not even build tor2web stuff if not using.
...
(That is, don't build it unless we're building for tor2web, or we
are building for tests.)
2015-02-11 14:54:16 -05:00
Nick Mathewson
f5f6d13e4c
Fix crash on glibc __libc_message()
...
__libc_message() tries to open /dev/tty with O_RDWR, but the sandbox
catches that and calls it a crash. Instead, I'm making the sandbox
setenv LIBC_FATAL_STDERR_, so that glibc uses stderr instead.
Fix for 14759, bugfix on 0.2.5.1-alpha
2015-02-11 09:46:29 -05:00
Nick Mathewson
6f331645c7
Remove mempools and buf freelists
...
They have been off-by-default since 0.2.5 and nobody has complained. :)
Also remove the buf_shrink() function, which hasn't done anything
since we first stopped using contiguous memory to store buffers.
Closes ticket 14848.
2015-02-11 09:03:50 -05:00
Nick Mathewson
0c81dfa848
Merge remote-tracking branch 'public/feature_13555'
2015-02-11 08:42:00 -05:00
Nick Mathewson
5c820def99
Merge remote-tracking branch 'sysrqb/bug14802_025'
2015-02-09 22:39:55 -08:00
Nick Mathewson
f4c0735933
Merge remote-tracking branch 'teor/avoid-NULL-smartlist-foreach'
2015-02-09 22:35:40 -08:00
Sebastian Hahn
9667b2b88a
Add some comments to or_circuit_t.workqueue_entry
...
These were suggested by dgoulet, thanks!
2015-02-09 16:13:08 +01:00
Sebastian Hahn
7337510090
Avoid use-after-free of circ belonging to cancelled job
...
This fixes a bug where we decide to free the circuit because it isn't on
any workqueue anymore, and then the job finishes and the circuit gets
freed again.
Fixes bug #14815 , not in any released version of Tor.
2015-02-09 16:12:47 +01:00
Roger Dingledine
56061976db
Recover better when our clock jumps back many hours
...
like might happen for Tails or Whonix users who start with a very wrong
hardware clock, use Tor to discover a more accurate time, and then
fix their clock.
Resolves part of ticket 8766.
(There are still some timers in various places that aren't addressed yet.)
2015-02-09 01:05:31 -05:00
Damian Johnson
44abbf5ab6
Dropping test_cmdline_args.py
...
Before a couple weeks ago didn't know Tor had these tests, interesting! Stem
already has tests for spawning tor processes but lacked any with this targeted
focus on its arguments.
I've added our own counterpart for these tests. Many are direct copies but
there were others I improved a little...
https://trac.torproject.org/projects/tor/ticket/14109
https://gitweb.torproject.org/stem.git/commit/?id=137d193a026638f066e817e3396cebbbb6ace012
Now that Tor uses Stem to supplement its tests no reason for these to live
separately. Tested by simply building tor and confirming test_cmdline_args.py
is no longer in the generated Makefile.
2015-02-08 21:34:36 -08:00
Roger Dingledine
1cb9064d7d
shift all the static times into a struct
...
no actual behavior changes yet
2015-02-09 00:07:15 -05:00
Sebastian Hahn
37d16c3cc7
Reserve enough space for rend_service_port_config_t
...
In #14803 , Damian noticed that his Tor sometimes segfaults. Roger noted
that his valgrind gave an invalid write of size one here. Whenever we
use FLEXIBLE_ARRAY_MEMBER, we have to make sure to actually malloc a
thing that's large enough.
Fixes bug #14803 , not in any released version of Tor.
2015-02-09 04:48:16 +01:00
Matthew Finkel
9ae321db66
Return 0 when detecting the amount of memory fails
...
Fixes bug 14802; bugfix on 0.2.5.4-alpha.
2015-02-09 02:06:18 +00:00
teor
d0759da14e
Avoid calling SMARTLIST_FOREACH on a NULL smartlist in tests
...
Check if each smartlist is NULL before calling SMARTLIST_FOREACH on it.
Bug discovered by the clang static analyzer.
Apple clang 600.0.56 (LLVM 3.5svn) on x86_64-apple-darwin14.1.0.
2015-02-08 23:41:37 +11:00
Nick Mathewson
8b82f6261e
Search-and-replace to regain coding style in wake of 13822.
...
(all-caps should be reserved for global or module-global constants and
2015-02-07 08:33:36 -05:00
Nick Mathewson
4beb830953
Split ROUTER_REQUIRED_MIN_BANDWIDTH into RELAY_ and BRIDGE_ variants
...
Also raise those minima from 20 to 75 and 50 respectively.
Closes ticket 13822.
2015-02-07 08:33:23 -05:00
David Goulet
b101f4e98c
Control: getinfo entry-guards report down-since
...
If the guard unreachable_since variable was set, the status "up" was
reported which is wrong. This adds the "down" status followed by the
unreachable_since time value.
Fixes #14184
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-02-06 16:06:20 -05:00
Sebastian Hahn
136b1d8ed0
Remove useless export in zero length key test
...
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-06 21:56:26 +01:00
Sebastian Hahn
d695f7b423
Don't use invalid exit values in zero length key test
...
Shell exit values must fall into the range of [0-255], so let's honour
this. In practice, the "exit -1" from the old code set an exit value of
255 on most systems, so let's pick that.
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-06 21:55:59 +01:00
Nick Mathewson
e36faeec1d
Merge remote-tracking branch 'sebastian/bug13993'
2015-02-06 15:42:53 -05:00
Sebastian Hahn
e0c3de40ad
Fix check-spaces complaints
2015-02-06 21:36:40 +01:00
Sebastian Hahn
6d8b614729
Avoid logging startup messages twice
2015-02-06 21:34:21 +01:00
Sebastian Hahn
b3bc871214
Add unit test for #13290
2015-02-06 21:04:05 +01:00
Yawning Angel
16cf1679e7
Fix scheduler compilation on targets where char is unsigned.
...
Per discussion with nickm, the `dir` argument should be a int rather
than a signed char.
Fixes bug #14764 .
2015-02-06 16:26:28 +00:00
Nick Mathewson
1799c2be09
Merge remote-tracking branch 'public/bug13796'
2015-02-05 22:53:15 -05:00
Nick Mathewson
2274221557
Fix a work-counting bug introduced by the workqueue merge
...
David Goulet finds that when he runs a busy relay for a while with the
latest version of the git code, the number of onionskins handled
slowly dwindles to zero, with total_pending_tasks wedged at its
maximum value.
I conjecture this is because the total_pending_tasks variable isn't
decremented when we successfully cancel a job. Fixed that.
Fixes bug 14741; bugfix not on any released version of tor.
2015-02-05 12:17:08 -05:00
Nick Mathewson
3f993dacc1
use ARRAY_LENGTH macro in domain_to_string
2015-02-05 11:01:13 -05:00
Yawning Angel
b330bdec8e
Add a string representation for LD_SCHED, and a extra sanity check.
...
This both fixes the problem, and ensures that forgetting to update
domain_list in the future will trigger the bug codepath instead of
a NULL pointer deref.
2015-02-05 15:46:27 +00:00
Nick Mathewson
daab405168
Bump the minimum relay version to 0.2.4.18-rc
...
Closes #13555
2015-02-04 13:27:56 -05:00
Nick Mathewson
a8835170d7
Use getsockname, not getsockopt, on TPROXY sockets
2015-02-04 10:09:54 -05:00
Nick Mathewson
ac8f235446
fix a unit tests memory leak (my fault)
2015-02-03 15:58:48 -05:00
Nick Mathewson
5be48c5d4c
Work around test_status.c weirdness
...
Ordinarily, get_options() can never return NULL, but with
test_status.c mocking, it can. So test for that case.
The best fix here would be to pass the options value to a
bridge_server_mode() function.
2015-02-03 15:50:31 -05:00
Nick Mathewson
cdc49629c7
Merge branch 'bug6852'
...
Conflicts:
src/or/status.c
2015-02-03 13:06:58 -05:00
Nick Mathewson
7f52dc4d03
Choose a more deliberate cutoff for clients in heartbeat
2015-02-03 13:02:22 -05:00
Nick Mathewson
d03e1da232
Merge remote-tracking branch 'public/bug9635_warnings_025'
...
Conflicts:
src/test/test.c
2015-02-02 16:31:32 -05:00