mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Merge branch 'maint-0.2.9' into release-0.2.9
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
o Minor bugfixes (logging, protocol violations):
|
||||
- Do not log a nonfatal assertion failure when receiving a VERSIONS
|
||||
cell on a connection using the obsolete v1 link protocol. Log a
|
||||
protocol_warn instead. Fixes bug 31107; bugfix on 0.2.4.4-alpha.
|
||||
@@ -0,0 +1,5 @@
|
||||
o Minor bugfixes (logging):
|
||||
- Rate-limit our the logging message about the obsolete .exit notation.
|
||||
Previously, there was no limit on this warning, which could potentially
|
||||
be triggered many times by a hostile website. Fixes bug 31466;
|
||||
bugfix on 0.2.2.1-alpha.
|
||||
+9
-1
@@ -1098,7 +1098,15 @@ channel_tls_handle_cell(cell_t *cell, or_connection_t *conn)
|
||||
/* do nothing */
|
||||
break;
|
||||
case CELL_VERSIONS:
|
||||
tor_fragile_assert();
|
||||
/* A VERSIONS cell should always be a variable-length cell, and
|
||||
* so should never reach this function (which handles constant-sized
|
||||
* cells). But if the connection is using the (obsolete) v1 link
|
||||
* protocol, all cells will be treated as constant-sized, and so
|
||||
* it's possible we'll reach this code.
|
||||
*/
|
||||
log_fn(LOG_PROTOCOL_WARN, LD_CHANNEL,
|
||||
"Received unexpected VERSIONS cell on a channel using link "
|
||||
"protocol %d; ignoring.", conn->link_proto);
|
||||
break;
|
||||
case CELL_NETINFO:
|
||||
++stats_n_netinfo_cells_processed;
|
||||
|
||||
@@ -1186,9 +1186,11 @@ connection_ap_handshake_rewrite(entry_connection_t *conn,
|
||||
* disallowed when they're coming straight from the client, but you're
|
||||
* allowed to have them in MapAddress commands and so forth. */
|
||||
if (!strcmpend(socks->address, ".exit") && !options->AllowDotExit) {
|
||||
log_warn(LD_APP, "The \".exit\" notation is disabled in Tor due to "
|
||||
"security risks. Set AllowDotExit in your torrc to enable "
|
||||
"it (at your own risk).");
|
||||
static ratelim_t exit_warning_limit = RATELIM_INIT(60*15);
|
||||
log_fn_ratelim(&exit_warning_limit, LOG_WARN, LD_APP,
|
||||
"The \".exit\" notation is disabled in Tor due to "
|
||||
"security risks. Set AllowDotExit in your torrc to enable "
|
||||
"it (at your own risk).");
|
||||
control_event_client_status(LOG_WARN, "SOCKS_BAD_HOSTNAME HOSTNAME=%s",
|
||||
escaped(socks->address));
|
||||
out->end_reason = END_STREAM_REASON_TORPROTOCOL;
|
||||
|
||||
Reference in New Issue
Block a user