diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/or/relay.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/or/relay.c b/src/or/relay.c index a7a5071198..5139036327 100644 --- a/src/or/relay.c +++ b/src/or/relay.c @@ -257,8 +257,13 @@ circuit_receive_relay_cell(cell_t *cell, circuit_t *circ, log_debug(LD_OR,"Sending to origin."); if ((reason = connection_edge_process_relay_cell(cell, circ, conn, layer_hint)) < 0) { - log_warn(LD_OR, - "connection_edge_process_relay_cell (at origin) failed."); + /* If a client is trying to connect to unknown hidden service port, + * END_CIRC_AT_ORIGIN is sent back so we can then close the circuit. + * Do not log warn as this is an expected behavior for a service. */ + if (reason != END_CIRC_AT_ORIGIN) { + log_warn(LD_OR, + "connection_edge_process_relay_cell (at origin) failed."); + } return reason; } } |