aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog95
-rw-r--r--changes/bridgepassword11
-rw-r--r--changes/bug29873
-rw-r--r--changes/bug39424
-rw-r--r--changes/bug40117
-rw-r--r--changes/bug4091_debugging5
-rw-r--r--changes/bug48753
-rw-r--r--changes/bug50535
-rw-r--r--changes/bug51514
-rw-r--r--changes/bug51806
-rw-r--r--changes/bug54496
-rw-r--r--changes/bug55084
-rw-r--r--changes/bug55583
-rw-r--r--changes/bug55725
-rw-r--r--changes/bug55933
-rw-r--r--changes/bug56213
-rw-r--r--changes/bug56356
-rw-r--r--changes/bug56445
-rw-r--r--changes/bug56474
-rw-r--r--changes/crypto_api3
-rw-r--r--changes/geoip-april20123
-rw-r--r--changes/ides-becomes-turtles4
-rw-r--r--changes/memleak_safecookie4
-rw-r--r--changes/openssl101_aes6
-rw-r--r--changes/pad_rsa_always3
-rw-r--r--src/or/circuitbuild.c36
26 files changed, 113 insertions, 128 deletions
diff --git a/ChangeLog b/ChangeLog
index 52c73451e..43db8aa48 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,98 @@
+Changes in version 0.2.3.14-alpha - 2012-04-??
+
+ o Directory authority changes:
+ - Change IP address for ides (v3 directory authority), and rename
+ it to turtles.
+
+ o Security fixes:
+ - When using the debuging BridgePassword field, a bridge authority
+ now compares alleged passwords by hashing them, then comparing
+ the result to a digest of the expected authenticator. This avoids
+ a potential side-channel attack in the previous code, which
+ had foolishly used strcmp(). Fortunately, the BridgePassword field
+ *is not in use*, but if it had been, the timing
+ behavior of strcmp() might have allowed an adversary to guess the
+ BridgePassword value, and enumerate the bridges. Bugfix on
+ 0.2.0.14-alpha. Fixes bug 5543.
+
+ o Major bugfixes:
+ - Do not allow the presence of one consensus flavor to keep us from
+ downloading another. Previously, we had one "time to download a
+ consensus" timer, which didn't understand the idea of having one
+ consensus but wanting to download another. Fixes bug 4011; fix on
+ 0.2.3.1-alpha.
+ - If authorities are unable to get a set of v2 consensus documents
+ from other directory authorities, they no longer fail-back and
+ try to fetch them from regular directory caches. Fixes bug 5635;
+ bugfix on 0.2.2.26-beta, where routers stopped downloading v2
+ consensus documents entirely.
+ - Prevent a client-side assertion failure when receiving an INTRODUCE2
+ cell on a general purpose circuit. Fixes bug 5644; bugfix on
+ 0.2.1.6-alpha.
+ - Avoid logging uninitialized data when unable to decode a hidden
+ service descriptor cookie. Fixes bug 5647; bugfix on 0.2.1.5-alpha.
+
+ o Major features (performance):
+ - When built to use the newly OpenSSL 1.0.1, and built for an x86 or
+ x86_64 instruction set, take advantage of OpenSSL's AESNI,
+ bitsliced, or vectorized AES implementations as appropriate. These
+ can be much, much faster than other AES implementations.
+
+ o Minor bugfixes:
+ - Don't log that we have "decided to publish new relay descriptor"
+ unless we are actually publishing a descriptor. Fixes bug 3942;
+ bugfix on 0.2.3.2-alpha.
+ - Fix bug stomping on ORPort option NoListen and ignoring option
+ NoAdvertise. Fixes bug 5151; bugfix on 0.2.3.9-alpha.
+ - In the testsuite, provide a large enough buffer in the tor_sscanf
+ unit test. We'd otherwise overrun that buffer and crash during the
+ unit tests. Fixes bug 5449; bugfix on 0.2.3.12-alpha. Thanks weasel
+ for spotting the bug.
+ - Fix a bug where a bridge authority crashes (on a failed assert)
+ if it has seen no directory requests when it's time to write
+ statistics to disk. Fixes bug 5508. Bugfix on 0.2.3.6-alpha.
+ - Enforce correct return behavior of tor_vsscanf(), when the '%%'
+ pattern is used. Fixes bug 5558. Bugfix on 0.2.1.13.
+ - Make sure we create the keys directory if it doesn't exist and we're
+ about to store the dynamic diffie hellman parameters. Fixes bug 5572;
+ bugfix on 0.2.3.13-alpha.
+ - When sending an HTTP/1.1 proxy request, include a Host header.
+ Fixes bug 5593; bugfix on 0.2.2.1-alpha.
+ - Fix a small memory leak when trying to decode incorrect base16
+ authenticator during SAFECOOKIE authentication. Found by
+ Coverity Scan. Fixes CID 507. Bugfix on 0.2.3.13-alpha.
+
+ o Minor features:
+ - Add more information to a log statement that might help track down
+ bug 4091. If you're seeing "Bug: tor_addr_is_internal() called with a
+ non-IP address" messages (or any Bug messages, for that matter!),
+ please let us know about it.
+ - Relays now understand an IPv6 address when they get one from a
+ directory server. Resolves ticket 4875.
+ - Resolve IPv6 addresses in bridge and entry statistics to country
+ code "??" which means we at least count them. Resolves ticket 5053;
+ improves on 0.2.3.9-alpha.
+ - Update to the April 3 2012 Maxmind GeoLite Country database.
+
+ o Documentation:
+ - Begin a state-contents.txt file in doc to explain the contents
+ of the Tor state file. Fixes bug 2987.
+ - Document unit of bandwidth related options in sample torrc.
+ Fixes bug 5621.
+
+ o Removed features:
+ - The "torify" script no longer supports the "tsocks" sockifier
+ tool, since it doesn't support DNS and UDP right for Tor.
+ Everyone should be using torsocks instead. Fixes bugs 3530 and
+ 5180. Based on a patch by "ugh".
+
+ o Code refactoring:
+ - Change the symmetric cipher interface so that creating and
+ initializing a stream cipher are no longer separate functions.
+ - Remove all internal support for unpadded RSA. We never used it, and
+ it would be a bad idea to start.
+
+
Changes in version 0.2.3.13-alpha - 2012-03-26
Tor 0.2.3.13-alpha fixes a variety of stability and correctness bugs
in managed pluggable transports, as well as providing other cleanups
diff --git a/changes/bridgepassword b/changes/bridgepassword
deleted file mode 100644
index 5f0e250ff..000000000
--- a/changes/bridgepassword
+++ /dev/null
@@ -1,11 +0,0 @@
- o Security fixes:
- - When using the debuging BridgePassword field, a bridge authority
- now compares alleged passwords by hashing them, then comparing
- the result to a digest of the expected authenticator. This avoids
- a potential side-channel attack in the previous code, which
- had foolishly used strcmp(). Fortunately, the BridgePassword field
- *is not in use*, but if it had been, the timing
- behavior of strcmp() might have allowed an adversary to guess the
- BridgePassword value, and enumerate the bridges. Bugfix on
- 0.2.0.14-alpha. Fixes bug 5543.
-
diff --git a/changes/bug2987 b/changes/bug2987
deleted file mode 100644
index 727f3761a..000000000
--- a/changes/bug2987
+++ /dev/null
@@ -1,3 +0,0 @@
- o Documentation
- - Begin a state-contents.txt file in doc to explain the contents of the
- Tor state file. Fixes bug 2987.
diff --git a/changes/bug3942 b/changes/bug3942
deleted file mode 100644
index 5731aad5b..000000000
--- a/changes/bug3942
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes:
- - Don't log that we have "decided to publish new relay descriptor" unless
- we are actually publishing a descriptor. Fixes bug 3942; bugfix on
- 0.2.3.2-alpha.
diff --git a/changes/bug4011 b/changes/bug4011
deleted file mode 100644
index fb82d6e3f..000000000
--- a/changes/bug4011
+++ /dev/null
@@ -1,7 +0,0 @@
- o Major bugfixes:
- - Do not allow the presence of one consensus flavor to keep us from
- downloading another. Previously, we had one "time to download a
- consensus" timer, which didn't understand the idea of having one
- consensus but wanting to download another. Fixes bug 4011; fix on
- 0.2.3.1-alpha.
-
diff --git a/changes/bug4091_debugging b/changes/bug4091_debugging
deleted file mode 100644
index f78538031..000000000
--- a/changes/bug4091_debugging
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor features:
- - Add more information to a log statement that might help track down
- bug 4091. If you're seeing "Bug: tor_addr_is_internal() called with a
- non-IP address" messages (or any Bug messages, for that matter!),
- please let us know about it.
diff --git a/changes/bug4875 b/changes/bug4875
deleted file mode 100644
index c8c9ba529..000000000
--- a/changes/bug4875
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features:
- - Relays now understand an IPv6 address when they get one from a
- directory server. Resolves ticket 4875.
diff --git a/changes/bug5053 b/changes/bug5053
deleted file mode 100644
index fe43f5472..000000000
--- a/changes/bug5053
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor features:
- - Resolve IPv6 addresses in bridge and entry statistics to country
- code "??" which means we at least count them. Resolves ticket 5053;
- improves on 0.2.3.9-alpha.
-
diff --git a/changes/bug5151 b/changes/bug5151
deleted file mode 100644
index 1a56cf62f..000000000
--- a/changes/bug5151
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes:
- - Fix bug stomping on ORPort option NoListen and ignoring option
- NoAdvertise. Fixes bug 5151; bugfix on 0.2.3.9-alpha.
-
diff --git a/changes/bug5180 b/changes/bug5180
deleted file mode 100644
index 2cb545e0b..000000000
--- a/changes/bug5180
+++ /dev/null
@@ -1,6 +0,0 @@
- o Removed features:
- - The "torify" script no longer supports the "tsocks" sockifier
- tool, since it doesn't support DNS and UDP right for Tor.
- Everyone should be using torsocks instead. Fixes bugs 3530 and
- 5180. Based on a patch by "ugh".
-
diff --git a/changes/bug5449 b/changes/bug5449
deleted file mode 100644
index 48babb34f..000000000
--- a/changes/bug5449
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes:
- - In the testsuite, provide a large enough buffer in the tor_sscanf
- unit test. We'd otherwise overrun that buffer and crash during the
- unit tests. Fixes bug 5449; bugfix on 0.2.3.12-alpha. Thanks weasel
- for spotting the bug.
-
diff --git a/changes/bug5508 b/changes/bug5508
deleted file mode 100644
index cebc31d25..000000000
--- a/changes/bug5508
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes:
- - Fix a bug where a bridge authority crashes (on a failed assert)
- if it has seen no directory requests when it's time to write
- statistics to disk. Fixes bug 5508. Bugfix on 0.2.3.6-alpha.
diff --git a/changes/bug5558 b/changes/bug5558
deleted file mode 100644
index 43b832c50..000000000
--- a/changes/bug5558
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes:
- - Enforce correct return behavior of tor_vsscanf(), when the '%%'
- pattern is used. Fixes bug 5558. Bugfix on 0.2.1.13.
diff --git a/changes/bug5572 b/changes/bug5572
deleted file mode 100644
index e26308837..000000000
--- a/changes/bug5572
+++ /dev/null
@@ -1,5 +0,0 @@
- o Major bugfixes:
- - Make sure we create the keys directory if it doesn't exist and we're
- about to store the dynamic diffie hellman parameters. Fixes bug 5572;
- bugfix on 0.2.3.13-alpha.
-
diff --git a/changes/bug5593 b/changes/bug5593
deleted file mode 100644
index 358e8de60..000000000
--- a/changes/bug5593
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes:
- - When sending an HTTP/1.1 proxy request, include a Host header.
- Fixes bug 5593; bugfix on 0.2.2.1-alpha.
diff --git a/changes/bug5621 b/changes/bug5621
deleted file mode 100644
index 1ffc6042c..000000000
--- a/changes/bug5621
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor enhancement:
- - Document unit of bandwidth related options in sample torrc.
- Fixes bug 5621.
diff --git a/changes/bug5635 b/changes/bug5635
deleted file mode 100644
index 9c2e72967..000000000
--- a/changes/bug5635
+++ /dev/null
@@ -1,6 +0,0 @@
- o Major bugfixes (directory authorities):
- - If authorities are unable to get a set of v2 consensus documents
- from other directory authorities, they no longer fail-back and try
- to fetch them from regular directory caches. This is a bugfix on
- 0.2.2.26-beta, where routers stopped downloading v2 consensus
- documents entirely. Fix for bug #5635.
diff --git a/changes/bug5644 b/changes/bug5644
deleted file mode 100644
index 4eb2d016d..000000000
--- a/changes/bug5644
+++ /dev/null
@@ -1,5 +0,0 @@
- o Major bugfixes:
- - Prevent a client-side assertion failure when receiving an
- INTRODUCE2 cell by an exit relay, in a general purpose
- circuit. Fixes bug 5644; bugfix on tor-0.2.1.6-alpha
-
diff --git a/changes/bug5647 b/changes/bug5647
deleted file mode 100644
index 92f41c855..000000000
--- a/changes/bug5647
+++ /dev/null
@@ -1,4 +0,0 @@
- o Major bugfixes:
- - Avoid logging uninitialized data when unable to decode a hidden
- service descriptor cookie. Fixes bug 5647; bugfix on 0.2.1.5-alpha.
-
diff --git a/changes/crypto_api b/changes/crypto_api
deleted file mode 100644
index 608999f47..000000000
--- a/changes/crypto_api
+++ /dev/null
@@ -1,3 +0,0 @@
- o Code refactoring:
- - Change the symmetric cipher interface so that creating and
- initializing a stream cipher are no longer separate functions.
diff --git a/changes/geoip-april2012 b/changes/geoip-april2012
deleted file mode 100644
index 66720c6d6..000000000
--- a/changes/geoip-april2012
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features:
- - Update to the April 3 2012 Maxmind GeoLite Country database.
-
diff --git a/changes/ides-becomes-turtles b/changes/ides-becomes-turtles
deleted file mode 100644
index 645122184..000000000
--- a/changes/ides-becomes-turtles
+++ /dev/null
@@ -1,4 +0,0 @@
- o Directory authority changes:
- - Change IP address for ides (v3 directory authority), and rename
- it to turtles.
-
diff --git a/changes/memleak_safecookie b/changes/memleak_safecookie
deleted file mode 100644
index 9773af557..000000000
--- a/changes/memleak_safecookie
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes:
- - Fix a small memory leak when trying to decode incorrect base16
- authenticator during SAFECOOKIE authentication. Found by
- Coverity Scan. Fixes CID 507. Bugfix on 0.2.3.13-alpha.
diff --git a/changes/openssl101_aes b/changes/openssl101_aes
deleted file mode 100644
index 565a48d41..000000000
--- a/changes/openssl101_aes
+++ /dev/null
@@ -1,6 +0,0 @@
- o Major features (performance):
- - When built to use the newly OpenSSL 1.0.1, and built for an x86 or
- x86_64 instruction set, take advantage of OpenSSL's AESNI, bitsliced,
- or vectorized AES implementations as appropriate. These can be
- much, much faster than other AES implementations.
-
diff --git a/changes/pad_rsa_always b/changes/pad_rsa_always
deleted file mode 100644
index a049d61c4..000000000
--- a/changes/pad_rsa_always
+++ /dev/null
@@ -1,3 +0,0 @@
- o Code removal:
- - Remove all internal support for unpadded RSA. We never used it, and
- it would be a bad idea to start.
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 1c7367a3f..5481838cc 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -4793,25 +4793,25 @@ int
validate_pluggable_transports_config(void)
{
/* Don't validate if managed proxies are not yet fully configured. */
- if (bridge_list && !pt_proxies_configuration_pending()) {
- SMARTLIST_FOREACH_BEGIN(bridge_list, bridge_info_t *, b) {
- /* Skip bridges without transports. */
- if (!b->transport_name)
- continue;
- /* See if the user has Bridges that specify nonexistent
- pluggable transports. We should warn the user in such case,
- since it's probably misconfiguration. */
- if (!transport_get_by_name(b->transport_name))
- log_warn(LD_CONFIG, "You have a Bridge line using the %s "
- "pluggable transport, but there doesn't seem to be a "
- "corresponding ClientTransportPlugin line.",
- b->transport_name);
- } SMARTLIST_FOREACH_END(b);
-
- return 0;
- } else {
+ if (!bridge_list || pt_proxies_configuration_pending())
return -1;
- }
+
+ SMARTLIST_FOREACH_BEGIN(bridge_list, const bridge_info_t *, b) {
+ /* Skip bridges without transports. */
+ if (!b->transport_name)
+ continue;
+ /* See if the user has Bridges that specify nonexistent
+ pluggable transports. We should warn the user in such case,
+ since it's probably misconfiguration. */
+ if (!transport_get_by_name(b->transport_name))
+ log_warn(LD_CONFIG, "We can't find a pluggable transport proxy "
+ "that supports '%s' for bridge '%s:%u'. This can happen "
+ "if you haven't provided a ClientTransportPlugin line, or "
+ "if your pluggable transport proxy stopped working.",
+ b->transport_name, fmt_addr(&b->addr), b->port);
+ } SMARTLIST_FOREACH_END(b);
+
+ return 0;
}
/** Return a bridge pointer if <b>ri</b> is one of our known bridges