]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
10 years agoRepair make dist-check
Nick Mathewson [Thu, 9 Jul 2015 17:03:21 +0000 (13:03 -0400)] 
Repair make dist-check

10 years agoMerge remote-tracking branch 'yawning/feature16467_9663'
Nick Mathewson [Thu, 9 Jul 2015 16:53:55 +0000 (12:53 -0400)] 
Merge remote-tracking branch 'yawning/feature16467_9663'

10 years agoMerge branch 'bug4862_027_04_squashed'
Nick Mathewson [Thu, 9 Jul 2015 16:05:14 +0000 (12:05 -0400)] 
Merge branch 'bug4862_027_04_squashed'

10 years agoFix comments in rendservice.c
David Goulet [Mon, 29 Jun 2015 15:12:25 +0000 (11:12 -0400)] 
Fix comments in rendservice.c

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoCount intro circuit and not only established ones
David Goulet [Mon, 15 Jun 2015 21:11:57 +0000 (17:11 -0400)] 
Count intro circuit and not only established ones

When cleaning up extra circuits that we've opened for performance reason, we
need to count all the introduction circuit and not only the established ones
else we can end up with too many introduction points.

This also adds the check for expiring nodes when serving an INTRODUCE cell
since it's possible old clients are still using them before we have time to
close them.

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoUpload descriptor when all intro points are ready
David Goulet [Mon, 1 Jun 2015 17:17:37 +0000 (13:17 -0400)] 
Upload descriptor when all intro points are ready

To upload a HS descriptor, this commits makes it that we wait for all
introduction point to be fully established.

Else, the HS ends up uploading a descriptor that may contain intro points
that are not yet "valid" meaning not yet established or proven to work. It
could also trigger three uploads for the *same* descriptor if every intro
points takes more than 30 seconds to establish because of desc_is_dirty
being set at each intro established.

To achieve that, n_intro_points_established varialbe is added to the
rend_service_t object that is incremented when we established introduction
point and decremented when we remove a valid intro point from our list.

The condition to upload a descriptor also changes to test if all intro
points are ready by making sure we have equal or more wanted intro points
that are ready.

The desc_id_dirty flag is kept to be able to still use the
RendInitialPostPeriod option.

This partially fixes #13483.

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoReuse intro points that failed but are still valid
David Goulet [Mon, 1 Jun 2015 16:08:13 +0000 (12:08 -0400)] 
Reuse intro points that failed but are still valid

There is a case where if the introduction circuit fails but the node is
still in the consensus, we clean up the intro point and choose an other one.
This commit fixes that by trying to reuse the existing intro point with a
maximum value of retry.

A retry_nodes list is added to rend_services_introduce() and when we remove
an invalid intro points that fits the use case mentionned before, we add the
node to the retry list instead of removing it. Then, we retry on them before
creating new ones.

This means that the requirement to remove an intro point changes from "if no
intro circuit" to "if no intro circuit then if no node OR we've reached our
maximum circuit creation count".

For now, the maximum retries is set to 3 which it completely arbitrary. It
should also at some point be tied to the work done on detecting if our
network is down or not.

Fixes #8239

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoRefactor rend_services_introduce()
David Goulet [Fri, 29 May 2015 21:45:45 +0000 (17:45 -0400)] 
Refactor rend_services_introduce()

