summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-08-29 16:45:10 -0400
committerNick Mathewson <nickm@torproject.org>2014-08-29 16:45:10 -0400
commitb969ee9dad0c582bf470c189beba458293f342a8 (patch)
tree4ba8aa621d4977e147637ea240458a58bad6c22a
parentef89fd142cda9881728410710e5b75c30c1dcbb9 (diff)
parent41058dce95b4e94c10b156728524d24d69620ed0 (diff)
downloadtor-b969ee9dad0c582bf470c189beba458293f342a8.tar.gz
tor-b969ee9dad0c582bf470c189beba458293f342a8.zip
Merge remote-tracking branch 'origin/maint-0.2.5' into release-0.2.5
-rw-r--r--changes/bug129488
-rw-r--r--changes/bug129965
-rw-r--r--changes/bug129973
-rw-r--r--src/or/config.c3
-rw-r--r--src/or/onion_tap.c5
-rw-r--r--src/or/rendmid.c11
6 files changed, 30 insertions, 5 deletions
diff --git a/changes/bug12948 b/changes/bug12948
new file mode 100644
index 0000000000..431c0a1019
--- /dev/null
+++ b/changes/bug12948
@@ -0,0 +1,8 @@
+ o Major bugfixes:
+ - Resume expanding abbreviations for command-line options. The fix
+ for bug 4647 accidentally removed our hack from bug 586 that rewrote
+ HashedControlPassword to __HashedControlSessionPassword when it
+ appears on the commandline (which allowed the user to set her
+ own HashedControlPassword in the torrc file while the controller
+ generates a fresh session password for each run). Fixes bug 12948;
+ bugfix on 0.2.5.1-alpha.
diff --git a/changes/bug12996 b/changes/bug12996
new file mode 100644
index 0000000000..4b4fb0dceb
--- /dev/null
+++ b/changes/bug12996
@@ -0,0 +1,5 @@
+ o Minor bugfixes:
+ - Downgrade "Unexpected onionskin length after decryption" warning
+ to a protocol-warn, since there's nothing relay operators can do
+ about a client that sends them a malformed create cell. Resolves
+ bug 12996; bugfix on 0.0.6rc1.
diff --git a/changes/bug12997 b/changes/bug12997
new file mode 100644
index 0000000000..fb6e7a8459
--- /dev/null
+++ b/changes/bug12997
@@ -0,0 +1,3 @@
+ o Minor features:
+ - Log more specific warnings when we get an ESTABLISH_RENDEZVOUS cell
+ on a cannibalized or non-OR circuit. Resolves ticket 12997.
diff --git a/src/or/config.c b/src/or/config.c
index 6bb620937a..921503b4b9 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -1932,7 +1932,8 @@ config_parse_commandline(int argc, char **argv, int ignore_errors,
}
param = tor_malloc_zero(sizeof(config_line_t));
- param->key = is_cmdline ? tor_strdup(argv[i]) : tor_strdup(s);
+ param->key = is_cmdline ? tor_strdup(argv[i]) :
+ tor_strdup(config_expand_abbrev(&options_format, s, 1, 1));
param->value = arg;
param->command = command;
param->next = NULL;
diff --git a/src/or/onion_tap.c b/src/or/onion_tap.c
index 9a9f374b93..65f8275f75 100644
--- a/src/or/onion_tap.c
+++ b/src/or/onion_tap.c
@@ -122,8 +122,9 @@ onion_skin_TAP_server_handshake(
"Couldn't decrypt onionskin: client may be using old onion key");
goto err;
} else if (len != DH_KEY_LEN) {
- log_warn(LD_PROTOCOL, "Unexpected onionskin length after decryption: %ld",
- (long)len);
+ log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL,
+ "Unexpected onionskin length after decryption: %ld",
+ (long)len);
goto err;
}
diff --git a/src/or/rendmid.c b/src/or/rendmid.c
index 1103816806..d89cdf6bed 100644
--- a/src/or/rendmid.c
+++ b/src/or/rendmid.c
@@ -224,9 +224,16 @@ rend_mid_establish_rendezvous(or_circuit_t *circ, const uint8_t *request,
log_info(LD_REND, "Received an ESTABLISH_RENDEZVOUS request on circuit %u",
(unsigned)circ->p_circ_id);
- if (circ->base_.purpose != CIRCUIT_PURPOSE_OR || circ->base_.n_chan) {
+ if (circ->base_.purpose != CIRCUIT_PURPOSE_OR) {
+ log_warn(LD_PROTOCOL,
+ "Tried to establish rendezvous on non-OR circuit with purpose %s",
+ circuit_purpose_to_string(circ->base_.purpose));
+ goto err;
+ }
+
+ if (circ->base_.n_chan) {
log_warn(LD_PROTOCOL,
- "Tried to establish rendezvous on non-OR or non-edge circuit.");
+ "Tried to establish rendezvous on non-edge circuit");
goto err;
}