]>
git.ipfire.org Git - thirdparty/tor.git/log
cypherpunks [Mon, 16 Nov 2015 14:12:44 +0000 (15:12 +0100)]
Add changes file for 17778
cypherpunks [Mon, 16 Nov 2015 12:21:56 +0000 (13:21 +0100)]
Fix memory leak in ntor test
Nick Mathewson [Mon, 7 Dec 2015 15:23:30 +0000 (10:23 -0500)]
Merge remote-tracking branch 'teor/exitpolicy-multicast'
Nick Mathewson [Mon, 7 Dec 2015 15:13:20 +0000 (10:13 -0500)]
Merge remote-tracking branch 'teor/comments-
20151204 '
Nick Mathewson [Mon, 7 Dec 2015 15:11:54 +0000 (10:11 -0500)]
Merge branch 'maint-0.2.7'
Nick Mathewson [Mon, 7 Dec 2015 15:11:21 +0000 (10:11 -0500)]
Merge branch 'maint-0.2.6' into maint-0.2.7
Nick Mathewson [Mon, 7 Dec 2015 15:10:44 +0000 (10:10 -0500)]
Merge branch 'maint-0.2.5' into maint-0.2.6
Nick Mathewson [Mon, 7 Dec 2015 15:10:21 +0000 (10:10 -0500)]
Merge branch 'maint-0.2.4' into maint-0.2.5
teor (Tim Wilson-Brown) [Mon, 7 Dec 2015 05:13:07 +0000 (16:13 +1100)]
Comment-only change to connection_get_by_type_addr_port_purpose
connection_get_by_type_addr_port_purpose also ignores connections
that are marked for close.
teor (Tim Wilson-Brown) [Mon, 7 Dec 2015 04:59:34 +0000 (15:59 +1100)]
Comment-only changes to connection_connect
port is in host order (addr is tor_addr_t, endianness is abstracted).
addr and port can be different to conn->addr and conn->port if
connecting via a proxy.
teor (Tim Wilson-Brown) [Fri, 4 Dec 2015 07:13:29 +0000 (18:13 +1100)]
Move a comment in router_get_my_descriptor to the correct line
teor (Tim Wilson-Brown) [Tue, 1 Dec 2015 02:08:37 +0000 (13:08 +1100)]
Update comment: get_connection_array no longer takes "n"
teor (Tim Wilson-Brown) [Mon, 7 Dec 2015 03:44:23 +0000 (14:44 +1100)]
Consistently ignore multicast in internal reject private exit policies
Consistently ignore multicast addresses when automatically
generating reject private exit policies.
Closes ticket 17763. Bug fix on
10a6390deb3c9 ,
not in any released version of Tor. Patch by "teor".
Karsten Loesing [Sat, 5 Dec 2015 16:02:59 +0000 (17:02 +0100)]
Update geoip and geoip6 to the December 1 2015 database.
Nick Mathewson [Tue, 1 Dec 2015 03:03:00 +0000 (22:03 -0500)]
Merge branch 'maint-0.2.7'
cypherpunks [Sun, 29 Nov 2015 20:07:34 +0000 (21:07 +0100)]
Add changes file for 17722
cypherpunks [Fri, 17 Jul 2015 09:53:12 +0000 (11:53 +0200)]
Fix undefined behavior caused by memory overlap
The tor_cert_get_checkable_sig function uses the signing key included in
the certificate (if available) when a separate public key is not given.
When the signature is valid, the tor_cert_checksig function copies the
public key from the checkable structure to the public key field of the
certificate signing key.
In situations where the separate public key is not given but the
certificate includes a signing key, the source and destination pointers
in the copy operation are equal and invoke undefined behavior.
Undefined behaviour is avoided by ensuring both pointers are different.
teor (Tim Wilson-Brown) [Mon, 30 Nov 2015 23:50:14 +0000 (10:50 +1100)]
Avoid relying on malloc internals in test_rend_cache_purge.
Closes ticket 17724. Bug fix on
ade5005853c1 and
5e9f2384cf0f ,
not in any released version of Tor. Patch by "teor".
Nick Mathewson [Fri, 27 Nov 2015 17:54:57 +0000 (12:54 -0500)]
More fixes/debugging attempts for 17659
Nick Mathewson [Fri, 27 Nov 2015 17:11:51 +0000 (12:11 -0500)]
Add a stack trace for help debugging one part of 17659
Nick Mathewson [Fri, 27 Nov 2015 16:54:52 +0000 (11:54 -0500)]
Merge branch 'fix-policies-memory-v2-squashed'
cypherpunks [Thu, 26 Nov 2015 18:03:44 +0000 (19:03 +0100)]
Fix memory leak in policies test
teor (Tim Wilson-Brown) [Thu, 26 Nov 2015 22:31:47 +0000 (09:31 +1100)]
Fix use-after-free of stack memory in getinfo_helper_policies
teor (Tim Wilson-Brown) [Thu, 26 Nov 2015 22:17:44 +0000 (09:17 +1100)]
Fix use-after-free of stack memory in policies_parse_exit_policy*
Change the function names & comments to make the copying explicit.
Nick Mathewson [Fri, 27 Nov 2015 16:52:59 +0000 (11:52 -0500)]
use sockaddr_storage for stack-allocated sockets in ersatz socketpair
Nick Mathewson [Fri, 27 Nov 2015 16:48:54 +0000 (11:48 -0500)]
Make SIZEOF_SOCKADDR return socklen_t to avoid bad compares.
Nick Mathewson [Fri, 27 Nov 2015 16:39:03 +0000 (11:39 -0500)]
Use uint16_t, not in_port_t (which does not exist on Windows). See #17638.
Nick Mathewson [Fri, 27 Nov 2015 16:21:51 +0000 (11:21 -0500)]
Check magic number in connection_ap_attach_pending
Nick Mathewson [Thu, 26 Nov 2015 17:44:12 +0000 (12:44 -0500)]
improve log messages to try to track down #17659
teor (Tim Wilson-Brown) [Thu, 26 Nov 2015 15:25:31 +0000 (02:25 +1100)]
Unit test the full length of SHA256 and SHA512 digests
Bugfix on a tor version before the refactoring in git commit
cea12251995d (23 Sep 2009). Patch by "teor".
Nick Mathewson [Thu, 26 Nov 2015 15:05:38 +0000 (10:05 -0500)]
Merge remote-tracking branch 'teor/rand-failure-modes-v2'
Nick Mathewson [Thu, 26 Nov 2015 15:00:12 +0000 (10:00 -0500)]
Fix buffer size in sha512 unit test
Nobody likes a stack overflow, even in unit tests.
Closes 17699; but not in any released tor.
Nick Mathewson [Thu, 26 Nov 2015 14:34:44 +0000 (09:34 -0500)]
Fix test_tortls.c to no longer test failing crypto_rand.
(crypto_rand is no longer allowed to fail.)
Closes bug 17686; bug not in any released tor. (No backport, since
the tortls tests aren't in 0.2.7)
teor (Tim Wilson-Brown) [Thu, 26 Nov 2015 14:11:25 +0000 (01:11 +1100)]
Correctly free a smartlist in getinfo_helper_policies
cypherpunks [Thu, 26 Nov 2015 12:18:40 +0000 (13:18 +0100)]
Quote variables in case they contain spaces
teor (Tim Wilson-Brown) [Thu, 26 Nov 2015 10:25:31 +0000 (21:25 +1100)]
Add unit tests that check for common RNG failure modes
Check that crypto_rand doesn't return all zeroes, identical values,
or incrementing values (OpenSSL's rand_predictable feature).
Nick Mathewson [Thu, 26 Nov 2015 03:33:49 +0000 (22:33 -0500)]
Merge branch 'bug17686_v2_027'
Nick Mathewson [Wed, 25 Nov 2015 18:25:21 +0000 (13:25 -0500)]
Add a changes file for bug 17686
Nick Mathewson [Wed, 25 Nov 2015 17:28:20 +0000 (12:28 -0500)]
Fix documentation for crypto_rand*
Nick Mathewson [Wed, 25 Nov 2015 15:42:00 +0000 (10:42 -0500)]
Now that crypto_rand() cannot fail, it should return void.
Nick Mathewson [Wed, 25 Nov 2015 15:36:34 +0000 (10:36 -0500)]
Add crypto-initializer functions to those whose return values must be checked
Nick Mathewson [Wed, 25 Nov 2015 15:30:58 +0000 (10:30 -0500)]
Make crypto_seed_rng() and crypto_rand() less scary.
These functions must really never fail; so have crypto_rand() assert
that it's working okay, and have crypto_seed_rng() demand that
callers check its return value. Also have crypto_seed_rng() check
RAND_status() before returning.
Nick Mathewson [Thu, 26 Nov 2015 03:28:12 +0000 (22:28 -0500)]
Merge remote-tracking branch 'teor/check-crypto-errors-v2'
teor (Tim Wilson-Brown) [Sun, 22 Nov 2015 21:46:26 +0000 (08:46 +1100)]
fixup! Add controller getinfo exit-policy/reject-private
Stop ignoring ExitPolicyRejectPrivate in getinfo
exit-policy/reject-private. Fix a memory leak.
Set ExitPolicyRejectPrivate in the unit tests, and make a mock
function declaration static.
teor (Tim Wilson-Brown) [Mon, 23 Nov 2015 09:53:59 +0000 (20:53 +1100)]
Check the return value of HMAC in crypto.c and assert on error
Fixes bug #17658; bugfix on commit in
fdbb9cdf746b (11 Oct 2011)
in tor version 0.2.3.5-alpha-dev.
Nick Mathewson [Wed, 25 Nov 2015 17:25:44 +0000 (12:25 -0500)]
Merge branch 'bug17654_try1'
Nick Mathewson [Wed, 25 Nov 2015 14:43:12 +0000 (09:43 -0500)]
Attempt to make openbsd compilation happier with libevent2 installed
Fix for bug 16651; patch from "rubiate".
cypherpunks [Wed, 25 Nov 2015 14:20:07 +0000 (15:20 +0100)]
Initialize libevent before periodic events
The initialization of libevent interferes with other tests so we also
fork the circuit_timeout test.
teor (Tim Wilson-Brown) [Sun, 22 Nov 2015 21:38:32 +0000 (08:38 +1100)]
fixup! Block OutboundBindAddressIPv[4|6]_ and configured ports on exit relays
Fix unit tests for get_interface_address6_list to assume less
about the interface addresses on the system.
Instead, mock get_interface_address6_list and use the mocked
function to provide a range of address combinations.
Nick Mathewson [Wed, 25 Nov 2015 14:28:44 +0000 (09:28 -0500)]
Merge branch 'maint-0.2.7'
Nick Mathewson [Wed, 25 Nov 2015 14:27:52 +0000 (09:27 -0500)]
Include netinet/in.h (if detected) in check for net/pfvar.h
Patch from rubiate; fixes bug 17551.
Nick Mathewson [Wed, 25 Nov 2015 14:21:25 +0000 (09:21 -0500)]
Merge remote-tracking branch 'public/decouple_dir_request_failed'
Nick Mathewson [Wed, 25 Nov 2015 14:12:50 +0000 (09:12 -0500)]
Fix a logic error in connection_tls_continue_handshake().
(If we take the branch above this assertion, than we *didn't* have a
v1 handshake. So if we don't take the branch, we did. So if we
reach this assertion, we must be running as a server, since clients
no longer attempt v1 handshakes.)
Fix for bug 17654; bugfix on
9d019a7db725dca3dfdbf8d4dbc3b51835e0b49e .
Bug not in any released Tor.
Nick Mathewson [Wed, 25 Nov 2015 14:08:15 +0000 (09:08 -0500)]
Merge remote-tracking branch 'teor/comments-
20151123 '
Nick Mathewson [Wed, 25 Nov 2015 14:07:02 +0000 (09:07 -0500)]
Merge remote-tracking branch 'atagar/man_page_fixes'
Nick Mathewson [Wed, 25 Nov 2015 14:04:17 +0000 (09:04 -0500)]
Tweak gtank's sha512 patch a little
Nick Mathewson [Wed, 25 Nov 2015 14:00:01 +0000 (09:00 -0500)]
Merge remote-tracking branch 'gtank/feature17663'
Nick Mathewson [Wed, 25 Nov 2015 13:55:18 +0000 (08:55 -0500)]
Merge remote-tracking branch 'teor/feature8961-replaycache-sha256'
Nick Mathewson [Wed, 25 Nov 2015 13:53:46 +0000 (08:53 -0500)]
Merge branch 'maint-0.2.7'
Damian Johnson [Tue, 24 Nov 2015 02:29:19 +0000 (18:29 -0800)]
Fixes for tor's man page
I'm adding Stem test coverage for tor's man page and in doing so ran into quite
a few issues. All of them are pretty minor (worst was misnaming a couple config
options), but still good things to fix. :P
Damian Johnson [Tue, 24 Nov 2015 02:27:17 +0000 (18:27 -0800)]
Drop HidServDirectoryV2 and VoteOnHidServDirectoriesV2
These options were removed from tor in July. Time to axe them from our man
page. :P
https://gitweb.torproject.org/tor.git/commit/?id=
2f8cf524ba4e565ab613504a4c41fd724d32facc
George Tankersley [Tue, 24 Nov 2015 02:24:22 +0000 (02:24 +0000)]
add changes for feature17663
Damian Johnson [Tue, 24 Nov 2015 02:21:38 +0000 (18:21 -0800)]
Split 'slop' man page options to their own lines
The slop testing options are the only spot where we try to enumerate multiple
options on the same line. Changing them to each be on their own line as we do
elsewhere.
George Tankersley [Tue, 24 Nov 2015 02:02:13 +0000 (02:02 +0000)]
implement teor's comments
Damian Johnson [Tue, 24 Nov 2015 01:51:30 +0000 (17:51 -0800)]
TestingLinkCertLifetime was misnamed as 'TestingLinkCertifetime'
Simple typo - we were missing a letter.
Damian Johnson [Tue, 24 Nov 2015 01:44:52 +0000 (17:44 -0800)]
Rename RecommendedPackageVersions to RecommendedPackages
A 'RecommendedPackageVersions' option doesn't exist in tor. However, it *does*
have RecommendedPackages...
feature: https://gitweb.torproject.org/tor.git/commit/?id=
c83d8381
man addition: https://gitweb.torproject.org/tor.git/commit/?id=
ddfdeb56
George Tankersley [Wed, 18 Nov 2015 08:37:05 +0000 (08:37 +0000)]
add SHA512 support to crypto
Damian Johnson [Tue, 24 Nov 2015 01:32:49 +0000 (17:32 -0800)]
Replace 'SOCKSPort' with 'SocksPort'
When applying changes from proposal 171 Nick renamed SocksPort to SOCKSPort,
and SocksListenAddress to SOCKSListenAddress...
https://gitweb.torproject.org/tor.git/commit/?id=
891ccd3cd0690e83f1dc4dde7698c3bd9d7fe98d
However, this didn't change the option itself in tor (it's still SocksPort),
and wasn't even uniform in the man page. Functionally this doesn't matter
(tor's config options are case insensitive) but this is a pretty clear
regression.
Damian Johnson [Tue, 24 Nov 2015 01:26:46 +0000 (17:26 -0800)]
Note in man page where users can file bugs
In addition to inviting users to tell us about bugs, lets say where.
Damian Johnson [Tue, 24 Nov 2015 01:25:26 +0000 (17:25 -0800)]
ControlPort's section on flags wasn't indented
Minor formatting issue with our ControlPort entry. The part about flags wasn't
indented with the rest of its description.
Damian Johnson [Tue, 24 Nov 2015 01:23:14 +0000 (17:23 -0800)]
Malformed ExtORPort entry in man page
Minor formatting issue with our ExtORPort that caused its description to be on
the same line as the option (munging the two together).
teor (Tim Wilson-Brown) [Mon, 23 Nov 2015 22:08:53 +0000 (09:08 +1100)]
Use SHA256 in the replaycache, rather than SHA1
This migrates away from SHA1, and provides further hash flooding
protection on top of the randomised siphash implementation.
Add unit tests to make sure that different inputs don't have the
same hash.
David Goulet [Mon, 23 Nov 2015 14:02:54 +0000 (09:02 -0500)]
Fix: use the right list in find_expiring_intro_point()
The wrong list was used when looking up expired intro points in a rend
service object causing what we think could be reachability issues and
triggering a BUG log.
Fixes #16702
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
Roger Dingledine [Mon, 23 Nov 2015 12:40:13 +0000 (07:40 -0500)]
fix two typos in comments
teor (Tim Wilson-Brown) [Mon, 23 Nov 2015 09:31:57 +0000 (20:31 +1100)]
Fix comments to describe actual return values (crypto.c)
teor (Tim Wilson-Brown) [Mon, 23 Nov 2015 07:59:11 +0000 (18:59 +1100)]
Fix typo in comment on crypto_add_spaces_to_fp
teor (Tim Wilson-Brown) [Sun, 22 Nov 2015 23:26:07 +0000 (10:26 +1100)]
Comment only: crypto_seed_rng no longer has a "startup" parameter
Nick Mathewson [Fri, 20 Nov 2015 15:52:56 +0000 (10:52 -0500)]
fix "make check-spaces"
Nick Mathewson [Fri, 20 Nov 2015 15:51:19 +0000 (10:51 -0500)]
Fix compilation warnings
Nick Mathewson [Fri, 20 Nov 2015 15:48:28 +0000 (10:48 -0500)]
Merge branch 'getinfo-private-exitpolicy-v4-squashed'
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 09:40:17 +0000 (20:40 +1100)]
Add controller getinfo exit-policy/reject-private
exit-policy/reject-private lists the reject rules added by
ExitPolicyRejectPrivate. This makes it easier for stem to
display exit policies.
Add unit tests for getinfo exit-policy/*.
Completes ticket #17183. Patch by "teor".
Nick Mathewson [Fri, 20 Nov 2015 15:28:43 +0000 (10:28 -0500)]
Merge branch 'maint-0.2.7'
Nick Mathewson [Fri, 20 Nov 2015 15:27:35 +0000 (10:27 -0500)]
bump version to 0.2.7-dev
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 12:02:49 +0000 (23:02 +1100)]
Refactor router_dump_exit_policy_to_string
Split out policy_dump_to_string to use it in getinfo_helper_policies.
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 08:58:36 +0000 (19:58 +1100)]
Add changes file for ExitPolicyRejectPrivate outbound and port
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 07:37:01 +0000 (18:37 +1100)]
man update: ExitPolicyRejectPrivate outbound and port addresses
ExitPolicyRejectPrivate now rejects addresses configured via
OutboundBindAddress and any port options, such as ORPort and DirPort.
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 04:54:57 +0000 (15:54 +1100)]
Block OutboundBindAddressIPv[4|6]_ and configured ports on exit relays
Modify policies_parse_exit_policy_reject_private so it also blocks
the addresses configured for OutboundBindAddressIPv4_ and
OutboundBindAddressIPv6_, and any publicly routable port addresses
on exit relays.
Add and update unit tests for these functions.
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 04:36:28 +0000 (15:36 +1100)]
Add unit tests for policies_parse_exit_policy_reject_private
Test that policies_parse_exit_policy_reject_private rejects supplied
IPv4 and IPv6 relay addresses, and the addresses of local interfaces.
teor (Tim Wilson-Brown) [Mon, 16 Nov 2015 02:58:26 +0000 (13:58 +1100)]
Refactor policies_parse_exit_policy_internal
Move the code that rejects publicly routable exit relay addresses
to policies_parse_exit_policy_reject_private. Add
addr_policy_append_reject_addr_list and use it to reject interface
addresses.
This removes the duplicate reject checks on local_address and
ipv6_local_address, but duplicates will be removed by
exit_policy_remove_redundancies at the end of the function.
This also removes the info-level logging on rejected interface
addresses. Instead, log a debug-level message in
addr_policy_append_reject_addr.
This simplifies policies_parse_exit_policy_internal and prepares for
reporting these addresses over the control port in #17183.
Nick Mathewson [Thu, 19 Nov 2015 16:19:31 +0000 (11:19 -0500)]
Merge remote-tracking branch 'teor/bug17632-no-ipv4-no-localhost-squashed'
Nick Mathewson [Thu, 19 Nov 2015 15:48:40 +0000 (10:48 -0500)]
Merge remote-tracking branch 'teor/bug17638-ipv6-ersatz-socketpair'
Nick Mathewson [Thu, 19 Nov 2015 15:44:31 +0000 (10:44 -0500)]
Merge remote-tracking branch 'public/decouple_conn_attach_2'
teor (Tim Wilson-Brown) [Thu, 19 Nov 2015 08:20:01 +0000 (19:20 +1100)]
Fixup #17638: ignore EINVAL from FreeBSD jails without ::1
In my testing, an IPv6-only FreeBSD jail without ::1 returned EINVAL
from tor_ersatz_socketpair. Let's not fail the unit test because of
this - it would only ever use tor_socketpair() anyway.
teor (Tim Wilson-Brown) [Thu, 19 Nov 2015 08:08:22 +0000 (19:08 +1100)]
Make tor_ersatz_socketpair work on IPv6-only systems
(But it won't work on some systems without IPv4/IPv6 localhost
(some BSD jails) by design, to avoid creating sockets on routable
IP addresses. However, those systems likely have the AF_UNIX socketpair,
which tor prefers.)
Fixes bug #17638; bugfix on a very early tor version,
earlier than
22dba27d8dd5 (23 Nov 2004) / svn:r2943.
Patch by "teor".
Nick Mathewson [Wed, 18 Nov 2015 20:02:45 +0000 (15:02 -0500)]
Merge remote-tracking branch 'teor/bug17632-no-ipv4-no-localhost'
teor (Tim Wilson-Brown) [Wed, 18 Nov 2015 12:30:25 +0000 (23:30 +1100)]
Update comments in get_interface_addresses_ioctl
Comment-only change noting platforms that can return IPv6
addresses from SIOCGIFCONF (or SIOCGLIFCONF).
teor (Tim Wilson-Brown) [Wed, 18 Nov 2015 12:25:21 +0000 (23:25 +1100)]
Fix unit tests on systems without IPv4 or localhost addresses
Make unit tests pass on IPv6-only systems, and systems without
localhost addresses (like some FreeBSD jails).
Fixes:
* get_if_addrs_ifaddrs: systems without localhost
* get_if_addrs_ioctl: only works on IPv4 systems
* socket: check IPv4 and IPv6, skip on EPROTONOSUPPORT
* socketpair_ersatz: uses IPv4, skip on EPROTONOSUPPORT
Fixes bug #17632; bugfix on unit tests in 0.2.7.3-rc.
c464a367728d was a partial fix for this issue in #17255;
it was released in unit tests in 0.2.7.4-rc.
Patch by "teor".
teor (Tim Wilson-Brown) [Wed, 18 Nov 2015 13:13:58 +0000 (00:13 +1100)]
Really Really Fixup
86eba14ac549 : Windows support, error return values
teor (Tim Wilson-Brown) [Wed, 18 Nov 2015 12:54:26 +0000 (23:54 +1100)]
Really Fixup
86eba14ac549 : error return values are negative
teor (Tim Wilson-Brown) [Wed, 18 Nov 2015 12:47:12 +0000 (23:47 +1100)]
Fixup
86eba14ac549 : add errno.h for EPROTONOSUPPORT