summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2004-04-17 05:17:40 +0000
committerRoger Dingledine <arma@torproject.org>2004-04-17 05:17:40 +0000
commit0e94b9ff7738fc9c86995eee1fcf368b4e570df7 (patch)
treec7f04250ede5e0cffff928e819262f838d78887c /src
parentf5427463f5aacf803a64dd040469a901c8133dd8 (diff)
downloadtor-0e94b9ff7738fc9c86995eee1fcf368b4e570df7.tar.gz
tor-0e94b9ff7738fc9c86995eee1fcf368b4e570df7.zip
more useful logs to track weasel's bug
svn:r1649
Diffstat (limited to 'src')
-rw-r--r--src/or/connection_edge.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 2b8ab08ea2..28ce5a2ccf 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -866,15 +866,17 @@ void link_apconn_to_circ(connection_t *apconn, circuit_t *circ) {
*/
int connection_ap_handshake_attach_circuit(connection_t *conn) {
int retval;
+ int conn_age;
assert(conn);
assert(conn->type == CONN_TYPE_AP);
assert(conn->state == AP_CONN_STATE_CIRCUIT_WAIT);
assert(conn->socks_request);
- if(conn->timestamp_created < time(NULL)-60) {
+ conn_age = time(NULL) - conn->timestamp_created;
+ if(conn_age > 60) {
/* XXX make this cleaner than '60' */
- log_fn(LOG_WARN,"Giving up on attached circ (60s late).");
+ log_fn(LOG_WARN,"Giving up on attached circ (%d sec old).", conn_age);
connection_mark_for_close(conn, 0);
}
@@ -888,6 +890,7 @@ int connection_ap_handshake_attach_circuit(connection_t *conn) {
/* We have found a suitable circuit for our conn. Hurray. */
+ log_fn(LOG_DEBUG,"Attaching apconn to general circ (%d sec old).", conn_age);
/* here, print the circ's path. so people can figure out which circs are sucking. */
circuit_log_path(LOG_INFO,circ);
@@ -912,7 +915,7 @@ int connection_ap_handshake_attach_circuit(connection_t *conn) {
if(retval > 0) {
/* one is already established, attach */
- log_fn(LOG_INFO,"rend joined circ already here. attaching.");
+ log_fn(LOG_INFO,"rend joined circ already here. attaching. (%d sec old)", conn_age);
link_apconn_to_circ(conn, rendcirc);
if(connection_ap_handshake_send_begin(conn, rendcirc) < 0)
return 0; /* already marked, let them fade away */
@@ -920,7 +923,7 @@ int connection_ap_handshake_attach_circuit(connection_t *conn) {
}
if(rendcirc->purpose == CIRCUIT_PURPOSE_C_REND_READY_INTRO_ACKED) {
- log_fn(LOG_INFO,"pending-join circ already here, with intro ack. Stalling.");
+ log_fn(LOG_INFO,"pending-join circ already here, with intro ack. Stalling. (%d sec old)", conn_age);
return 0;
}
@@ -931,19 +934,19 @@ int connection_ap_handshake_attach_circuit(connection_t *conn) {
if(retval > 0) {
/* one has already sent the intro. keep waiting. */
- log_fn(LOG_INFO,"Intro circ present and awaiting ack. Stalling.");
+ log_fn(LOG_INFO,"Intro circ present and awaiting ack. Stalling. (%d sec old)", conn_age);
return 0;
}
/* now both rendcirc and introcirc are defined, and neither is finished */
if(rendcirc->purpose == CIRCUIT_PURPOSE_C_REND_READY) {
- log_fn(LOG_INFO,"ready rend circ already here (no intro-ack yet).");
+ log_fn(LOG_INFO,"ready rend circ already here (no intro-ack yet). (%d sec old)", conn_age);
/* look around for any new intro circs that should introduce */
assert(introcirc->purpose == CIRCUIT_PURPOSE_C_INTRODUCING);
if(introcirc->state == CIRCUIT_STATE_OPEN) {
- log_fn(LOG_INFO,"found open intro circ; sending introduction.");
+ log_fn(LOG_INFO,"found open intro circ; sending introduction. (%d sec old)", conn_age);
/* XXX here we should cannibalize the rend circ if it's a zero service id */
if(rend_client_send_introduction(introcirc, rendcirc) < 0) {
return -1;
@@ -956,7 +959,7 @@ int connection_ap_handshake_attach_circuit(connection_t *conn) {
}
}
- log_fn(LOG_INFO,"Intro and rend circs are not both ready. Stalling conn.");
+ log_fn(LOG_INFO,"Intro and rend circs are not both ready. Stalling conn. (%d sec old)", conn_age);
return 0;
}
}