The reasoning for refactoring this function is that removing the
introduction point adaptative algorithm (#4862) ended up changing quite a
bit rend_services_introduce(). Also, to fix some open issues (#8239, #8864
and #13483), this work had to be done.

First, this removes time_expiring variable in an intro point object and
INTRO_POINT_EXPIRATION_GRACE_PERIOD trickery and use an expiring_nodes list
where intro nodes that should expire are moved to that list and cleaned up
only once the new descriptor is successfully uploaded. The previous scheme
was adding complexity and arbitrary timing to when we expire an intro point.
We keep the intro points until we are sure that the new descriptor is
uploaded and thus ready to be used by clients. For this,
rend_service_desc_has_uploaded() is added to notify the HS subsystem that
the descriptor has been successfully uploaded. The purpose of this function
is to cleanup the expiring nodes and circuits if any.

Secondly, this adds the remove_invalid_intro_points() function in order to
split up rend_services_introduce() a bit with an extra modification to it
that fixes #8864. We do NOT close the circuit nor delete the intro point if
the circuit is still alive but the node was removed from the consensus. Due
to possible information leak, we let the circuit and intro point object
expire instead.

Finally, the whole code flow is simplified and large amount of documentation
has been added to mostly explain the why of things in there.

Fixes #8864

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoAlways use the sandbox in tor_open_cloexec
teor [Tue, 7 Jul 2015 16:17:31 +0000 (02:17 +1000)] 
Always use the sandbox in tor_open_cloexec

Use the sandbox in tor_open_cloexec, whether or not O_CLOEXEC is defined.
Patch by "teor". Fix on 0.2.3.1-alpha.

10 years agoIntegrate and enable ed25519-donna.
Yawning Angel [Mon, 6 Jul 2015 10:11:10 +0000 (10:11 +0000)] 
Integrate and enable ed25519-donna.

The runtime sanity checking is slightly different from the optimized
basepoint stuff in that it uses a given implementation's self tests if
available, and checks if signing/verification works with a test vector
from the IETF EdDSA draft.

The unit tests include a new testcase that will fuzz donna against ref0,
including the blinding and curve25519 key conversion routines.  If this
is something that should be done at runtime (No?), the code can be
stolen from there.

Note: Integrating batch verification is not done yet.

10 years agoIntegrate the accelerated Curve25519 scalar basemult.
Yawning Angel [Mon, 6 Jul 2015 09:57:23 +0000 (09:57 +0000)] 
Integrate the accelerated Curve25519 scalar basemult.

Integration work scavanged from nickm's `ticket8897_9663_v2` branch,
with minor modifications.  Tor will still sanity check the output but
now also attempts to catch extreme breakage by spot checking the
optimized implementation vs known values from the NaCl documentation.

Implements feature 9663.

10 years agoAdd Curve25519->Ed25519 support to ed25519-donna (Not yet used).
Yawning Angel [Mon, 6 Jul 2015 09:48:00 +0000 (09:48 +0000)] 
Add Curve25519->Ed25519 support to ed25519-donna (Not yet used).

This needs to be done to allow for the possibility of removing the
ref10 code at a later date, though it is not performance critical.
When integrated by kludging it into tor, it passes unit tests, and is
twice as fast.

10 years agoAdd blinding support to ed25519-donna (Not yet used).
Yawning Angel [Mon, 6 Jul 2015 09:44:43 +0000 (09:44 +0000)] 
Add blinding support to ed25519-donna (Not yet used).

Integrating it the "wrong" way into common/crypto_ed25519.c passes
`make check`, and there appear to be some known answer tests for this,
so I assume I got it right.

Blinding a public key goes from 139.10 usec to 70.78 usec using
ed25519-donna (NB: Turboboost/phase of moon), though the code isn't
critical path, so supporting it is mostly done for completeness.

10 years agoIntegrate ed25519-donna (Not yet used).
Yawning Angel [Mon, 6 Jul 2015 09:40:28 +0000 (09:40 +0000)] 
Integrate ed25519-donna (Not yet used).

Integrate ed25519-donna into the build process, and provide an
interface that matches the `ref10` code.  Apart from the blinding and
Curve25519 key conversion, this functions as a drop-in replacement for
ref10 (verified by modifying crypto_ed25519.c).

Tests pass, and the benchmarks claim it is quite a bit faster, however
actually using the code requires additional integration work.

10 years agoImport Andrew Moon's ed25519-donna.
Yawning Angel [Wed, 24 Jun 2015 14:51:00 +0000 (14:51 +0000)] 
Import Andrew Moon's ed25519-donna.

This is a clean copy of ed25519-donna as of commit:

  8757bd4cd209cb032853ece0ce413f122eef212c

https://github.com/floodyberry/ed25519-donna

10 years agoMake test_workqueue.c faster, and on-by-default.
Nick Mathewson [Fri, 3 Jul 2015 18:37:16 +0000 (14:37 -0400)] 
Make test_workqueue.c faster, and on-by-default.

Instead of having a 30-second timer be the only way to end the test,
add a 2 second shutdown timer when the test is actually about to be over.

10 years agoUse the configured Python executable to run test-stem-full.
cypherpunks [Wed, 1 Jul 2015 09:08:33 +0000 (11:08 +0200)] 
Use the configured Python executable to run test-stem-full.

10 years agoTry a little harder to fix the tor-ci-windows builder, or figure out why it is broke
Nick Mathewson [Mon, 29 Jun 2015 20:09:37 +0000 (16:09 -0400)] 
Try a little harder to fix the tor-ci-windows builder, or figure out why it is broke

10 years agoMore tweaks for windows compilation. (ick)
Nick Mathewson [Mon, 29 Jun 2015 17:47:44 +0000 (13:47 -0400)] 
More tweaks for windows compilation. (ick)

10 years agoRemove checks for visual C 6.
Nick Mathewson [Mon, 29 Jun 2015 16:55:03 +0000 (12:55 -0400)] 
Remove checks for visual C 6.

10 years agoMove windows header macros into orconfig.h
Nick Mathewson [Mon, 29 Jun 2015 16:47:55 +0000 (12:47 -0400)] 
Move windows header macros into orconfig.h

This should prevent duplicated code, and lower the likelihood of
accidentally making them inconsistent.

10 years agoAdd the torrc option HiddenServiceNumIntroductionPoints
David Goulet [Mon, 11 May 2015 19:48:04 +0000 (15:48 -0400)] 
Add the torrc option HiddenServiceNumIntroductionPoints

This is a way to specify the amount of introduction points an hidden service
can have. Maximum value is 10 and the default is 3.

Fixes #4862

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoRemove intro points adaptative algorithm
David Goulet [Mon, 11 May 2015 18:46:15 +0000 (14:46 -0400)] 
Remove intro points adaptative algorithm

Partially fixes #4862

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agofix a windows unused var warning
Nick Mathewson [Sun, 28 Jun 2015 06:18:15 +0000 (02:18 -0400)] 
fix a windows unused var warning

10 years agoWhoops; fix linux build again
Nick Mathewson [Sun, 28 Jun 2015 02:41:39 +0000 (22:41 -0400)] 
Whoops; fix linux build again

10 years agoFix some compilation issues.
Nick Mathewson [Sat, 27 Jun 2015 18:27:00 +0000 (14:27 -0400)] 
Fix some compilation issues.

10 years agoAvoid a segfault when reading an encrypted key that isn't there
Nick Mathewson [Sat, 27 Jun 2015 18:14:13 +0000 (14:14 -0400)] 
Avoid a segfault when reading an encrypted key that isn't there

Patch from cypherpunks. Fixes bug 16449. Bug not in any released tor.

10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Thu, 25 Jun 2015 15:46:16 +0000 (11:46 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoMerge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6
Nick Mathewson [Thu, 25 Jun 2015 15:43:17 +0000 (11:43 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6

10 years agoMerge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
Nick Mathewson [Thu, 25 Jun 2015 15:43:04 +0000 (11:43 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5

10 years agoMerge remote-tracking branch 'karsten/geoip6-jun2015' into maint-0.2.4
Nick Mathewson [Thu, 25 Jun 2015 15:42:47 +0000 (11:42 -0400)] 
Merge remote-tracking branch 'karsten/geoip6-jun2015' into maint-0.2.4

10 years agoMerge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4
Nick Mathewson [Thu, 25 Jun 2015 15:42:31 +0000 (11:42 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4

10 years agoMerge branch 'bug16288_027_03_squashed'
Nick Mathewson [Thu, 25 Jun 2015 15:30:52 +0000 (11:30 -0400)] 
Merge branch 'bug16288_027_03_squashed'

10 years agoValidate the open file limit when creating a socket
David Goulet [Wed, 3 Jun 2015 17:56:01 +0000 (13:56 -0400)] 
Validate the open file limit when creating a socket

Fixes #16288

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Thu, 25 Jun 2015 15:14:53 +0000 (11:14 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoMerge remote-tracking branch 'public/bug16013_025' into maint-0.2.6
Nick Mathewson [Thu, 25 Jun 2015 15:14:44 +0000 (11:14 -0400)] 
Merge remote-tracking branch 'public/bug16013_025' into maint-0.2.6

10 years agoAvoid crashing on busy/NEWNYM+hidden service clients
Nick Mathewson [Thu, 25 Jun 2015 15:10:43 +0000 (11:10 -0400)] 
Avoid crashing on busy/NEWNYM+hidden service clients

When we ran out of intro points for a hidden service (which could
happen on a newnym), we would change the connection's state back to
"waiting for hidden service descriptor."  But this would make an
assertion fail if we went on to call circuit_get_open_circ_or_launch
again.

This fixes bug 16013; I believe the bug was introduced in
38be533c69417aacf28cedec1c3bae808ce29f4, where we made it possible for
circuit_get_open_circ_or_launch() to change the connection's state.

10 years agoMerge branch 'readpassphrase_v2'
Nick Mathewson [Thu, 25 Jun 2015 14:53:13 +0000 (10:53 -0400)] 
Merge branch 'readpassphrase_v2'

10 years agoRemove janky getpass implementations
Nick Mathewson [Wed, 17 Jun 2015 15:52:54 +0000 (11:52 -0400)] 
Remove janky getpass implementations

10 years agoAdd a getpass implementation for windows that won't totally suck
Nick Mathewson [Wed, 17 Jun 2015 15:22:31 +0000 (11:22 -0400)] 
Add a getpass implementation for windows that won't totally suck

The logic here is inspired by Python's win_getpass(), which I'm
assuming is better than nothing.

10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Thu, 25 Jun 2015 14:41:15 +0000 (10:41 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoMerge remote-tracking branch 'public/bug16400_026' into maint-0.2.6
Nick Mathewson [Thu, 25 Jun 2015 14:40:58 +0000 (10:40 -0400)] 
Merge remote-tracking branch 'public/bug16400_026' into maint-0.2.6

10 years agoWork around nytimes.com's broken hostnames in our SOCKS checks.
Yawning Angel [Wed, 24 Jun 2015 13:52:29 +0000 (13:52 +0000)] 
Work around nytimes.com's broken hostnames in our SOCKS checks.

RFC 952 is approximately 30 years old, and people are failing to comply,
by serving A records with '_' as part of the hostname.  Since relaxing
the check is a QOL improvement for our userbase, relax the check to
allow such abominations as destinations, especially since there are
likely to be other similarly misconfigured domains out there.

10 years agoRepair breakage in early-error case of microdesc parsing
Nick Mathewson [Mon, 22 Jun 2015 17:51:56 +0000 (13:51 -0400)] 
Repair breakage in early-error case of microdesc parsing

When I fixed #11243, I made it so we would take the digest of a
descriptor before tokenizing it, so we could desist from download
attempts if parsing failed.  But when I did that, I didn't remove an
assertion that the descriptor began with "onion-key".  Usually, this
was enforced by "find_start_of_next_microdescriptor", but when
find_start_of_next_microdescriptor returned NULL, the assertion was
triggered.

Fixes bug 16400.  Thanks to torkeln for reporting and
cypherpunks_backup for diagnosing and writing the first fix here.

10 years agoMerge remote-tracking branch 'dgoulet/rendcache_027_01'
Nick Mathewson [Fri, 19 Jun 2015 13:10:03 +0000 (09:10 -0400)] 
Merge remote-tracking branch 'dgoulet/rendcache_027_01'

10 years agofix some memory leaks that coverity found
Nick Mathewson [Fri, 19 Jun 2015 13:03:25 +0000 (09:03 -0400)] 
fix some memory leaks that coverity found

10 years agoMove cache objects and functions to rendcache.{c|h}
David Goulet [Thu, 18 Jun 2015 15:23:08 +0000 (11:23 -0400)] 
Move cache objects and functions to rendcache.{c|h}

Every functions and objects that are used for hidden service descriptor
caches are moved to rendcache.{c|h}.

This commit does NOT change anything, just moving code around.

Fixes #16399

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoAdd rendcache.{c|h}
David Goulet [Thu, 18 Jun 2015 15:00:10 +0000 (11:00 -0400)] 
Add rendcache.{c|h}

For now, rend_cache_entry_t has been moved from or.h to rendcache.h and
those files have been added to the build system.

In the next commit, these will contain hidden service descriptor cache ABI
and API for both client and directory side. The goal is to consolidate the
descriptor caches in one location to ease development, maintenance, review
and improve documentation for each cache behavior and algorithm.

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Thu, 18 Jun 2015 15:33:24 +0000 (11:33 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoMerge remote-tracking branch 'dgoulet/bug16381_026_01-revert' into maint-0.2.6
Nick Mathewson [Thu, 18 Jun 2015 15:30:01 +0000 (11:30 -0400)] 
Merge remote-tracking branch 'dgoulet/bug16381_026_01-revert' into maint-0.2.6

10 years agoHandle "keygen" if datadir does not yet exist
Nick Mathewson [Wed, 17 Jun 2015 17:51:45 +0000 (13:51 -0400)] 
Handle "keygen" if datadir does not yet exist

10 years agoadd test-memwipe to .gitignore
Nick Mathewson [Wed, 17 Jun 2015 17:01:39 +0000 (13:01 -0400)] 
add test-memwipe to .gitignore

10 years agoFix an unchecked-case warning on windows
Nick Mathewson [Wed, 17 Jun 2015 15:31:53 +0000 (11:31 -0400)] 
Fix an unchecked-case warning on windows

10 years agochanges file for 13642
Nick Mathewson [Wed, 17 Jun 2015 14:51:39 +0000 (10:51 -0400)] 
changes file for 13642

10 years agoAdd the openssh 6.8p1 readpassphrase implementation
Nick Mathewson [Wed, 17 Jun 2015 14:41:22 +0000 (10:41 -0400)] 
Add the openssh 6.8p1 readpassphrase implementation

This way glibc users don't have to fall back to getpass.

Windows users are still out of luck

10 years agoAdd readpassphrase.c in src/ext
Nick Mathewson [Wed, 17 Jun 2015 14:19:40 +0000 (10:19 -0400)] 
Add readpassphrase.c in src/ext

This is taken verbatim from openssh 6.8p1, which appears to have
lightly tweaked it from the openbsd version.

10 years agoMerge branch '13642_offline_master_v2_squashed'
Nick Mathewson [Wed, 17 Jun 2015 14:12:37 +0000 (10:12 -0400)] 
Merge branch '13642_offline_master_v2_squashed'

10 years agoSupport encrypted offline master keys with a new --keygen flag
Nick Mathewson [Sun, 1 Mar 2015 15:40:02 +0000 (16:40 +0100)] 
Support encrypted offline master keys with a new --keygen flag

When --keygen is provided, we prompt for a passphrase when we make a
new master key; if it is nonempty, we store the secret key in a new
crypto_pwbox.

Also, if --keygen is provided and there *is* an encrypted master key,
we load it and prompt for a passphrase unconditionally.

We make a new signing key unconditionally when --keygen is provided.
We never overwrite a master key.

10 years agoAdd a tor_getpass to read passphrases. Needs better backend.
Nick Mathewson [Sun, 1 Mar 2015 14:35:36 +0000 (15:35 +0100)] 
Add a tor_getpass to read passphrases. Needs better backend.

10 years agoExtend intro point to a 4th hop on cannibalization
David Goulet [Tue, 16 Jun 2015 14:29:29 +0000 (10:29 -0400)] 
Extend intro point to a 4th hop on cannibalization

Fixes #16260

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Wed, 17 Jun 2015 13:19:11 +0000 (09:19 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoMerge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6
Nick Mathewson [Wed, 17 Jun 2015 13:18:45 +0000 (09:18 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6

10 years agoCorrectly handle failed crypto_early_init
teor [Sat, 13 Jun 2015 11:28:02 +0000 (21:28 +1000)] 
Correctly handle failed crypto_early_init

If crypto_early_init fails, a typo in a return value from tor_init
means that tor_main continues running, rather than returning
an error value.

Fixes bug 16360; bugfix on d3fb846d8c98 in 0.2.5.2-alpha,
introduced when implementing #4900.

Patch by "teor".

10 years agoRevert "Do not replace a HS descriptor with a different replica of itself"
David Goulet [Tue, 16 Jun 2015 17:16:34 +0000 (13:16 -0400)] 
Revert "Do not replace a HS descriptor with a different replica of itself"

This reverts commit 9407040c592184e05e45a3c1a00739c2dd302288.

Small fix, "e->received" had to be removed since that variable doesn't exist
anymore.

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
10 years agoDocument the consensus download interval used by hidden services
teor [Mon, 15 Jun 2015 17:11:09 +0000 (03:11 +1000)] 
Document the consensus download interval used by hidden services

In the comments in update_consensus_networkstatus_fetch_time_impl
in networkstatus.c

10 years agoFix spacing in tortls.c
teor [Mon, 15 Jun 2015 17:10:44 +0000 (03:10 +1000)] 
Fix spacing in tortls.c

10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Mon, 15 Jun 2015 14:19:46 +0000 (10:19 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoMerge commit '1eb2c0cbd3a9be2650419bd07474770629261f56'
Nick Mathewson [Mon, 15 Jun 2015 14:19:32 +0000 (10:19 -0400)] 
Merge commit '1eb2c0cbd3a9be2650419bd07474770629261f56'

This is an 'ours' merge to leave the version number alone.

10 years agoFix another seccomp2 issue
Nick Mathewson [Mon, 15 Jun 2015 14:13:11 +0000 (10:13 -0400)] 
Fix another seccomp2 issue

Allow pipe() and pipe2() syscalls; we need these when eventfd2()
support is missing. Fixes bug 16363; bugfix on 0.2.6.3-alpha.  Patch
from "teor".

10 years agoMerge remote-tracking branch 'teor/feature15817-clang-sanitizers'
Nick Mathewson [Thu, 11 Jun 2015 14:24:28 +0000 (10:24 -0400)] 
Merge remote-tracking branch 'teor/feature15817-clang-sanitizers'

10 years agoAdd a log message to try to track down #16013
Nick Mathewson [Thu, 11 Jun 2015 13:55:47 +0000 (09:55 -0400)] 
Add a log message to try to track down #16013

10 years agoSpell occurred right
Nick Mathewson [Wed, 10 Jun 2015 18:09:36 +0000 (14:09 -0400)] 
Spell occurred right

10 years agofwd-port 0.2.6.9 changes
Nick Mathewson [Wed, 10 Jun 2015 17:58:20 +0000 (13:58 -0400)] 
fwd-port 0.2.6.9 changes

10 years agoMerge remote-tracking branch 'teor/bug16343-master-key-assert'
Nick Mathewson [Wed, 10 Jun 2015 16:40:32 +0000 (12:40 -0400)] 
Merge remote-tracking branch 'teor/bug16343-master-key-assert'

10 years agoFix clang address of struct member always non-NULL in SSL master key
teor [Wed, 10 Jun 2015 15:06:15 +0000 (01:06 +1000)] 
Fix clang address of struct member always non-NULL in SSL master key

clang complains that the address of struct member in an assert in
SSL_SESSION_get_master_key is always non-NULL.
Instead, check each pointer argument is non-NULL before using it.

Fix on f90a704f1258 from 27 May 2015, not in any released version of tor.

10 years agoUpdate and clarify release checklist
Andrea Shepard [Wed, 10 Jun 2015 15:05:52 +0000 (15:05 +0000)] 
Update and clarify release checklist

10 years agoBump version to 0.2.6.9
Andrea Shepard [Wed, 10 Jun 2015 14:58:33 +0000 (14:58 +0000)] 
Bump version to 0.2.6.9

10 years agoTweak clang sanitizer blacklist for out-of-tree builds, make, ccache
teor [Wed, 10 Jun 2015 14:59:04 +0000 (00:59 +1000)] 
Tweak clang sanitizer blacklist for out-of-tree builds, make, ccache

Avoid using file names and file paths for compatibility with
out-of-tree builds.

Note make and ccache don't track blacklist dependencies,
add workarounds.

10 years agoUpdate geoip6 to the June 3 2015 database.
Karsten Loesing [Tue, 9 Jun 2015 14:28:48 +0000 (16:28 +0200)] 
Update geoip6 to the June 3 2015 database.

10 years agoUpdate geoip to the June 3 2015 database. maint-0.2.3
Karsten Loesing [Tue, 9 Jun 2015 14:26:10 +0000 (16:26 +0200)] 
Update geoip to the June 3 2015 database.

10 years agoMerge remote-tracking branch 'teor/feature15817-clang-sanitizers'
Nick Mathewson [Mon, 8 Jun 2015 14:57:25 +0000 (10:57 -0400)] 
Merge remote-tracking branch 'teor/feature15817-clang-sanitizers'

10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Mon, 8 Jun 2015 14:33:38 +0000 (10:33 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoHSDir flag now requires the Stable flag
David Goulet [Mon, 11 May 2015 15:27:30 +0000 (11:27 -0400)] 
HSDir flag now requires the Stable flag

Fixes #8243

10 years agoEdit contrib/README to document the contrib/clang directory
teor [Fri, 5 Jun 2015 21:56:41 +0000 (07:56 +1000)] 
Edit contrib/README to document the contrib/clang directory

10 years agoAdd instructions for clang sanitizers, static analyzer, and coverity
teor [Fri, 5 Jun 2015 18:04:23 +0000 (04:04 +1000)] 
Add instructions for clang sanitizers, static analyzer, and coverity

Document use of coverity, clang static analyzer, and clang dynamic
undefined behavior and address sanitizers in doc/HACKING.

Add clang dynamic sanitizer blacklist in
contrib/clang/sanitizer_blacklist.txt to exempt known undefined
behavior. Include detailed usage instructions in this blacklist file.

Patch by "teor".

10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Thu, 4 Jun 2015 19:02:47 +0000 (15:02 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoSet session_group after the port's data structure has been populated.
Yawning Angel [Thu, 4 Jun 2015 13:53:35 +0000 (13:53 +0000)] 
Set session_group after the port's data structure has been populated.

Fixes #16247, patch by "jojelino".

10 years agoMerge remote-tracking branch 'public/bug15760_hard_026_v2'
Nick Mathewson [Tue, 2 Jun 2015 19:08:14 +0000 (15:08 -0400)] 
Merge remote-tracking branch 'public/bug15760_hard_026_v2'

10 years agoA few more minor OpenSSL 1.1 fixes.
Yawning Angel [Tue, 2 Jun 2015 18:58:57 +0000 (18:58 +0000)] 
A few more minor OpenSSL 1.1 fixes.

 * Use `TLS_method()` instead of the deprecated `SSLv23_method()`
 * Fix one missed conversion to `SSL_CIPHER_get_id()`

10 years agoMerge remote-tracking branch 'teor/bug16115-minor-fixes'
Nick Mathewson [Tue, 2 Jun 2015 18:51:13 +0000 (14:51 -0400)] 
Merge remote-tracking branch 'teor/bug16115-minor-fixes'

10 years agoMerge remote-tracking branch 'origin/maint-0.2.6'
Nick Mathewson [Tue, 2 Jun 2015 18:29:37 +0000 (14:29 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.6'

10 years agoFix sandboxing to work when running as a relay
Peter Palfrader [Tue, 2 Jun 2015 18:06:49 +0000 (20:06 +0200)] 
Fix sandboxing to work when running as a relay

This includes correctly allowing renaming secret_id_key and allowing the
eventfd2 and futex syscalls.  Fixes bug 16244; bugfix on 0.2.6.1-alpha.

10 years agoCheck for NULL values in getinfo_helper_onions
teor [Tue, 2 Jun 2015 17:58:28 +0000 (03:58 +1000)] 
Check for NULL values in getinfo_helper_onions

Fix on 915c7438a77e in Tor 0.2.7.1-alpha.

10 years agoEnsure signing_key is non-NULL before accessing one of its members
teor [Tue, 2 Jun 2015 17:56:05 +0000 (03:56 +1000)] 
Ensure signing_key is non-NULL before accessing one of its members

signing_key can be NULL in ed_key_init_from_file in routerkeys.c.
Discovered by clang 3.7 address sanitizer.

Fix on c03694938ed0, not in any released version of Tor.

10 years agoRemove undefined directive-in-macro in test_util_writepid
teor [Tue, 2 Jun 2015 17:52:31 +0000 (03:52 +1000)] 
Remove undefined directive-in-macro in test_util_writepid

clang 3.7 complains that using a preprocessor directive inside
a macro invocation in test_util_writepid in test_util.c is undefined.

Fix on 79e85313aa61 on 0.2.7.1-alpha.

10 years agoAlways initialise return value in compute_desc_id in rendcommon.c
teor [Tue, 2 Jun 2015 17:48:46 +0000 (03:48 +1000)] 
Always initialise return value in compute_desc_id in rendcommon.c

Fix on e6a581f126ba, released in 0.2.7.1-alpha.

10 years agoSilence unused variable warnings in find_cipher_by_id
teor [Tue, 2 Jun 2015 17:43:46 +0000 (03:43 +1000)] 
Silence unused variable warnings in find_cipher_by_id

Unused variable warnings were still generated under some versions of OpenSSL.
Instead, make sure all variables are used under all versions.

Fix on 496df21c89d1, not in any released version of tor.

10 years agoFix an incorrect comment on spawn_func
teor [Tue, 2 Jun 2015 17:39:34 +0000 (03:39 +1000)] 
Fix an incorrect comment on spawn_func

spawn_func calls pthread_create on unix, not fork

Fix on existing code split out of compat.c into
compat_pthreads.c in c2f0d52b7fb9

10 years agoMerge remote-tracking branch 'public/bug15760_hard_026_v2'
Nick Mathewson [Tue, 2 Jun 2015 17:45:27 +0000 (13:45 -0400)] 
Merge remote-tracking branch 'public/bug15760_hard_026_v2'

Conflicts:
src/common/tortls.c

10 years agoUse autoconf, not OPENSSL_VERSION_NUMBER, to detect SSL_CIPHER_find
Nick Mathewson [Tue, 2 Jun 2015 17:27:55 +0000 (13:27 -0400)] 
Use autoconf, not OPENSSL_VERSION_NUMBER, to detect SSL_CIPHER_find

Repairs build with libressl