]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
11 years agoMerge branch 'maint-0.2.4' into maint-0.2.5
Roger Dingledine [Thu, 24 Jul 2014 23:48:37 +0000 (19:48 -0400)] 
Merge branch 'maint-0.2.4' into maint-0.2.5

11 years agoAvoid illegal read off end of an array in prune_v2_cipher_list
Nick Mathewson [Tue, 10 Jun 2014 15:11:47 +0000 (11:11 -0400)] 
Avoid illegal read off end of an array in prune_v2_cipher_list

This function is supposed to construct a list of all the ciphers in
the "v2 link protocol cipher list" that are supported by Tor's
openssl.  It does this by invoking ssl23_get_cipher_by_char on each
two-byte ciphersuite ID to see which ones give a match.  But when
ssl23_get_cipher_by_char cannot find a match for a two-byte SSL3/TLS
ciphersuite ID, it checks to see whether it has a match for a
three-byte SSL2 ciphersuite ID.  This was causing a read off the end
of the 'cipherid' array.

This was probably harmless in practice, but we shouldn't be having
any uninitialized reads.

(Using ssl23_get_cipher_by_char in this way is a kludge, but then
again the entire existence of the v2 link protocol is kind of a
kludge.  Once Tor 0.2.2 clients are all gone, we can drop this code
entirely.)

Found by starlight. Fix on 0.2.4.8-alpha. Fixes bug 12227.

11 years agofix typo that crept in to 0.2.4.4-alpha
Roger Dingledine [Thu, 24 Jul 2014 21:07:39 +0000 (17:07 -0400)] 
fix typo that crept in to 0.2.4.4-alpha

11 years agoRaise guard threshold to top 25% or 2000 kilounits
Roger Dingledine [Thu, 24 Jul 2014 04:35:47 +0000 (00:35 -0400)] 
Raise guard threshold to top 25% or 2000 kilounits

Authorities now assign the Guard flag to the fastest 25% of the
network (it used to be the fastest 50%). Also raise the consensus
weight that guarantees the Guard flag from 250 to 2000. For the
current network, this results in about 1100 guards, down from 2500.
This step paves the way for moving the number of entry guards
down to 1 (proposal 236) while still providing reasonable expected
performance for most users.

Implements ticket 12690.

11 years agoMerge branch 'maint-0.2.4' into maint-0.2.5
Roger Dingledine [Thu, 24 Jul 2014 20:23:08 +0000 (16:23 -0400)] 
Merge branch 'maint-0.2.4' into maint-0.2.5

11 years agoupdate manpage for numentryguards / numdirectoryguards
Roger Dingledine [Thu, 24 Jul 2014 16:19:15 +0000 (12:19 -0400)] 
update manpage for numentryguards / numdirectoryguards

11 years agoadd a NumDirectoryGuards consensus param too
Roger Dingledine [Wed, 23 Jul 2014 19:28:40 +0000 (15:28 -0400)] 
add a NumDirectoryGuards consensus param too

11 years agoAdd and use a new NumEntryGuards consensus parameter.
Roger Dingledine [Wed, 23 Jul 2014 16:23:49 +0000 (12:23 -0400)] 
Add and use a new NumEntryGuards consensus parameter.

When specified, it overrides our default of 3 entry guards.

(By default, it overrides the number of directory guards too.)

Implements ticket 12688.

