]>
git.ipfire.org Git - thirdparty/tor.git/log
teor (Tim Wilson-Brown) [Tue, 24 Nov 2015 20:54:18 +0000 (07:54 +1100)]
fixup! Refuse to make direct connections to private OR addresses
Add changes file.
teor (Tim Wilson-Brown) [Tue, 24 Nov 2015 16:11:15 +0000 (03:11 +1100)]
Refuse to make direct connections to private OR addresses
Refuse connection requests to private OR addresses unless
ExtendAllowPrivateAddresses is set. Previously, tor would
connect, then refuse to send any cells to a private address.
Fixes bugs 17674 and 8976; bugfix on
b7c172c9ec76 (28 Aug 2012)
Original bug 6710, released in 0.2.3.21-rc and an 0.2.2 maint
release.
Patch by "teor".
Roger Dingledine [Mon, 23 Nov 2015 12:40:13 +0000 (07:40 -0500)]
fix two typos in comments
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
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".
Yawning Angel [Wed, 18 Nov 2015 11:27:24 +0000 (11:27 +0000)]
Fix a startup time assert caused by periodic events not being initialized.
Loading a on disk bridge descriptor causes a directory download to be
scheduled, which asserts due to the periodic events not being
initialized yet.
Fixes bug #17635, not in any released version of tor.
Nick Mathewson [Tue, 17 Nov 2015 15:00:41 +0000 (10:00 -0500)]
windows already has a CALLBACK macro...
Nick Mathewson [Tue, 17 Nov 2015 14:37:50 +0000 (09:37 -0500)]
Fix a server-side crash on DNS init
Nick Mathewson [Tue, 17 Nov 2015 14:26:50 +0000 (09:26 -0500)]
Some unit tests now require that periodic events be initialized.
Nick Mathewson [Tue, 17 Nov 2015 14:06:47 +0000 (09:06 -0500)]
Free pending_entry_connections on shutdown.
Nick Mathewson [Tue, 17 Nov 2015 13:49:30 +0000 (08:49 -0500)]
Be more conservative in scanning the list of pending streams
Now we only re-scan the list in the cases we did before: when we
have a new circuit that we should try attaching to, or when we have
added a new stream that we haven't tried to attach yet.
This is part of 17590.
Nick Mathewson [Fri, 13 Nov 2015 18:38:01 +0000 (13:38 -0500)]
Decouple ..attach_circuit() from most of its callers.
Long ago we used to call connection_ap_handshake_attach_circuit()
only in a few places, since connection_ap_attach_pending() attaches
all the pending connections, and does so regularly. But this turned
out to have a performance problem: it would introduce a delay to
launching or connecting a stream.
We couldn't just call connection_ap_attach_pending() every time we
make a new connection, since it walks the whole connection list. So
we started calling connection_ap_attach_pending all over, instead!
But that's kind of ugly and messes up our callgraph.
So instead, we now have connection_ap_attach_pending() use a list
only of the pending connections, so we can call it much more
frequently. We have a separate function to scan the whole
connection array to see if we missed adding anything, and log a
warning if so.
Closes ticket #17590
Nick Mathewson [Tue, 17 Nov 2015 13:53:16 +0000 (08:53 -0500)]
Whoops; in this context the EV_TIMEOUT flag is needed
Nick Mathewson [Tue, 17 Nov 2015 13:27:42 +0000 (08:27 -0500)]
Merge branch 'bug3199_redux_3'
Nick Mathewson [Tue, 17 Nov 2015 13:26:04 +0000 (08:26 -0500)]
Changes to 3199 branch based on feedback from special
Nick Mathewson [Mon, 16 Nov 2015 15:40:23 +0000 (10:40 -0500)]
Add documentation for periodic event api
Nick Mathewson [Mon, 2 Nov 2015 20:36:09 +0000 (15:36 -0500)]
Change periodic.c to use libevent directly
Libevent's periodic timers aren't the right solution when the
timeout potentially changes every time.
Nick Mathewson [Mon, 2 Nov 2015 20:11:16 +0000 (15:11 -0500)]
fix whitespace; remove dead code
Nick Mathewson [Mon, 2 Nov 2015 20:09:48 +0000 (15:09 -0500)]
Fold all of the run-every-second stuff back into run_scheduled_events()
Nick Mathewson [Mon, 2 Nov 2015 19:59:29 +0000 (14:59 -0500)]
Turn all of run_scheduled_events() into a bunch of periodic events
This patch is designed to look good when you see it through 'diff -b':
it mostly leaves entries in the same order, and leaves the code unmodified.
Nick Mathewson [Mon, 2 Nov 2015 15:49:33 +0000 (10:49 -0500)]
Connect periodic events to main
Kevin Butler [Mon, 2 Nov 2015 14:48:18 +0000 (09:48 -0500)]
Infrastructure for replacing global periodic events in main.c
(This is from Kevin's bug3199 patch series; nick extracted it into
a new file and changed the interface a little, then did some API
tweaks on it.)
Nick Mathewson [Fri, 13 Nov 2015 18:46:47 +0000 (13:46 -0500)]
appease check-spaces
Nick Mathewson [Fri, 13 Nov 2015 14:58:16 +0000 (09:58 -0500)]
Merge remote-tracking branch 'public/ticket11150_client_only'
Nick Mathewson [Fri, 13 Nov 2015 14:46:32 +0000 (09:46 -0500)]
Remove a little duplicated code in TAP key expansion
patch from pfrankw; closes 17587.
Nick Mathewson [Fri, 13 Nov 2015 14:01:55 +0000 (09:01 -0500)]
fix an email address in doc/HACKING/ReleasingTor.md
Nick Mathewson [Fri, 13 Nov 2015 13:42:31 +0000 (08:42 -0500)]
Nick Mathewson [Fri, 13 Nov 2015 13:42:20 +0000 (08:42 -0500)]
Nick Mathewson [Fri, 13 Nov 2015 13:41:30 +0000 (08:41 -0500)]
Bump to 0.2.7.5
Nick Mathewson [Thu, 12 Nov 2015 19:20:24 +0000 (14:20 -0500)]
Merge branch 'decouple_circuit_mark_squashed'
Nick Mathewson [Fri, 2 Oct 2015 15:55:25 +0000 (17:55 +0200)]
Experimentally decouple the main body of circuit_mark_for_close
Joan Queralt [Mon, 2 Nov 2015 00:36:19 +0000 (01:36 +0100)]
+ and / usage clarification - Fixes #13158
Nick Mathewson [Thu, 12 Nov 2015 16:40:58 +0000 (11:40 -0500)]
Merge branch 'karsten_bug13192_026_03_teor'
Nick Mathewson [Thu, 9 Jul 2015 20:54:17 +0000 (16:54 -0400)]
Rename cast_double_to_int64 to clamp_double_to_int64
Nick Mathewson [Thu, 12 Nov 2015 16:32:14 +0000 (11:32 -0500)]
Make round_to_next_multiple_of always round upwards.
Yes, even if it has to return a non-multiple. This prevents us from
ever having a bug where we try to use it for allocation, and under-allocate.
Nick Mathewson [Tue, 10 Nov 2015 15:40:31 +0000 (10:40 -0500)]
Merge branch 'bug17549'
Nick Mathewson [Tue, 10 Nov 2015 15:40:19 +0000 (10:40 -0500)]
appease check-spaces
Nick Mathewson [Tue, 10 Nov 2015 15:14:58 +0000 (10:14 -0500)]
every version of openssl we support has SSL_get_state
Nick Mathewson [Tue, 10 Nov 2015 15:13:04 +0000 (10:13 -0500)]
Every openssl we support has ERR_remove_thread_state
Nick Mathewson [Tue, 10 Nov 2015 15:02:21 +0000 (10:02 -0500)]
Move openssl version compatibility defines into a new header.
teor (Tim Wilson-Brown) [Mon, 9 Nov 2015 22:47:48 +0000 (09:47 +1100)]
Mark fallback directoriess as too busy after a 503 response
Mark fallback directory mirrors as "too busy" when they return
a 503 response. Previously, the code just marked authorities as busy.
Unless clients set their own fallback directories, they will never see
this bug. (There are no default fallbacks yet.)
Fixes bug 17572; bugfix on
5c51b3f1f0d4 released in 0.2.4.7-alpha.
Patch by "teor".
Yawning Angel [Fri, 6 Nov 2015 19:42:39 +0000 (19:42 +0000)]
Fix the tortls.c unit tests to pass with OpenSSL 1.1.0-dev.
The string description for the states got changed slightly.
Yawning Angel [Fri, 6 Nov 2015 19:12:43 +0000 (19:12 +0000)]
Fix compilation with OpenSSL 1.1.0 --enable-gcc-warnings is set.
Yawning Angel [Fri, 6 Nov 2015 19:02:56 +0000 (19:02 +0000)]
Fix compilation with OpenSSL 1.1.0-dev.
OpenSSL changed the API:
* https://github.com/openssl/openssl/commit/
5998e2903589e7b19e102ebff06521f2dcb60409
* https://github.com/openssl/openssl/commit/
b0700d2c8de79252ba605748a075cf2e5d670da1
Nick Mathewson [Fri, 6 Nov 2015 15:58:00 +0000 (10:58 -0500)]
"And now a better patch which builds the tests if LibreSSL is used."
Works on the latest LibreSSL (in OpenBSD-current).
(Patch from 'rubiate' on #17253.
Yawning Angel [Thu, 5 Nov 2015 18:21:43 +0000 (18:21 +0000)]
Fix SipHash-2-4 performance for non multiple of 8 buffers.
Code cribbed from Andrew Moon's Public Domain SipHash-2-4
implementation (which IMO is also cleaner).
Fixes bug 17544.
Nick Mathewson [Thu, 5 Nov 2015 14:53:05 +0000 (09:53 -0500)]
Delete trailing whitespace in md files
Nick Mathewson [Thu, 5 Nov 2015 14:46:40 +0000 (09:46 -0500)]
add release notes
tom lurge [Thu, 5 Nov 2015 14:13:53 +0000 (09:13 -0500)]
added some markdown formatting
Nick Mathewson [Tue, 3 Nov 2015 13:23:08 +0000 (08:23 -0500)]
Fix filename endings in HACKING. Patch from "ckomlo", ticket #17515.
Nick Mathewson [Sat, 31 Oct 2015 18:44:34 +0000 (14:44 -0400)]
remove changes files that have been used in existing changelogs
Nick Mathewson [Fri, 30 Oct 2015 14:57:47 +0000 (10:57 -0400)]
Refer to the actual minima and the preferred minimum
Nima Fatemi [Mon, 15 Jun 2015 23:12:52 +0000 (23:12 +0000)]
Bump up minimum BandwidthRate from 30KB to 250KBytes - Fixes #16382
Nick Mathewson [Fri, 30 Oct 2015 13:59:11 +0000 (09:59 -0400)]
Merge remote-tracking branch 'rl1987/ticket16831_part2_rebased'
Nick Mathewson [Fri, 30 Oct 2015 13:25:51 +0000 (09:25 -0400)]
Merge branch 'doc17392'
rl1987 [Thu, 22 Oct 2015 17:12:46 +0000 (20:12 +0300)]
Mention torspec URL in the manpage.
Nick Mathewson [Thu, 29 Oct 2015 14:30:27 +0000 (10:30 -0400)]
hacking is now markdown
Not good markdown, mind you.
Nick Mathewson [Thu, 29 Oct 2015 14:29:21 +0000 (10:29 -0400)]
More issues that Karsten spotted
Karsten Loesing [Thu, 29 Oct 2015 13:28:17 +0000 (14:28 +0100)]
Clean up the doc/HACKING/* docs a bit.
rl1987 [Thu, 29 Oct 2015 12:12:29 +0000 (13:12 +0100)]
Fix GCC warnings.
Nick Mathewson [Mon, 26 Oct 2015 13:18:48 +0000 (09:18 -0400)]
Merge remote-tracking branch 'rl1987/bug17417_take2'
rl1987 [Sat, 24 Oct 2015 13:21:35 +0000 (16:21 +0300)]
Avoid crashing due to double-freeing memory.
rl1987 [Thu, 22 Oct 2015 15:56:43 +0000 (18:56 +0300)]
Adding changes file.
rl1987 [Wed, 21 Oct 2015 19:24:00 +0000 (22:24 +0300)]
Seventh test case for dns_resolve_impl().
rl1987 [Tue, 20 Oct 2015 17:40:21 +0000 (20:40 +0300)]
Sixth test case for dns_resolve_impl.
rl1987 [Sun, 18 Oct 2015 15:04:48 +0000 (18:04 +0300)]
Add a fifth unit test.
rl1987 [Mon, 12 Oct 2015 18:13:01 +0000 (21:13 +0300)]
Whitespace fixes.
rl1987 [Sat, 10 Oct 2015 15:03:11 +0000 (18:03 +0300)]
Add a fourth test case.
rl1987 [Sat, 10 Oct 2015 14:49:24 +0000 (17:49 +0300)]
Third test case for dns_resolve_impl.
rl1987 [Thu, 8 Oct 2015 18:47:52 +0000 (21:47 +0300)]
A second test case for dns_resolve_impl.
rl1987 [Thu, 8 Oct 2015 18:27:17 +0000 (21:27 +0300)]
Making it slightly cleaner.
rl1987 [Wed, 7 Oct 2015 19:14:48 +0000 (22:14 +0300)]
First test case for dns_resolve_impl().
rl1987 [Mon, 28 Sep 2015 18:44:05 +0000 (21:44 +0300)]
Using namespace macros for mock functions in test_dns.c
rl1987 [Sun, 27 Sep 2015 16:51:04 +0000 (19:51 +0300)]
Use NS_SUBMODULEs in test_dns.c
Nick Mathewson [Thu, 22 Oct 2015 22:47:26 +0000 (18:47 -0400)]
Compilation was off by one character
Nick Mathewson [Thu, 22 Oct 2015 14:03:04 +0000 (10:03 -0400)]
Actually add HowToReview.txt
Nick Mathewson [Thu, 22 Oct 2015 14:01:13 +0000 (10:01 -0400)]
Start writing a how to review doc