Don't yell loudly about failed internal/bridge connections. These

are reachability testing and rendserv upload/downloads, and they
have their own failure messages elsewhere.


svn:r6343
This commit is contained in:
Roger Dingledine 2006-04-09 21:36:37 +00:00
parent b6b534c9dd
commit 21263982e4
2 changed files with 21 additions and 16 deletions

View File

@ -1136,6 +1136,7 @@ connection_ap_handshake_attach_circuit(connection_t *conn)
{ {
int retval; int retval;
int conn_age; int conn_age;
int severity;
tor_assert(conn); tor_assert(conn);
tor_assert(conn->type == CONN_TYPE_AP); tor_assert(conn->type == CONN_TYPE_AP);
@ -1143,11 +1144,12 @@ connection_ap_handshake_attach_circuit(connection_t *conn)
tor_assert(conn->socks_request); tor_assert(conn->socks_request);
conn_age = time(NULL) - conn->timestamp_created; conn_age = time(NULL) - conn->timestamp_created;
severity = (!conn->addr && !conn->port) ? LOG_INFO : LOG_NOTICE;
if (conn_age > get_options()->SocksTimeout) { if (conn_age > get_options()->SocksTimeout) {
log_notice(LD_APP, log_fn(severity, LD_APP,
"Tried for %d seconds to get a connection to %s:%d. Giving up.", "Tried for %d seconds to get a connection to %s:%d. Giving up.",
conn_age, safe_str(conn->socks_request->address), conn_age, safe_str(conn->socks_request->address),
conn->socks_request->port); conn->socks_request->port);
return -1; return -1;
} }

View File

@ -326,6 +326,7 @@ connection_ap_expire_beginning(void)
int n, i; int n, i;
time_t now = time(NULL); time_t now = time(NULL);
or_options_t *options = get_options(); or_options_t *options = get_options();
int severity;
get_connection_array(&carray, &n); get_connection_array(&carray, &n);
@ -333,9 +334,11 @@ connection_ap_expire_beginning(void)
conn = carray[i]; conn = carray[i];
if (conn->type != CONN_TYPE_AP) if (conn->type != CONN_TYPE_AP)
continue; continue;
/* if it's an internal bridge connection, don't yell its status. */
severity = (!conn->addr && !conn->port) ? LOG_INFO : LOG_NOTICE;
if (conn->state == AP_CONN_STATE_CONTROLLER_WAIT) { if (conn->state == AP_CONN_STATE_CONTROLLER_WAIT) {
if (now - conn->timestamp_lastread >= options->SocksTimeout) { if (now - conn->timestamp_lastread >= options->SocksTimeout) {
log_notice(LD_APP, "Closing unattached stream."); log_fn(severity, LD_APP, "Closing unattached stream.");
connection_mark_unattached_ap(conn, END_STREAM_REASON_TIMEOUT); connection_mark_unattached_ap(conn, END_STREAM_REASON_TIMEOUT);
} }
continue; continue;
@ -355,11 +358,11 @@ connection_ap_expire_beginning(void)
} }
if (circ->purpose == CIRCUIT_PURPOSE_C_REND_JOINED) { if (circ->purpose == CIRCUIT_PURPOSE_C_REND_JOINED) {
if (now - conn->timestamp_lastread > options->SocksTimeout) { if (now - conn->timestamp_lastread > options->SocksTimeout) {
log_notice(LD_REND, log_fn(severity, LD_REND,
"Rend stream is %d seconds late. Giving up on address" "Rend stream is %d seconds late. Giving up on address"
" '%s.onion'.", " '%s.onion'.",
(int)(now - conn->timestamp_lastread), (int)(now - conn->timestamp_lastread),
safe_str(conn->socks_request->address)); safe_str(conn->socks_request->address));
connection_edge_end(conn, END_STREAM_REASON_TIMEOUT, connection_edge_end(conn, END_STREAM_REASON_TIMEOUT,
conn->cpath_layer); conn->cpath_layer);
connection_mark_unattached_ap(conn, END_STREAM_REASON_TIMEOUT); connection_mark_unattached_ap(conn, END_STREAM_REASON_TIMEOUT);
@ -368,12 +371,12 @@ connection_ap_expire_beginning(void)
} }
tor_assert(circ->purpose == CIRCUIT_PURPOSE_C_GENERAL); tor_assert(circ->purpose == CIRCUIT_PURPOSE_C_GENERAL);
nickname = build_state_get_exit_nickname(circ->build_state); nickname = build_state_get_exit_nickname(circ->build_state);
log_notice(LD_APP, log_fn(severity, LD_APP,
"We tried for %d seconds to connect to '%s' using exit '%s'." "We tried for %d seconds to connect to '%s' using exit '%s'."
" Retrying on a new circuit.", " Retrying on a new circuit.",
(int)(now - conn->timestamp_lastread), (int)(now - conn->timestamp_lastread),
safe_str(conn->socks_request->address), safe_str(conn->socks_request->address),
nickname ? nickname : "*unnamed*"); nickname ? nickname : "*unnamed*");
/* send an end down the circuit */ /* send an end down the circuit */
connection_edge_end(conn, END_STREAM_REASON_TIMEOUT, conn->cpath_layer); connection_edge_end(conn, END_STREAM_REASON_TIMEOUT, conn->cpath_layer);
/* un-mark it as ending, since we're going to reuse it */ /* un-mark it as ending, since we're going to reuse it */