11 years agoMerge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
Nick Mathewson [Thu, 24 Jul 2014 01:28:42 +0000 (21:28 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5

11 years agoMerge branch 'curve25519-donna32' into maint-0.2.4
Nick Mathewson [Thu, 24 Jul 2014 01:28:18 +0000 (21:28 -0400)] 
Merge branch 'curve25519-donna32' into maint-0.2.4

11 years agoPut the bug number and correct credits in the changes file for the new curve25519...
Nick Mathewson [Thu, 24 Jul 2014 01:25:53 +0000 (21:25 -0400)] 
Put the bug number and correct credits in the changes file for the new curve25519-donna32

11 years agoMerge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5
Nick Mathewson [Mon, 21 Jul 2014 18:30:09 +0000 (14:30 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5

11 years agoMerge remote-tracking branch 'karsten/geoip6-jul2014' into maint-0.2.4
Nick Mathewson [Mon, 21 Jul 2014 18:29:43 +0000 (14:29 -0400)] 
Merge remote-tracking branch 'karsten/geoip6-jul2014' into maint-0.2.4

11 years agoMerge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4
Nick Mathewson [Mon, 21 Jul 2014 18:29:30 +0000 (14:29 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4

11 years agoupdate changes entry with info for 11578 patch
Nick Mathewson [Mon, 21 Jul 2014 18:00:10 +0000 (14:00 -0400)] 
update changes entry with info for 11578 patch

11 years agoFix warning on building with bufferevents
Sathyanarayanan Gunasekaran [Sun, 20 Jul 2014 23:06:26 +0000 (16:06 -0700)] 
Fix warning on building with bufferevents

Fixes #11578

11 years agoUse safe_str in channel_dumpstats: improve 12184 diagnostic
Nick Mathewson [Fri, 18 Jul 2014 19:20:44 +0000 (21:20 +0200)] 
Use safe_str in channel_dumpstats: improve 12184 diagnostic

11 years agoUpdate geoip6 to the July 10 2014 database.
Karsten Loesing [Fri, 18 Jul 2014 14:31:25 +0000 (16:31 +0200)] 
Update geoip6 to the July 10 2014 database.

11 years agoUpdate geoip to the July 10 2014 database.
Karsten Loesing [Fri, 18 Jul 2014 14:28:50 +0000 (16:28 +0200)] 
Update geoip to the July 10 2014 database.

11 years agoMerge remote-tracking branch 'public/bug12602_024' into maint-0.2.5
Nick Mathewson [Thu, 17 Jul 2014 09:32:16 +0000 (11:32 +0200)] 
Merge remote-tracking branch 'public/bug12602_024' into maint-0.2.5

11 years agoFix compilation with no-compression OpenSSL builds and forks
Nick Mathewson [Thu, 17 Jul 2014 09:25:56 +0000 (11:25 +0200)] 
Fix compilation with no-compression OpenSSL builds and forks

Found because LibreSSL has OPENSSL_NO_COMP always-on, but this
conflicts with the way that _we_ turn off compression.  Patch from
dhill, who attributes it to "OpenBSD".  Fixes bug 12602; bugfix on
0.2.1.1-alpha, which introduced this turn-compression-off code.

11 years agochanges file for 12474, 12438.
Nick Mathewson [Wed, 16 Jul 2014 09:00:49 +0000 (11:00 +0200)] 
changes file for 12474, 12438.

11 years agosrc/or/connection.c: expose bucket_millis_empty for bufferevents test
Anthony G. Basile [Thu, 26 Jun 2014 15:15:36 +0000 (11:15 -0400)] 
src/or/connection.c: expose bucket_millis_empty for bufferevents test

Currently tor fails to build its test when enabled with bufferevents
because an #ifndef USE_BUFFEREVENTS hides bucket_millis_empty() and
friends.  This is fine if we don't run tests, but if we do, we need
these functions in src/or/libtor-testing.a when linking src/test/test.

This patch moves the functions outside the #ifndef and exposes them.

See downstream bug:

https://bugs.gentoo.org/show_bug.cgi?id=510124

11 years agoconfigure.ac: fix build with --enable-bufferevents
Anthony G. Basile [Fri, 20 Jun 2014 12:47:26 +0000 (08:47 -0400)] 
configure.ac: fix build with --enable-bufferevents

When building with bufferevents enabled, configure.ac throws an
error if "$ac_cv_header_event2_bufferevent_ssl_h" is not set to
"yes".  However, nowhere was AC_CHECK_HEADERS(event2/bufferevent_ssl.h)
done.  This commit adds the check.

11 years agodiagnostic for 12184: Add a call to channel_dump_statistics
Nick Mathewson [Wed, 16 Jul 2014 08:34:39 +0000 (10:34 +0200)] 
diagnostic for 12184: Add a call to channel_dump_statistics

11 years agoAdd another 8387 diagnostic
Nick Mathewson [Wed, 16 Jul 2014 08:05:00 +0000 (10:05 +0200)] 
Add another 8387 diagnostic

When we run into bug 8387 (if we run into it again), report when we
last called circuit_expire_old_circuits_clientside().  This will let
us know -- if my fix for 8387 doesn't work -- whether my diagnosis
was at least correct.

Suggested by Andrea.

11 years agoMerge remote-tracking branch 'public/bug8387_024' into maint-0.2.5
Nick Mathewson [Wed, 16 Jul 2014 08:01:56 +0000 (10:01 +0200)] 
Merge remote-tracking branch 'public/bug8387_024' into maint-0.2.5

11 years agoSmall tweaks to make curve25519-donna32 compile with our warnings
Nick Mathewson [Tue, 15 Jul 2014 13:43:40 +0000 (15:43 +0200)] 
Small tweaks to make curve25519-donna32 compile with our warnings

11 years agoUpdate to latest curve25519-donna32
Nick Mathewson [Tue, 15 Jul 2014 13:42:20 +0000 (15:42 +0200)] 
Update to latest curve25519-donna32

11 years agoFix a bug where streams would linger forever when we had no dirinfo
Nick Mathewson [Wed, 9 Jul 2014 20:14:14 +0000 (16:14 -0400)] 
Fix a bug where streams would linger forever when we had no dirinfo

fixes bug 8387; fix on 0.1.1.11-alpha (code), or on 0.2.4.10-alpha (behavior).

11 years agoRemove executable bit from control.c, router.c
Nick Mathewson [Wed, 9 Jul 2014 12:54:08 +0000 (08:54 -0400)] 
Remove executable bit from control.c, router.c

Fix for 12512.

11 years agoBump version to Tor 0.2.5.5-alpha-dev
Nick Mathewson [Wed, 18 Jun 2014 19:01:45 +0000 (15:01 -0400)] 
Bump version to Tor 0.2.5.5-alpha-dev

11 years agoGive 0.2.5.5-alpha a release date tor-0.2.5.5-alpha
Nick Mathewson [Wed, 18 Jun 2014 18:17:45 +0000 (14:17 -0400)] 
Give 0.2.5.5-alpha a release date

11 years agoReflow 0.2.5.5-alpha changelog
Nick Mathewson [Wed, 18 Jun 2014 17:31:44 +0000 (13:31 -0400)] 
Reflow 0.2.5.5-alpha changelog

11 years agochangelog edits from wfn and yawning
Nick Mathewson [Wed, 18 Jun 2014 17:30:30 +0000 (13:30 -0400)] 
changelog edits from wfn and yawning

11 years agoRe-wrap the 0.2.5.5-alpha changelog
Nick Mathewson [Wed, 18 Jun 2014 15:51:27 +0000 (11:51 -0400)] 
Re-wrap the 0.2.5.5-alpha changelog

11 years agoEdit 0.2.5.5-alpha changelog for terseness and grammar.
Nick Mathewson [Wed, 18 Jun 2014 15:49:50 +0000 (11:49 -0400)] 
Edit 0.2.5.5-alpha changelog for terseness and grammar.

11 years agobump version to 0.2.5.5-alpha. Not released yet.
Nick Mathewson [Mon, 16 Jun 2014 19:32:35 +0000 (15:32 -0400)] 
bump version to 0.2.5.5-alpha.  Not released yet.

11 years agowhitespace fixes
Nick Mathewson [Mon, 16 Jun 2014 19:18:02 +0000 (15:18 -0400)] 
whitespace fixes

11 years agoBring remaining 0.2.5.5-alpha entries into changelog
Nick Mathewson [Mon, 16 Jun 2014 19:00:10 +0000 (15:00 -0400)] 
Bring remaining 0.2.5.5-alpha entries into changelog

11 years agomanpage: Move more authority-only options into the authority section
Nick Mathewson [Mon, 16 Jun 2014 15:15:47 +0000 (11:15 -0400)] 
manpage: Move more authority-only options into the authority section

I don't know whether we missed these or misclassified them when we
first made the "DIRECTORY AUTHORITY SERVER OPTIONS" section, but they
really belong there.

11 years agoAdd ATTR_UNUSED to HT_FIND
Nick Mathewson [Sat, 14 Jun 2014 15:46:54 +0000 (11:46 -0400)] 
Add ATTR_UNUSED to HT_FIND

The fix for bug 8746 added a hashtable instance that never actually
invoked HT_FIND.  This caused a warning, since we didn't mark HT_FIND
as okay-not-to-use.

11 years agoMerge branch 'bug8746_v2_squashed'
Nick Mathewson [Sat, 14 Jun 2014 15:46:38 +0000 (11:46 -0400)] 
Merge branch 'bug8746_v2_squashed'

Conflicts:
src/common/include.am

11 years agochanges file for 8746
Nick Mathewson [Wed, 30 Apr 2014 17:13:38 +0000 (13:13 -0400)] 
changes file for 8746

11 years agorefactor win/nix handling for test_spawn_background*()
Nick Mathewson [Wed, 30 Apr 2014 17:00:54 +0000 (13:00 -0400)] 
refactor win/nix handling for test_spawn_background*()

Instead of having a #if ... for every function, just define
TEST_CHILD to the right patch and EOL to the expected line terminator.

11 years agoMore unit tests for process spawning
Nick Mathewson [Wed, 30 Apr 2014 16:50:00 +0000 (12:50 -0400)] 
More unit tests for process spawning

Try killing a running process; try noticing that a process has
exited without checking its output; verify that waitpid_cb (when
present) is set to NULL when you would expect it to be.

11 years agoNew testing-only tor_sleep_msec function
Nick Mathewson [Wed, 30 Apr 2014 16:48:46 +0000 (12:48 -0400)] 
New testing-only tor_sleep_msec function

In the unit tests I want to loop with a delay, but I want less than
a 1 second delay.  This, sadly, requires compatibility code.

11 years agoOn Windows, terminate processes by handle, not pid
Nick Mathewson [Thu, 10 Apr 2014 15:16:42 +0000 (11:16 -0400)] 
On Windows, terminate processes by handle, not pid

When we create a process yourself with CreateProcess, we get a
handle to the process in the PROCESS_INFO output structure.  But
instead of using that handle, we were manually looking up a _new_
handle based on the process ID, which is a poor idea, since the
process ID might refer to a new process later on, but the handle
can't.

11 years agoUse waitpid code to learn when a controlled process dies
Nick Mathewson [Thu, 10 Apr 2014 15:06:10 +0000 (11:06 -0400)] 
Use waitpid code to learn when a controlled process dies

This lets us avoid sending SIGTERM to something that has already
died, since we realize it has already died, and is a fix for the
unix version of #8746.

11 years agoNew waitpid-handler functions to run callbacks when a child exits.
Nick Mathewson [Wed, 9 Apr 2014 17:45:27 +0000 (13:45 -0400)] 
New waitpid-handler functions to run callbacks when a child exits.

Also, move 'procmon' into libor_event library, since it uses libevent.

11 years agoMerge branch 'bug12184_diagnostic_squashed'
Nick Mathewson [Sat, 14 Jun 2014 15:01:04 +0000 (11:01 -0400)] 
Merge branch 'bug12184_diagnostic_squashed'

11 years agoTry to diagnose bug 12184
Nick Mathewson [Tue, 10 Jun 2014 17:35:45 +0000 (13:35 -0400)] 
Try to diagnose bug 12184

Check for consistency between the queued destroy cells and the marked
circuit IDs.  Check for consistency in the count of queued destroy
cells in several ways.  Check to see whether any of the marked circuit
IDs have somehow been marked longer than the channel has existed.

11 years agoMerge branch 'bug12191_squashed'
Nick Mathewson [Fri, 13 Jun 2014 12:40:59 +0000 (08:40 -0400)] 
Merge branch 'bug12191_squashed'

11 years agoAlso raise the check for 0 circuit ID in created cell.
Nick Mathewson [Wed, 11 Jun 2014 13:33:20 +0000 (09:33 -0400)] 
Also raise the check for 0 circuit ID in created cell.

And add a comment about why conditions that would cause us to drop a
cell should get checked before actions that would cause us to send a
destroy cell.

Spotted by 'cypherpunks'.

And note that these issues have been present since 0.0.8pre1 (commit
0da256ef), where we added a "shutting down" state, and started
responding to all create cells with DESTROY when shutting down.

11 years agosandbox: Permit stat() of DataDir/stats
Nick Mathewson [Fri, 13 Jun 2014 12:26:23 +0000 (08:26 -0400)] 
sandbox: Permit stat() of DataDir/stats

This is a fix for another case of 12064 that alphawolf just spotted.

There's already an 0.2.5.5 changelog entry for this.

11 years agowhitespaces fixes
Nick Mathewson [Wed, 11 Jun 2014 16:00:14 +0000 (12:00 -0400)] 
whitespaces fixes

11 years agoMerge remote-tracking branch 'public/ticket6799_024_v2_squashed'
Nick Mathewson [Wed, 11 Jun 2014 15:57:56 +0000 (11:57 -0400)] 
Merge remote-tracking branch 'public/ticket6799_024_v2_squashed'

Conflicts:
src/or/channel.c
src/or/circuitlist.c
src/or/connection.c

Conflicts involved removal of next_circ_id and addition of
unusable-circid tracking.

11 years agoTweak changes entry for 6799
Nick Mathewson [Wed, 11 Jun 2014 15:52:58 +0000 (11:52 -0400)] 
Tweak changes entry for 6799

11 years agoFix a 32-big conversion warning in 11970 fix
Nick Mathewson [Wed, 11 Jun 2014 15:29:44 +0000 (11:29 -0400)] 
Fix a 32-big conversion warning in 11970 fix

11 years agoReplace last_added_nonpadding with last_had_circuits
Nick Mathewson [Fri, 16 May 2014 14:32:31 +0000 (10:32 -0400)] 
Replace last_added_nonpadding with last_had_circuits

The point of the "idle timeout" for connections is to kill the
connection a while after it has no more circuits.  But using "last
added a non-padding cell" as a proxy for that is wrong, since if the
last circuit is closed from the other side of the connection, we
will not have sent anything on that connection since well before the
last circuit closed.

This is part of fixing 6799.

When applied to 0.2.5, it is also a fix for 12023.

11 years agoGive each or_connection_t a slightly randomized idle_timeout
Nick Mathewson [Wed, 9 Apr 2014 15:13:37 +0000 (11:13 -0400)] 
Give each or_connection_t a slightly randomized idle_timeout

Instead of killing an or_connection_t that has had no circuits for
the last 3 minutes, give every or_connection_t a randomized timeout,
so that an observer can't so easily infer from the connection close
time the time at which its last circuit closed.

Also, increase the base timeout for canonical connections from 3
minutes to 15 minutes.

Fix for ticket 6799.

11 years agoMerge remote-tracking branch 'public/bug11970'
Nick Mathewson [Wed, 11 Jun 2014 15:01:52 +0000 (11:01 -0400)] 
Merge remote-tracking branch 'public/bug11970'

11 years agoYield a real error in the bug case of sandbox_getaddrinfo()
Nick Mathewson [Wed, 11 Jun 2014 15:00:56 +0000 (11:00 -0400)] 
Yield a real error in the bug case of sandbox_getaddrinfo()

11 years agoMerge remote-tracking branch 'public/not_bug8093'
Nick Mathewson [Wed, 11 Jun 2014 13:24:16 +0000 (09:24 -0400)] 
Merge remote-tracking branch 'public/not_bug8093'

11 years agoMerge remote-tracking branch 'public/more_bug8387_diagnosis'
Nick Mathewson [Wed, 11 Jun 2014 13:22:46 +0000 (09:22 -0400)] 
Merge remote-tracking branch 'public/more_bug8387_diagnosis'

11 years agoMove circuit-id-in-use check for CREATE cells to before all other checks
Nick Mathewson [Wed, 11 Jun 2014 02:41:13 +0000 (22:41 -0400)] 
Move circuit-id-in-use check for CREATE cells to before all other checks

This means that we never send a DESTROY cell in response to an attempt
to CREATE an existing circuit.  Fixes bug 12191.

11 years agoMerge remote-tracking branch 'origin/maint-0.2.4'
Nick Mathewson [Wed, 11 Jun 2014 01:09:27 +0000 (21:09 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.4'

11 years agoFix changes file for geoip
Nick Mathewson [Wed, 11 Jun 2014 01:08:44 +0000 (21:08 -0400)] 
Fix changes file for geoip

11 years agoMerge remote-tracking branch 'karsten/geoip6-jun2014' into maint-0.2.4
Nick Mathewson [Wed, 11 Jun 2014 01:08:12 +0000 (21:08 -0400)] 
Merge remote-tracking branch 'karsten/geoip6-jun2014' into maint-0.2.4

11 years agoMerge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4
Nick Mathewson [Wed, 11 Jun 2014 01:07:57 +0000 (21:07 -0400)] 
Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4

11 years agoUpdate geoip to the June 4 2014 database.
Karsten Loesing [Tue, 10 Jun 2014 19:29:56 +0000 (21:29 +0200)] 
Update geoip to the June 4 2014 database.

11 years agoUpdate geoip6 to the June 4 2014 database.
Karsten Loesing [Tue, 10 Jun 2014 19:31:21 +0000 (21:31 +0200)] 
Update geoip6 to the June 4 2014 database.

11 years agoImproved diagnostic log for bug 8387.
Nick Mathewson [Tue, 10 Jun 2014 16:04:06 +0000 (12:04 -0400)] 
Improved diagnostic log for bug 8387.

When we find a stranded one-hop circuit, log whether it is dirty,
log information about any streams on it, and log information about
connections they might be linked to.

11 years agoMerge remote-tracking branch 'public/bug12227_024'
Nick Mathewson [Tue, 10 Jun 2014 15:17:39 +0000 (11:17 -0400)] 
Merge remote-tracking branch 'public/bug12227_024'

11 years agoAvoid illegal read off end of an array in prune_v2_cipher_list
Nick Mathewson [Tue, 10 Jun 2014 15:11:47 +0000 (11:11 -0400)] 
Avoid illegal read off end of an array in prune_v2_cipher_list

This function is supposed to construct a list of all the ciphers in
the "v2 link protocol cipher list" that are supported by Tor's
openssl.  It does this by invoking ssl23_get_cipher_by_char on each
two-byte ciphersuite ID to see which ones give a match.  But when
ssl23_get_cipher_by_char cannot find a match for a two-byte SSL3/TLS
ciphersuite ID, it checks to see whether it has a match for a
three-byte SSL2 ciphersuite ID.  This was causing a read off the end
of the 'cipherid' array.

This was probably harmless in practice, but we shouldn't be having
any uninitialized reads.

(Using ssl23_get_cipher_by_char in this way is a kludge, but then
again the entire existence of the v2 link protocol is kind of a
kludge.  Once Tor 0.2.2 clients are all gone, we can drop this code
entirely.)

Found by starlight. Fix on 0.2.4.8-alpha. Fixes bug 12227.

11 years agoSpell getrlimit correctly.
Nick Mathewson [Mon, 9 Jun 2014 02:33:38 +0000 (22:33 -0400)] 
Spell getrlimit correctly.

Fixes bug in b0c1c700114aa8d4dfc180d85870c5bbe15fcacb; bug
12229. Bugfix not in any released Tor.  Patch from "alphawolf".

11 years agoMerge remote-tracking branch 'public/bug12169_relay_check'
Nick Mathewson [Wed, 4 Jun 2014 19:30:43 +0000 (15:30 -0400)] 
Merge remote-tracking branch 'public/bug12169_relay_check'

11 years agoMerge remote-tracking branch 'andrea/bug10616'
Nick Mathewson [Wed, 4 Jun 2014 19:12:45 +0000 (15:12 -0400)] 
Merge remote-tracking branch 'andrea/bug10616'

11 years agoput the right trac ticket number in changes file
Nick Mathewson [Wed, 4 Jun 2014 16:28:15 +0000 (12:28 -0400)] 
put the right trac ticket number in changes file

11 years agoBulletproof our 11246 fix a little, based on recommendation from andrea.
Nick Mathewson [Wed, 4 Jun 2014 16:27:10 +0000 (12:27 -0400)] 
Bulletproof our 11246 fix a little, based on recommendation from andrea.

11 years agoMerge remote-tracking branch 'public/bug12195'
Nick Mathewson [Wed, 4 Jun 2014 16:16:03 +0000 (12:16 -0400)] 
Merge remote-tracking branch 'public/bug12195'

11 years agoFix ancient code that only checked circ_id, not circ_id and chan
Nick Mathewson [Tue, 3 Jun 2014 22:19:08 +0000 (18:19 -0400)] 
Fix ancient code that only checked circ_id, not circ_id and chan

This code mis-handled the case where a circuit got the same circuit
ID in both directions.  I found three instances of it in the
codebase, by grepping for [pn]_circ_id.

Because of the issue in command_process_relay_cell(), this would
have made roughly one circuit in a million completely nonfunctional.

Fixes bug 12195.

11 years agoAdd changes file for bug10616
Andrea Shepard [Tue, 3 Jun 2014 21:41:51 +0000 (14:41 -0700)] 
Add changes file for bug10616

11 years agoSquelch spurious LD_BUG message in connection_ap_handshake_socks_reply()
Andrea Shepard [Tue, 3 Jun 2014 21:37:49 +0000 (14:37 -0700)] 
Squelch spurious LD_BUG message in connection_ap_handshake_socks_reply()

11 years agofix #10405's changes file
Roger Dingledine [Mon, 2 Jun 2014 06:32:59 +0000 (02:32 -0400)] 
fix #10405's changes file

11 years agoremove a stray " while warning about missing packages on redhat
Roger Dingledine [Mon, 2 Jun 2014 06:30:25 +0000 (02:30 -0400)] 
remove a stray " while warning about missing packages on redhat

11 years agoDon't try to fetch bridge descriptors when DisableNetwork is set
Nick Mathewson [Mon, 2 Jun 2014 06:17:28 +0000 (02:17 -0400)] 
Don't try to fetch bridge descriptors when DisableNetwork is set

Patch from Roger; changes file by me.

Fixes 10405; bugfix on 0.2.3.9-alpha, where DisableNetwork was
introduced.

11 years agoMerge remote-tracking branch 'public/bug12170_024_v2'
Nick Mathewson [Mon, 2 Jun 2014 04:47:51 +0000 (00:47 -0400)] 
Merge remote-tracking branch 'public/bug12170_024_v2'

11 years agoAvoid needless router_dir_info_has_changed from router_set_status
Nick Mathewson [Sun, 1 Jun 2014 20:48:43 +0000 (16:48 -0400)] 
Avoid needless router_dir_info_has_changed from router_set_status

On some profiles of Andrea's from #11332, I found that a great deal
of time can still be attributed to functions called from
update_router_have_minimum_dir_info().  This is making our
digestmap, tor_memeq, and siphash functions take a much bigger
portion of runtime than they really should.

If we're calling update_router_have_minimum_dir_info() too often,
that's because we're calling router_dir_info_changed() too often.
And it looks like most of the callers of router_dir_info_changed()
are coming as tail-calls from router_set_status() as invoked by
channel_do_open_actions().

But we don't need to call router_dir_info_changed() so much!  (I'm
not quite sure we need to call it from here at all, but...) Surely
we don't need to call it from router_set_status when the router's
status has not actually changed.

This patch makes us call router_dir_info_changed() from
router_set_status only when we are changing the router's status.

Fix for bug 12170.  This is leftover from our fix back in 273ee3e81
in 0.1.2.1-alpha, where we started caching the value of
update_router_have_minimum_dir_info().

11 years agoUse uint32 !=, not tor_memneq, for relay cell integrity checking
Nick Mathewson [Sun, 1 Jun 2014 18:02:55 +0000 (14:02 -0400)] 
Use uint32 !=, not tor_memneq, for relay cell integrity checking

tor_memeq has started to show up on profiles, and this is one of the
most frequent callers of that function, appearing as it does on every
cell handled for entry or exit.

59f9097d5c3dc010847c359888d31757d1c97904 introduced tor_memneq here;
it went into Tor 0.2.1.31.  Fixes part of 12169.

11 years agolabel all unlabeled bugfixes sections; lightly sort more
Nick Mathewson [Thu, 29 May 2014 15:49:01 +0000 (11:49 -0400)] 
label all unlabeled bugfixes sections; lightly sort more

11 years agoRemove duplicate changelog entry for 8368
Nick Mathewson [Thu, 29 May 2014 15:33:22 +0000 (11:33 -0400)] 
Remove duplicate changelog entry for 8368

11 years agoSort unlabeled 'minor features' entries in 0255 changelog
Nick Mathewson [Thu, 29 May 2014 15:32:49 +0000 (11:32 -0400)] 
Sort unlabeled 'minor features' entries in 0255 changelog

11 years agoReformat 0255 changelog. Tweak formatter script.
Nick Mathewson [Thu, 29 May 2014 15:30:15 +0000 (11:30 -0400)] 
Reformat 0255 changelog. Tweak formatter script.

11 years agoStart on the 0.2.5.5-alpha changelog.
Nick Mathewson [Thu, 29 May 2014 15:21:17 +0000 (11:21 -0400)] 
Start on the 0.2.5.5-alpha changelog.

I've copied the entries from changes/, labeled the ones that also
appeared in 0.2.4.22, sorted them lightly with a python script
(added to maint), and combined sections with the same name.

I didn't combine sections without a description (e.g. "Minor
bugfixes:"), since we'll probably add a description to those.

11 years agosandbox: allow enough setsockopt to make ConstrainedSockets work
Nick Mathewson [Thu, 29 May 2014 15:04:32 +0000 (11:04 -0400)] 
sandbox: allow enough setsockopt to make ConstrainedSockets work

fixes bug 12139; bugfix on 0.2.5.1-alpha

11 years agosandbox: permit listen(2)
Nick Mathewson [Tue, 27 May 2014 23:28:12 +0000 (19:28 -0400)] 
sandbox: permit listen(2)

Fix for 12115; bugfix on 0.2.5.1-alpha

11 years agosandbox: Allow DirPortFrontPage unconditionally if it's set
Nick Mathewson [Tue, 27 May 2014 23:21:11 +0000 (19:21 -0400)] 
sandbox: Allow DirPortFrontPage unconditionally if it's set

fixes 12114; bug not in any release.

Improves fix for 12028

11 years agoMerge branch 'bug11622'
Nick Mathewson [Tue, 27 May 2014 21:35:04 +0000 (17:35 -0400)] 
Merge branch 'bug11622'

11 years agoLog the errno value if seccomp_load() fails.
Nick Mathewson [Tue, 27 May 2014 19:08:10 +0000 (15:08 -0400)] 
Log the errno value if seccomp_load() fails.

(This is how I found out I was trying to test with a kernel too old
for seccomp. I think.)