diff --git a/src/or/directory.c b/src/or/directory.c index d9a73e5d3d..f9a51b93c7 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -102,7 +102,7 @@ dir_policy_permits_address(uint32_t addr) return 0; else if (a==ADDR_POLICY_ACCEPTED) return 1; - warn(LD_BUG, "Bug: got unexpected 'maybe' answer from dir policy"); + log_warn(LD_BUG, "Bug: got unexpected 'maybe' answer from dir policy"); return 0; } @@ -191,8 +191,9 @@ directory_get_from_dirserver(uint8_t purpose, const char *resource, which = "network status"; else // if (purpose == DIR_PURPOSE_FETCH_NETWORKSTATUS) which = "server descriptors"; - info(LD_DIR, - "No router found for %s; falling back to dirserver list", which); + log_info(LD_DIR, + "No router found for %s; falling back to dirserver list", + which); rs = router_pick_trusteddirserver(1, 1, 1, retry_if_no_servers); if (!rs) @@ -219,9 +220,9 @@ directory_get_from_dirserver(uint8_t purpose, const char *resource, directory_initiate_command_routerstatus(rs, purpose, !directconn, resource, NULL, 0); else { - notice(LD_DIR, - "No running dirservers known. Will try again later. (purpose %d)", - purpose); + log_notice(LD_DIR, + "No running dirservers known. Will try again later. " + "(purpose %d)", purpose); if (!purpose_is_private(purpose)) { /* remember we tried them all and failed. */ directory_all_unreachable(time(NULL)); @@ -304,17 +305,17 @@ connection_dir_request_failed(connection_t *conn) router_mark_as_down(conn->identity_digest); /* don't try him again */ if (conn->purpose == DIR_PURPOSE_FETCH_DIR || conn->purpose == DIR_PURPOSE_FETCH_RUNNING_LIST) { - info(LD_DIR, "Giving up on directory server at '%s:%d'; retrying", - conn->address, conn->port); + log_info(LD_DIR, "Giving up on directory server at '%s:%d'; retrying", + conn->address, conn->port); directory_get_from_dirserver(conn->purpose, NULL, 0 /* don't retry_if_no_servers */); } else if (conn->purpose == DIR_PURPOSE_FETCH_NETWORKSTATUS) { - info(LD_DIR, "Giving up on directory server at '%s'; retrying", - conn->address); + log_info(LD_DIR, "Giving up on directory server at '%s'; retrying", + conn->address); connection_dir_download_networkstatus_failed(conn); } else if (conn->purpose == DIR_PURPOSE_FETCH_SERVERDESC) { - info(LD_DIR, "Giving up on directory server at '%s'; retrying", - conn->address); + log_info(LD_DIR, "Giving up on directory server at '%s'; retrying", + conn->address); connection_dir_download_routerdesc_failed(conn); } } @@ -382,28 +383,28 @@ directory_initiate_command(const char *address, uint32_t addr, switch (purpose) { case DIR_PURPOSE_FETCH_DIR: - debug(LD_DIR,"initiating directory fetch"); + log_debug(LD_DIR,"initiating directory fetch"); break; case DIR_PURPOSE_FETCH_RENDDESC: - debug(LD_DIR,"initiating hidden-service descriptor fetch"); + log_debug(LD_DIR,"initiating hidden-service descriptor fetch"); break; case DIR_PURPOSE_UPLOAD_DIR: - debug(LD_OR,"initiating server descriptor upload"); + log_debug(LD_OR,"initiating server descriptor upload"); break; case DIR_PURPOSE_UPLOAD_RENDDESC: - debug(LD_REND,"initiating hidden-service descriptor upload"); + log_debug(LD_REND,"initiating hidden-service descriptor upload"); break; case DIR_PURPOSE_FETCH_RUNNING_LIST: - debug(LD_DIR,"initiating running-routers fetch"); + log_debug(LD_DIR,"initiating running-routers fetch"); break; case DIR_PURPOSE_FETCH_NETWORKSTATUS: - debug(LD_DIR,"initiating network-status fetch"); + log_debug(LD_DIR,"initiating network-status fetch"); break; case DIR_PURPOSE_FETCH_SERVERDESC: - debug(LD_DIR,"initiating server descriptor fetch"); + log_debug(LD_DIR,"initiating server descriptor fetch"); break; default: - err(LD_BUG, "Unrecognized directory connection purpose."); + log_err(LD_BUG, "Unrecognized directory connection purpose."); tor_assert(0); } @@ -451,13 +452,13 @@ directory_initiate_command(const char *address, uint32_t addr, */ conn->s = connection_ap_make_bridge(conn->address, conn->port); if (conn->s < 0) { - warn(LD_NET,"Making AP bridge to dirserver failed."); + log_warn(LD_NET,"Making AP bridge to dirserver failed."); connection_mark_for_close(conn); return; } if (connection_add(conn) < 0) { - warn(LD_NET,"Unable to add AP bridge to dirserver."); + log_warn(LD_NET,"Unable to add AP bridge to dirserver."); connection_mark_for_close(conn); return; } @@ -509,7 +510,7 @@ directory_send_command(connection_t *conn, const char *platform, if (authenticator) { base64_authenticator = alloc_http_authenticator(authenticator); if (!base64_authenticator) - warn(LD_BUG, "Encoding http authenticator failed"); + log_warn(LD_BUG, "Encoding http authenticator failed"); } if (base64_authenticator) { tor_snprintf(proxyauthstring, sizeof(proxyauthstring), @@ -528,8 +529,9 @@ directory_send_command(connection_t *conn, const char *platform, case DIR_PURPOSE_FETCH_DIR: tor_assert(!resource); tor_assert(!payload); - debug(LD_DIR, "Asking for compressed directory from server running %s", - platform?platform:""); + log_debug(LD_DIR, + "Asking for compressed directory from server running %s", + platform?platform:""); httpcommand = "GET"; url = tor_strdup("/tor/dir.z"); break; @@ -586,10 +588,10 @@ directory_send_command(connection_t *conn, const char *platform, } if (strlen(proxystring) + strlen(url) >= 4096) { - warn(LD_BUG, - "Bug: squid does not like URLs longer than 4095 bytes, this " - "one is %d bytes long: %s%s", - (int)(strlen(proxystring) + strlen(url)), proxystring, url); + log_warn(LD_BUG, + "Bug: squid does not like URLs longer than 4095 bytes, this " + "one is %d bytes long: %s%s", + (int)(strlen(proxystring) + strlen(url)), proxystring, url); } tor_snprintf(request, sizeof(request), "%s %s", httpcommand, proxystring); @@ -649,7 +651,7 @@ parse_http_url(char *headers, char **url) if (s-tmp >= 3 && !strcmpstart(tmp,"://")) { tmp = strchr(tmp+3, '/'); if (tmp && tmp < s) { - debug(LD_DIR,"Skipping over 'http[s]://hostname' string"); + log_debug(LD_DIR,"Skipping over 'http[s]://hostname' string"); start = tmp; } } @@ -746,7 +748,7 @@ parse_http_response(const char *headers, int *code, time_t *date, if (sscanf(headers, "HTTP/1.%d %d", &n1, &n2) < 2 || (n1 != 0 && n1 != 1) || (n2 < 100 || n2 >= 600)) { - warn(LD_HTTP,"Failed to parse header '%s'",headers); + log_warn(LD_HTTP,"Failed to parse header '%s'",headers); return -1; } *code = n2; @@ -793,8 +795,8 @@ parse_http_response(const char *headers, int *code, time_t *date, } else if (!strcmp(enc, "gzip") || !strcmp(enc, "x-gzip")) { *compression = GZIP_METHOD; } else { - info(LD_HTTP, "Unrecognized content encoding: '%s'. Trying to deal.", - enc); + log_info(LD_HTTP, "Unrecognized content encoding: '%s'. Trying to deal.", + enc); *compression = -1; } } @@ -861,12 +863,13 @@ connection_dir_client_reached_eof(connection_t *conn) &body, &body_len, MAX_DIR_SIZE, allow_partial)) { case -1: /* overflow */ - warn(LD_PROTOCOL,"'fetch' response too large (server '%s:%d'). Closing.", - conn->address, conn->port); + log_warn(LD_PROTOCOL, + "'fetch' response too large (server '%s:%d'). Closing.", + conn->address, conn->port); return -1; case 0: - info(LD_HTTP, - "'fetch' response not all here, but we're at eof. Closing."); + log_info(LD_HTTP, + "'fetch' response not all here, but we're at eof. Closing."); return -1; /* case 1, fall through */ } @@ -874,16 +877,16 @@ connection_dir_client_reached_eof(connection_t *conn) if (parse_http_response(headers, &status_code, &date_header, &compression, &reason) < 0) { - warn(LD_HTTP,"Unparseable headers (server '%s:%d'). Closing.", - conn->address, conn->port); + log_warn(LD_HTTP,"Unparseable headers (server '%s:%d'). Closing.", + conn->address, conn->port); tor_free(body); tor_free(headers); return -1; } if (!reason) reason = tor_strdup("[no reason given]"); - debug(LD_DIR, - "Received response from directory server '%s:%d': %d \"%s\"", - conn->address, conn->port, status_code, reason); + log_debug(LD_DIR, + "Received response from directory server '%s:%d': %d \"%s\"", + conn->address, conn->port, status_code, reason); if (date_header > 0) { now = time(NULL); @@ -899,15 +902,15 @@ connection_dir_client_reached_eof(connection_t *conn) abs(delta)/60, delta>0 ? "behind" : "ahead"); skewed = 1; /* don't check the recommended-versions line */ } else { - debug(LD_HTTP, "Time on received directory is within tolerance; " - "we are %d seconds skewed. (That's okay.)", delta); + log_debug(LD_HTTP, "Time on received directory is within tolerance; " + "we are %d seconds skewed. (That's okay.)", delta); } } if (status_code == 503) { - info(LD_DIR,"Received http status code %d (\"%s\") from server " - "'%s:%d'. I'll try again soon.", - status_code, reason, conn->address, conn->port); + log_info(LD_DIR,"Received http status code %d (\"%s\") from server " + "'%s:%d'. I'll try again soon.", + status_code, reason, conn->address, conn->port); tor_free(body); tor_free(headers); tor_free(reason); return -1; } @@ -937,10 +940,10 @@ connection_dir_client_reached_eof(connection_t *conn) else description2 = "uncompressed"; - info(LD_HTTP, "HTTP body from server '%s:%d' was labeled %s, " - "but it seems to be %s.%s", - conn->address, conn->port, description1, description2, - (compression>0 && guessed>0)?" Trying both.":""); + log_info(LD_HTTP, "HTTP body from server '%s:%d' was labeled %s, " + "but it seems to be %s.%s", + conn->address, conn->port, description1, description2, + (compression>0 && guessed>0)?" Trying both.":""); } /* Try declared compression first if we can. */ if (compression > 0) @@ -970,36 +973,36 @@ connection_dir_client_reached_eof(connection_t *conn) if (conn->purpose == DIR_PURPOSE_FETCH_DIR) { /* fetch/process the directory to cache it. */ - info(LD_DIR,"Received directory (size %d) from server '%s:%d'", - (int)body_len, conn->address, conn->port); + log_info(LD_DIR,"Received directory (size %d) from server '%s:%d'", + (int)body_len, conn->address, conn->port); if (status_code != 200) { - warn(LD_DIR,"Received http status code %d (\"%s\") from server " - "'%s:%d'. I'll try again soon.", - status_code, reason, conn->address, conn->port); + log_warn(LD_DIR,"Received http status code %d (\"%s\") from server " + "'%s:%d'. I'll try again soon.", + status_code, reason, conn->address, conn->port); tor_free(body); tor_free(headers); tor_free(reason); return -1; } if (router_parse_directory(body) < 0) { - notice(LD_DIR,"I failed to parse the directory I fetched from " - "'%s:%d'. Ignoring.", conn->address, conn->port); + log_notice(LD_DIR,"I failed to parse the directory I fetched from " + "'%s:%d'. Ignoring.", conn->address, conn->port); } note_request(was_compressed?"dl/dir.z":"dl/dir", orig_len); } if (conn->purpose == DIR_PURPOSE_FETCH_RUNNING_LIST) { /* just update our list of running routers, if this list is new info */ - info(LD_DIR,"Received running-routers list (size %d)", (int)body_len); + log_info(LD_DIR,"Received running-routers list (size %d)", (int)body_len); if (status_code != 200) { - warn(LD_DIR,"Received http status code %d (\"%s\") from server " - "'%s:%d'. I'll try again soon.", - status_code, reason, conn->address, conn->port); + log_warn(LD_DIR,"Received http status code %d (\"%s\") from server " + "'%s:%d'. I'll try again soon.", + status_code, reason, conn->address, conn->port); tor_free(body); tor_free(headers); tor_free(reason); return -1; } if (router_parse_runningrouters(body)<0) { - warn(LD_DIR,"Bad running-routers from server '%s:%d'. I'll try again " - "soon.", - conn->address, conn->port); + log_warn(LD_DIR, + "Bad running-routers from server '%s:%d'. I'll try again soon.", + conn->address, conn->port); tor_free(body); tor_free(headers); tor_free(reason); return -1; } @@ -1010,10 +1013,11 @@ connection_dir_client_reached_eof(connection_t *conn) if (conn->purpose == DIR_PURPOSE_FETCH_NETWORKSTATUS) { smartlist_t *which = NULL; char *cp; - info(LD_DIR,"Received networkstatus objects (size %d) from server " - "'%s:%d'",(int) body_len, conn->address, conn->port); + log_info(LD_DIR,"Received networkstatus objects (size %d) from server " + "'%s:%d'",(int) body_len, conn->address, conn->port); if (status_code != 200) { - warn(LD_DIR,"Received http status code %d (\"%s\") from server " + log_warn(LD_DIR, + "Received http status code %d (\"%s\") from server " "'%s:%d' while fetching \"/tor/status/%s\". I'll try again soon.", status_code, reason, conn->address, conn->port, conn->requested_resource); @@ -1057,8 +1061,8 @@ connection_dir_client_reached_eof(connection_t *conn) if (conn->purpose == DIR_PURPOSE_FETCH_SERVERDESC) { smartlist_t *which = NULL; int n_asked_for = 0; - info(LD_DIR,"Received server info (size %d) from server '%s:%d'", - (int)body_len, conn->address, conn->port); + log_info(LD_DIR,"Received server info (size %d) from server '%s:%d'", + (int)body_len, conn->address, conn->port); note_request(was_compressed?"dl/server.z":"dl/server", orig_len); if (conn->requested_resource && !strcmpstart(conn->requested_resource,"d/")) { @@ -1099,9 +1103,9 @@ connection_dir_client_reached_eof(connection_t *conn) directory_info_has_arrived(time(NULL), 0); } if (which) { /* mark remaining ones as failed */ - info(LD_DIR, "Received %d/%d routers requested from %s:%d", - n_asked_for-smartlist_len(which), n_asked_for, - conn->address, (int)conn->port); + log_info(LD_DIR, "Received %d/%d routers requested from %s:%d", + n_asked_for-smartlist_len(which), n_asked_for, + conn->address, (int)conn->port); if (smartlist_len(which)) { dir_routerdesc_download_failed(which); } @@ -1123,24 +1127,25 @@ connection_dir_client_reached_eof(connection_t *conn) if (conn->purpose == DIR_PURPOSE_UPLOAD_DIR) { switch (status_code) { case 200: - info(LD_GENERAL,"eof (status 200) after uploading server " - "descriptor: finished."); + log_info(LD_GENERAL,"eof (status 200) after uploading server " + "descriptor: finished."); break; case 400: - warn(LD_GENERAL,"http status 400 (\"%s\") response from " - "dirserver '%s:%d'. Please correct.", - reason, conn->address, conn->port); + log_warn(LD_GENERAL,"http status 400 (\"%s\") response from " + "dirserver '%s:%d'. Please correct.", + reason, conn->address, conn->port); break; case 403: - warn(LD_GENERAL,"http status 403 (\"%s\") response from dirserver " + log_warn(LD_GENERAL, + "http status 403 (\"%s\") response from dirserver " "'%s:%d'. Is your clock skewed? Have you mailed us your key " "fingerprint? Are you using the right key? Are you using a " "private IP address? See http://tor.eff.org/doc/" "tor-doc-server.html", reason, conn->address, conn->port); break; default: - warn(LD_GENERAL,"http status %d (\"%s\") reason unexpected (server " - "'%s:%d').", + log_warn(LD_GENERAL, + "http status %d (\"%s\") reason unexpected (server '%s:%d').", status_code, reason, conn->address, conn->port); break; } @@ -1149,13 +1154,13 @@ connection_dir_client_reached_eof(connection_t *conn) } if (conn->purpose == DIR_PURPOSE_FETCH_RENDDESC) { - info(LD_REND,"Received rendezvous descriptor (size %d, status %d " - "(\"%s\"))", - (int)body_len, status_code, reason); + log_info(LD_REND,"Received rendezvous descriptor (size %d, status %d " + "(\"%s\"))", + (int)body_len, status_code, reason); switch (status_code) { case 200: if (rend_cache_store(body, body_len) < 0) { - warn(LD_REND,"Failed to store rendezvous descriptor."); + log_warn(LD_REND,"Failed to store rendezvous descriptor."); /* alice's ap_stream will notice when connection_mark_for_close * cleans it up */ } else { @@ -1169,11 +1174,12 @@ connection_dir_client_reached_eof(connection_t *conn) * connection_mark_for_close cleans it up. */ break; case 400: - warn(LD_REND,"http status 400 (\"%s\"). Dirserver didn't like our " - "rendezvous query?", reason); + log_warn(LD_REND, + "http status 400 (\"%s\"). Dirserver didn't like our " + "rendezvous query?", reason); break; default: - warn(LD_REND,"http status %d (\"%s\") response unexpected (server " + log_warn(LD_REND,"http status %d (\"%s\") response unexpected (server " "'%s:%d').", status_code, reason, conn->address, conn->port); break; @@ -1183,18 +1189,19 @@ connection_dir_client_reached_eof(connection_t *conn) if (conn->purpose == DIR_PURPOSE_UPLOAD_RENDDESC) { switch (status_code) { case 200: - info(LD_REND,"Uploading rendezvous descriptor: finished with status " - "200 (\"%s\")", reason); + log_info(LD_REND, + "Uploading rendezvous descriptor: finished with status " + "200 (\"%s\")", reason); break; case 400: - warn(LD_REND,"http status 400 (\"%s\") response from dirserver " - "'%s:%d'. Malformed rendezvous descriptor?", - reason, conn->address, conn->port); + log_warn(LD_REND,"http status 400 (\"%s\") response from dirserver " + "'%s:%d'. Malformed rendezvous descriptor?", + reason, conn->address, conn->port); break; default: - warn(LD_REND,"http status %d (\"%s\") response unexpected (server " - "'%s:%d').", - status_code, reason, conn->address, conn->port); + log_warn(LD_REND,"http status %d (\"%s\") response unexpected (server " + "'%s:%d').", + status_code, reason, conn->address, conn->port); break; } } @@ -1208,7 +1215,7 @@ connection_dir_reached_eof(connection_t *conn) { int retval; if (conn->state != DIR_CONN_STATE_CLIENT_READING) { - info(LD_HTTP,"conn reached eof, not reading. Closing."); + log_info(LD_HTTP,"conn reached eof, not reading. Closing."); connection_close_immediate(conn); /* error: give up on flushing */ connection_mark_for_close(conn); return -1; @@ -1248,7 +1255,7 @@ connection_dir_process_inbuf(connection_t *conn) /* XXX for READ states, might want to make sure inbuf isn't too big */ if (!conn->inbuf_reached_eof) - debug(LD_HTTP,"Got data, not eof. Leaving on inbuf."); + log_debug(LD_HTTP,"Got data, not eof. Leaving on inbuf."); return 0; } @@ -1262,7 +1269,7 @@ write_http_status_line(connection_t *conn, int status, char buf[256]; if (tor_snprintf(buf, sizeof(buf), "HTTP/1.0 %d %s\r\n\r\n", status, reason_phrase) < 0) { - warn(LD_BUG,"Bug: status line too long."); + log_warn(LD_BUG,"Bug: status line too long."); return; } connection_write_to_buf(buf, strlen(buf), conn); @@ -1374,7 +1381,7 @@ directory_handle_command_get(connection_t *conn, char *headers, char tmp[8192]; char date[RFC1123_TIME_LEN+1]; - debug(LD_DIRSERV,"Received GET command."); + log_debug(LD_DIRSERV,"Received GET command."); conn->state = DIR_CONN_STATE_SERVER_WRITING; @@ -1382,15 +1389,15 @@ directory_handle_command_get(connection_t *conn, char *headers, write_http_status_line(conn, 400, "Bad request"); return 0; } - debug(LD_DIRSERV,"rewritten url as '%s'.", url); + log_debug(LD_DIRSERV,"rewritten url as '%s'.", url); if (!strcmp(url,"/tor/") || !strcmp(url,"/tor/dir.z")) { /* dir fetch */ int deflated = !strcmp(url,"/tor/dir.z"); dlen = dirserv_get_directory(&cp, deflated); if (dlen == 0) { - notice(LD_DIRSERV,"Client asked for the mirrored directory, but we " - "don't have a good one yet. Sending 503 Dir not available."); + log_notice(LD_DIRSERV,"Client asked for the mirrored directory, but we " + "don't have a good one yet. Sending 503 Dir not available."); write_http_status_line(conn, 503, "Directory unavailable"); /* try to get a new one now */ if (!already_fetching_directory(DIR_PURPOSE_FETCH_DIR)) @@ -1400,9 +1407,9 @@ directory_handle_command_get(connection_t *conn, char *headers, } if (global_write_bucket_empty()) { - info(LD_DIRSERV, - "Client asked for the mirrored directory, but we've been " - "writing too many bytes lately. Sending 503 Dir busy."); + log_info(LD_DIRSERV, + "Client asked for the mirrored directory, but we've been " + "writing too many bytes lately. Sending 503 Dir busy."); write_http_status_line(conn, 503, "Directory busy, try again later"); tor_free(url); return 0; @@ -1411,8 +1418,8 @@ directory_handle_command_get(connection_t *conn, char *headers, note_request(url, dlen); tor_free(url); - debug(LD_DIRSERV,"Dumping %sdirectory to client.", - deflated?"deflated ":""); + log_debug(LD_DIRSERV,"Dumping %sdirectory to client.", + deflated?"deflated ":""); format_rfc1123_time(date, time(NULL)); tor_snprintf(tmp, sizeof(tmp), "HTTP/1.0 200 OK\r\nDate: %s\r\nContent-Length: %d\r\n" @@ -1664,7 +1671,7 @@ directory_handle_command_post(connection_t *conn, char *headers, char *origin = NULL; char *url = NULL; - debug(LD_DIRSERV,"Received POST command."); + log_debug(LD_DIRSERV,"Received POST command."); conn->state = DIR_CONN_STATE_SERVER_WRITING; @@ -1680,7 +1687,7 @@ directory_handle_command_post(connection_t *conn, char *headers, write_http_status_line(conn, 400, "Bad request"); return 0; } - debug(LD_DIRSERV,"rewritten url as '%s'.", url); + log_debug(LD_DIRSERV,"rewritten url as '%s'.", url); origin = http_get_origin(headers, conn); if (!strcmp(url,"/tor/")) { /* server descriptor post */ @@ -1693,7 +1700,7 @@ directory_handle_command_post(connection_t *conn, char *headers, case -2: case -1: case 1: - notice(LD_DIRSERV,"Rejected router descriptor from %s.", origin); + log_notice(LD_DIRSERV,"Rejected router descriptor from %s.", origin); /* malformed descriptor, or something wrong */ write_http_status_line(conn, 400, msg); break; @@ -1709,12 +1716,12 @@ directory_handle_command_post(connection_t *conn, char *headers, /* rendezvous descriptor post */ if (rend_cache_store(body, body_len) < 0) { // char tmp[1024*2+1]; - notice(LD_DIRSERV,"Rejected rend descriptor (length %d) from %s.", - (int)body_len, origin); + log_notice(LD_DIRSERV,"Rejected rend descriptor (length %d) from %s.", + (int)body_len, origin); #if 0 if (body_len <= 1024) { base16_encode(tmp, sizeof(tmp), body, body_len); - notice(LD_DIRSERV,"Body was: %s", tmp); + log_notice(LD_DIRSERV,"Body was: %s", tmp); } #endif write_http_status_line(conn, 400, "Invalid service descriptor rejected"); @@ -1752,24 +1759,24 @@ directory_handle_command(connection_t *conn) &headers, MAX_HEADERS_SIZE, &body, &body_len, MAX_BODY_SIZE, 0)) { case -1: /* overflow */ - warn(LD_DIRSERV, - "Invalid input from address '%s'. Closing.", conn->address); + log_warn(LD_DIRSERV, + "Invalid input from address '%s'. Closing.", conn->address); return -1; case 0: - debug(LD_DIRSERV,"command not all here yet."); + log_debug(LD_DIRSERV,"command not all here yet."); return 0; /* case 1, fall through */ } - debug(LD_DIRSERV,"headers '%s', body '%s'.", headers, body); + log_debug(LD_DIRSERV,"headers '%s', body '%s'.", headers, body); if (!strncasecmp(headers,"GET",3)) r = directory_handle_command_get(conn, headers, body, body_len); else if (!strncasecmp(headers,"POST",4)) r = directory_handle_command_post(conn, headers, body, body_len); else { - warn(LD_PROTOCOL,"Got headers '%s' with unknown command. Closing.", - headers); + log_warn(LD_PROTOCOL,"Got headers '%s' with unknown command. Closing.", + headers); r = -1; } @@ -1789,16 +1796,16 @@ connection_dir_finished_flushing(connection_t *conn) switch (conn->state) { case DIR_CONN_STATE_CLIENT_SENDING: - debug(LD_DIR,"client finished sending command."); + log_debug(LD_DIR,"client finished sending command."); conn->state = DIR_CONN_STATE_CLIENT_READING; connection_stop_writing(conn); return 0; case DIR_CONN_STATE_SERVER_WRITING: - debug(LD_DIRSERV,"Finished writing server response. Closing."); + log_debug(LD_DIRSERV,"Finished writing server response. Closing."); connection_mark_for_close(conn); return 0; default: - warn(LD_BUG,"Bug: called in unexpected state %d.", conn->state); + log_warn(LD_BUG,"Bug: called in unexpected state %d.", conn->state); tor_fragile_assert(); return -1; } @@ -1814,8 +1821,8 @@ connection_dir_finished_connecting(connection_t *conn) tor_assert(conn->type == CONN_TYPE_DIR); tor_assert(conn->state == DIR_CONN_STATE_CONNECTING); - debug(LD_HTTP,"Dir connection to router %s:%u established.", - conn->address,conn->port); + log_debug(LD_HTTP,"Dir connection to router %s:%u established.", + conn->address,conn->port); conn->state = DIR_CONN_STATE_CLIENT_SENDING; /* start flushing conn */ return 0; @@ -1876,14 +1883,15 @@ dir_routerdesc_download_failed(smartlist_t *failed) } } if (rs->next_attempt_at == 0) - debug(LD_DIR, "%s failed %d time(s); I'll try again immediately.", - cp, (int)rs->n_download_failures); + log_debug(LD_DIR, "%s failed %d time(s); I'll try again immediately.", + cp, (int)rs->n_download_failures); else if (rs->next_attempt_at < TIME_MAX) - debug(LD_DIR, "%s failed %d time(s); I'll try again in %d seconds.", - cp, (int)rs->n_download_failures, (int)(rs->next_attempt_at-now)); + log_debug(LD_DIR, "%s failed %d time(s); I'll try again in %d seconds.", + cp, (int)rs->n_download_failures, + (int)(rs->next_attempt_at-now)); else - debug(LD_DIR, "%s failed %d time(s); Giving up for a while.", - cp, (int)rs->n_download_failures); + log_debug(LD_DIR, "%s failed %d time(s); Giving up for a while.", + cp, (int)rs->n_download_failures); }); /* update_router_descriptor_downloads(time(NULL)); */ @@ -1922,13 +1930,14 @@ dir_split_resource_into_fingerprints(const char *resource, for (i = old_len; i < smartlist_len(fp_out); ++i) { cp = smartlist_get(fp_out, i); if (strlen(cp) != HEX_DIGEST_LEN) { - info(LD_DIR, "Skipping digest \"%s\" with non-standard length.", cp); + log_info(LD_DIR, + "Skipping digest \"%s\" with non-standard length.", cp); smartlist_del(fp_out, i--); goto again; } d = tor_malloc_zero(DIGEST_LEN); if (base16_decode(d, DIGEST_LEN, cp, HEX_DIGEST_LEN)<0) { - info(LD_DIR, "Skipping non-decodable digest \"%s\"", cp); + log_info(LD_DIR, "Skipping non-decodable digest \"%s\"", cp); smartlist_del(fp_out, i--); goto again; } diff --git a/src/or/dirserv.c b/src/or/dirserv.c index 1b068b9ed2..4c8b05fbc2 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -147,7 +147,7 @@ dirserv_add_own_fingerprint(const char *nickname, crypto_pk_env_t *pk) { char fp[FINGERPRINT_LEN+1]; if (crypto_pk_get_fingerprint(pk, fp, 0)<0) { - err(LD_BUG, "Error computing fingerprint"); + log_err(LD_BUG, "Error computing fingerprint"); return -1; } if (!fingerprint_list) @@ -173,13 +173,13 @@ dirserv_parse_fingerprint_file(const char *fname) cf = read_file_to_str(fname, 0); if (!cf) { - warn(LD_FS, "Cannot open fingerprint file %s", fname); + log_warn(LD_FS, "Cannot open fingerprint file %s", fname); return -1; } result = config_get_lines(cf, &front); tor_free(cf); if (result < 0) { - warn(LD_CONFIG, "Error reading from fingerprint file"); + log_warn(LD_CONFIG, "Error reading from fingerprint file"); return -1; } @@ -188,35 +188,39 @@ dirserv_parse_fingerprint_file(const char *fname) for (list=front; list; list=list->next) { nickname = list->key; fingerprint = list->value; if (strlen(nickname) > MAX_NICKNAME_LEN) { - notice(LD_CONFIG, - "Nickname '%s' too long in fingerprint file. Skipping.", nickname); + log_notice(LD_CONFIG, + "Nickname '%s' too long in fingerprint file. Skipping.", + nickname); continue; } if (!is_legal_nickname(nickname) && strcasecmp(nickname, "!reject") && strcasecmp(nickname, "!invalid")) { - notice(LD_CONFIG, - "Invalid nickname '%s' in fingerprint file. Skipping.", nickname); + log_notice(LD_CONFIG, + "Invalid nickname '%s' in fingerprint file. Skipping.", + nickname); continue; } if (strlen(fingerprint) != FINGERPRINT_LEN || !crypto_pk_check_fingerprint_syntax(fingerprint)) { - notice(LD_CONFIG, - "Invalid fingerprint (nickname '%s', fingerprint %s). Skipping.", - nickname, fingerprint); + log_notice(LD_CONFIG, + "Invalid fingerprint (nickname '%s', " + "fingerprint %s). Skipping.", + nickname, fingerprint); continue; } if (0==strcasecmp(nickname, DEFAULT_CLIENT_NICKNAME)) { /* If you approved an OR called "client", then clients who use * the default nickname could all be rejected. That's no good. */ - notice(LD_CONFIG, - "Authorizing a nickname '%s' would break many clients; skipping.", - DEFAULT_CLIENT_NICKNAME); + log_notice(LD_CONFIG, + "Authorizing a nickname '%s' would break " + "many clients; skipping.", + DEFAULT_CLIENT_NICKNAME); continue; } if (add_fingerprint_to_dir(nickname, fingerprint, fingerprint_list_new) != 0) - notice(LD_CONFIG, "Duplicate nickname '%s'.", nickname); + log_notice(LD_CONFIG, "Duplicate nickname '%s'.", nickname); } config_free_lines(front); @@ -239,7 +243,7 @@ dirserv_router_get_status(const routerinfo_t *router, const char **msg) char fingerprint[FINGERPRINT_LEN+1]; if (crypto_pk_get_fingerprint(router->identity_pkey, fingerprint, 0)) { - warn(LD_BUG,"Error computing fingerprint"); + log_warn(LD_BUG,"Error computing fingerprint"); return -1; } @@ -288,8 +292,8 @@ dirserv_get_status_impl(const char *fp, const char *nickname, fingerprint_list = smartlist_create(); if (should_log) - debug(LD_DIRSERV, "%d fingerprints known.", - smartlist_len(fingerprint_list)); + log_debug(LD_DIRSERV, "%d fingerprints known.", + smartlist_len(fingerprint_list)); SMARTLIST_FOREACH(fingerprint_list, fingerprint_entry_t *, ent, { if (!strcasecmp(fp,ent->fingerprint)) @@ -318,20 +322,20 @@ dirserv_get_status_impl(const char *fp, const char *nickname, if (rej == ADDR_POLICY_PROBABLY_REJECTED || rej == ADDR_POLICY_REJECTED) { if (should_log) - info(LD_DIRSERV, "Rejecting '%s' because of address '%s'", - nickname, address); + log_info(LD_DIRSERV, "Rejecting '%s' because of address '%s'", + nickname, address); if (msg) *msg = "Authdir is rejecting routers in this range."; return FP_REJECT; } if (inv == ADDR_POLICY_PROBABLY_REJECTED || inv == ADDR_POLICY_REJECTED) { if (should_log) - info(LD_DIRSERV, "Not marking '%s' valid because of address '%s'", - nickname, address); + log_info(LD_DIRSERV, "Not marking '%s' valid because of address '%s'", + nickname, address); return FP_INVALID; } if (should_log) - debug(LD_DIRSERV,"No fingerprint found for '%s'",nickname); + log_debug(LD_DIRSERV,"No fingerprint found for '%s'",nickname); if (!platform || tor_version_as_new_as(platform,"0.1.0.2-rc")) return reject_unlisted ? FP_REJECT : FP_VALID; else @@ -339,16 +343,16 @@ dirserv_get_status_impl(const char *fp, const char *nickname, } if (0==strcasecmp(nn_ent->fingerprint, fp)) { if (should_log) - debug(LD_DIRSERV,"Good fingerprint for '%s'",nickname); + log_debug(LD_DIRSERV,"Good fingerprint for '%s'",nickname); return FP_NAMED; /* Right fingerprint. */ } else { if (should_log) - warn(LD_DIRSERV, - "Mismatched fingerprint for '%s': expected '%s' got '%s'. " - "ContactInfo '%s', platform '%s'.)", - nickname, nn_ent->fingerprint, fp, - contact ? contact : "", - platform ? platform : ""); + log_warn(LD_DIRSERV, + "Mismatched fingerprint for '%s': expected '%s' got '%s'. " + "ContactInfo '%s', platform '%s'.)", + nickname, nn_ent->fingerprint, fp, + contact ? contact : "", + platform ? platform : ""); if (msg) *msg = "Rejected: There is already a verified server with this nickname " "and a different fingerprint."; @@ -406,14 +410,14 @@ dirserv_router_has_valid_address(routerinfo_t *ri) if (get_options()->DirAllowPrivateAddresses) return 0; /* whatever it is, we're fine with it */ if (!tor_inet_aton(ri->address, &iaddr)) { - info(LD_DIRSERV,"Router '%s' published non-IP address '%s'. Refusing.", - ri->nickname, ri->address); + log_info(LD_DIRSERV,"Router '%s' published non-IP address '%s'. Refusing.", + ri->nickname, ri->address); return -1; } if (is_internal_IP(ntohl(iaddr.s_addr), 0)) { - info(LD_DIRSERV, - "Router '%s' published internal IP address '%s'. Refusing.", - ri->nickname, ri->address); + log_info(LD_DIRSERV, + "Router '%s' published internal IP address '%s'. Refusing.", + ri->nickname, ri->address); return -1; /* it's a private IP, we should reject it */ } return 0; @@ -514,7 +518,7 @@ dirserv_add_descriptor(const char *desc, const char **msg) /* Check: is the descriptor syntactically valid? */ ri = router_parse_entry_from_string(desc, NULL); if (!ri) { - warn(LD_DIRSERV, "Couldn't parse uploaded server descriptor"); + log_warn(LD_DIRSERV, "Couldn't parse uploaded server descriptor"); *msg = "Rejected: Couldn't parse server descriptor."; return -2; } @@ -526,9 +530,9 @@ dirserv_add_descriptor(const char *desc, const char **msg) if (ri_old && ri_old->cache_info.published_on < ri->cache_info.published_on && router_differences_are_cosmetic(ri_old, ri) && !router_is_me(ri)) { - info(LD_DIRSERV, - "Not replacing descriptor from '%s'; differences are cosmetic.", - ri->nickname); + log_info(LD_DIRSERV, + "Not replacing descriptor from '%s'; differences are cosmetic.", + ri->nickname); *msg = "Not replacing router descriptor; no information has changed since " "the last one with this identity."; routerinfo_free(ri); @@ -572,22 +576,22 @@ directory_remove_invalid(void) router_status_t r = dirserv_router_get_status(ent, &msg); switch (r) { case FP_REJECT: - info(LD_DIRSERV, "Router '%s' is now rejected: %s", - ent->nickname, msg?msg:""); + log_info(LD_DIRSERV, "Router '%s' is now rejected: %s", + ent->nickname, msg?msg:""); routerlist_remove(rl, ent, i--, 0); changed = 1; break; case FP_NAMED: if (!ent->is_verified || !ent->is_named) { - info(LD_DIRSERV, - "Router '%s' is now verified and named.", ent->nickname); + log_info(LD_DIRSERV, + "Router '%s' is now verified and named.", ent->nickname); ent->is_verified = ent->is_named = 1; changed = 1; } break; case FP_VALID: if (!ent->is_verified || ent->is_named) { - info(LD_DIRSERV, "Router '%s' is now verified.", ent->nickname); + log_info(LD_DIRSERV, "Router '%s' is now verified.", ent->nickname); ent->is_verified = 1; ent->is_named = 0; changed = 1; @@ -595,8 +599,8 @@ directory_remove_invalid(void) break; case FP_INVALID: if (ent->is_verified || ent->is_named) { - info(LD_DIRSERV, - "Router '%s' is no longer verified.", ent->nickname); + log_info(LD_DIRSERV, + "Router '%s' is no longer verified.", ent->nickname); ent->is_verified = ent->is_named = 0; changed = 1; } @@ -812,7 +816,7 @@ dirserv_dump_directory_to_string(char **dir_out, if (crypto_pk_write_public_key_to_string(private_key,&identity_pkey, &identity_pkey_len)<0) { - warn(LD_BUG,"write identity_pkey to string failed!"); + log_warn(LD_BUG,"write identity_pkey to string failed!"); return -1; } @@ -870,7 +874,7 @@ dirserv_dump_directory_to_string(char **dir_out, goto truncated; if (router_get_dir_hash(buf,digest)) { - warn(LD_BUG,"couldn't compute digest"); + log_warn(LD_BUG,"couldn't compute digest"); tor_free(buf); return -1; } @@ -882,7 +886,7 @@ dirserv_dump_directory_to_string(char **dir_out, *dir_out = buf; return 0; truncated: - warn(LD_BUG,"tried to exceed string length."); + log_warn(LD_BUG,"tried to exceed string length."); tor_free(buf); return -1; } @@ -910,21 +914,21 @@ set_cached_dir(cached_dir_t *d, char *directory, time_t when) { time_t now = time(NULL); if (when<=d->published) { - info(LD_DIRSERV, "Ignoring old directory; not caching."); + log_info(LD_DIRSERV, "Ignoring old directory; not caching."); tor_free(directory); } else if (when>=now+ROUTER_MAX_AGE) { - info(LD_DIRSERV, "Ignoring future directory; not caching."); + log_info(LD_DIRSERV, "Ignoring future directory; not caching."); tor_free(directory); } else { /* if (when>d->published && whendir); d->dir = directory; d->dir_len = strlen(directory); tor_free(d->dir_z); if (tor_gzip_compress(&(d->dir_z), &(d->dir_z_len), d->dir, d->dir_len, ZLIB_METHOD)) { - warn(LD_BUG,"Error compressing cached directory"); + log_warn(LD_BUG,"Error compressing cached directory"); } d->published = when; } @@ -1043,11 +1047,11 @@ dirserv_pick_cached_dir_obj(cached_dir_t *cache_src, if (regenerate != NULL) { if (dirty && dirty + DIR_REGEN_SLACK_TIME < time(NULL)) { if (regenerate()) { - err(LD_BUG, "Couldn't generate %s?", name); + log_err(LD_BUG, "Couldn't generate %s?", name); exit(1); } } else { - info(LD_DIRSERV, "The %s is still clean; reusing.", name); + log_info(LD_DIRSERV, "The %s is still clean; reusing.", name); } } return auth_src ? auth_src : cache_src; @@ -1111,15 +1115,15 @@ dirserv_regenerate_directory(void) if (dirserv_dump_directory_to_string(&new_directory, get_identity_key())) { - warn(LD_BUG, "Error creating directory."); + log_warn(LD_BUG, "Error creating directory."); tor_free(new_directory); return -1; } set_cached_dir(&the_directory, new_directory, time(NULL)); - info(LD_DIRSERV,"New directory (size %d) has been built.", - (int)the_directory.dir_len); - debug(LD_DIRSERV,"New directory (size %d):\n%s",(int)the_directory.dir_len, - the_directory.dir); + log_info(LD_DIRSERV,"New directory (size %d) has been built.", + (int)the_directory.dir_len); + log_debug(LD_DIRSERV,"New directory (size %d):\n%s", + (int)the_directory.dir_len, the_directory.dir); the_directory_is_dirty = 0; @@ -1152,7 +1156,7 @@ generate_runningrouters(void) } if (crypto_pk_write_public_key_to_string(private_key,&identity_pkey, &identity_pkey_len)<0) { - warn(LD_BUG,"write identity_pkey to string failed!"); + log_warn(LD_BUG,"write identity_pkey to string failed!"); goto err; } format_iso_time(published, time(NULL)); @@ -1170,7 +1174,7 @@ generate_runningrouters(void) tor_free(router_status); tor_free(identity_pkey); if (router_get_runningrouters_hash(s,digest)) { - warn(LD_BUG,"couldn't compute digest"); + log_warn(LD_BUG,"couldn't compute digest"); goto err; } if (router_append_dirobj_signature(s, len, digest, private_key)<0) @@ -1286,7 +1290,7 @@ dirserv_compute_stable_uptime(routerlist_t *rl) stable_uptime = *(long *)smartlist_get(uptimes, smartlist_len(uptimes)/2); - info(LD_DIRSERV, "Uptime cutoff is %ld seconds.", stable_uptime); + log_info(LD_DIRSERV, "Uptime cutoff is %ld seconds.", stable_uptime); SMARTLIST_FOREACH(uptimes, long *, up, tor_free(up)); smartlist_free(uptimes); @@ -1328,7 +1332,7 @@ generate_v2_networkstatus(void) const char *contact; if (resolve_my_address(options, &addr, &hostname)<0) { - warn(LD_NET, "Couldn't resolve my hostname"); + log_warn(LD_NET, "Couldn't resolve my hostname"); goto done; } in.s_addr = htonl(addr); @@ -1341,12 +1345,12 @@ generate_v2_networkstatus(void) if (crypto_pk_write_public_key_to_string(private_key, &identity_pkey, &identity_pkey_len)<0) { - warn(LD_BUG,"Writing public key to string failed."); + log_warn(LD_BUG,"Writing public key to string failed."); goto done; } if (crypto_pk_get_fingerprint(private_key, fingerprint, 0)<0) { - err(LD_BUG, "Error computing fingerprint"); + log_err(LD_BUG, "Error computing fingerprint"); goto done; } @@ -1436,7 +1440,7 @@ generate_v2_networkstatus(void) f_running?" Running":"", f_valid?" Valid":"", f_v2_dir?" V2Dir":"")<0) { - warn(LD_BUG, "Unable to print router status."); + log_warn(LD_BUG, "Unable to print router status."); goto done; } outp += strlen(outp); @@ -1445,17 +1449,17 @@ generate_v2_networkstatus(void) if (tor_snprintf(outp, endp-outp, "directory-signature %s\n", get_options()->Nickname)<0) { - warn(LD_BUG, "Unable to write signature line."); + log_warn(LD_BUG, "Unable to write signature line."); goto done; } if (router_get_networkstatus_v2_hash(status, digest)<0) { - warn(LD_BUG, "Unable to hash network status"); + log_warn(LD_BUG, "Unable to hash network status"); goto done; } if (router_append_dirobj_signature(outp,endp-outp,digest,private_key)<0) { - warn(LD_BUG, "Unable to sign router status."); + log_warn(LD_BUG, "Unable to sign router status."); goto done; } @@ -1503,7 +1507,8 @@ dirserv_get_networkstatus_v2(smartlist_t *result, if (d) smartlist_add(result, d); else - warn(LD_BUG,"Unable to generate an authoritative network status."); + log_warn(LD_BUG, + "Unable to generate an authoritative network status."); } } else if (!strcmp(key, "all")) { digestmap_iter_t *iter; @@ -1518,8 +1523,8 @@ dirserv_get_networkstatus_v2(smartlist_t *result, iter = digestmap_iter_next(cached_v2_networkstatus, iter); } if (smartlist_len(result) == 0) - warn(LD_DIRSERV, - "Client requested 'all' network status objects; we have none."); + log_warn(LD_DIRSERV, + "Client requested 'all' network status objects; we have none."); } else if (!strcmpstart(key, "fp/")) { smartlist_t *digests = smartlist_create(); dir_split_resource_into_fingerprints(key+3, digests, NULL, 1); @@ -1534,8 +1539,8 @@ dirserv_get_networkstatus_v2(smartlist_t *result, } else { char hexbuf[HEX_DIGEST_LEN+1]; base16_encode(hexbuf, sizeof(hexbuf), cp, DIGEST_LEN); - info(LD_DIRSERV, "Don't know about any network status with " - "fingerprint '%s'", hexbuf); + log_info(LD_DIRSERV, "Don't know about any network status with " + "fingerprint '%s'", hexbuf); } tor_free(cp); }); @@ -1651,15 +1656,17 @@ dirserv_orconn_tls_done(const char *address, if (!ri->is_verified) { /* We have a router at the same address! */ if (strcasecmp(ri->nickname, nickname_rcvd)) { - notice(LD_DIRSERV, "Dropping descriptor: nickname '%s' does not match " - "nickname '%s' in cert from %s:%d", - ri->nickname, nickname_rcvd, address, or_port); + log_notice(LD_DIRSERV, + "Dropping descriptor: nickname '%s' does not match " + "nickname '%s' in cert from %s:%d", + ri->nickname, nickname_rcvd, address, or_port); drop = 1; } else if (memcmp(ri->cache_info.identity_digest, digest_rcvd, DIGEST_LEN)) { - notice(LD_DIRSERV, "Dropping descriptor: identity key does not match " - "key in cert from %s:%d", - address, or_port); + log_notice(LD_DIRSERV, + "Dropping descriptor: identity key does not match " + "key in cert from %s:%d", + address, or_port); drop = 1; } } @@ -1667,7 +1674,8 @@ dirserv_orconn_tls_done(const char *address, routerlist_remove(rl, ri, i--, 0); directory_set_dirty(); } else { /* correct nickname and digest. mark this router reachable! */ - info(LD_DIRSERV,"Found router %s to be reachable. Yay.", ri->nickname); + log_info(LD_DIRSERV, "Found router %s to be reachable. Yay.", + ri->nickname); ri->last_reachable = time(NULL); ri->num_unreachable_notifications = 0; } diff --git a/src/or/dns.c b/src/or/dns.c index e431294905..cf7f8c709f 100644 --- a/src/or/dns.c +++ b/src/or/dns.c @@ -160,15 +160,18 @@ purge_expired_resolves(uint32_t now) */ while (oldest_cached_resolve && (oldest_cached_resolve->expire < now)) { resolve = oldest_cached_resolve; - debug(LD_EXIT,"Forgetting old cached resolve (address %s, expires %lu)", - safe_str(resolve->address), (unsigned long)resolve->expire); + log_debug(LD_EXIT, + "Forgetting old cached resolve (address %s, expires %lu)", + safe_str(resolve->address), (unsigned long)resolve->expire); if (resolve->state == CACHE_STATE_PENDING) { - debug(LD_EXIT,"Bug: Expiring a dns resolve ('%s') that's still pending." - " Forgot to cull it?", safe_str(resolve->address)); + log_debug(LD_EXIT, + "Bug: Expiring a dns resolve ('%s') that's still pending." + " Forgot to cull it?", safe_str(resolve->address)); tor_fragile_assert(); } if (resolve->pending_connections) { - debug(LD_EXIT, "Closing pending connections on expiring DNS resolve!"); + log_debug(LD_EXIT, + "Closing pending connections on expiring DNS resolve!"); tor_fragile_assert(); while (resolve->pending_connections) { pend = resolve->pending_connections; @@ -296,21 +299,21 @@ dns_resolve(connection_t *exitconn) pending_connection->conn = exitconn; pending_connection->next = resolve->pending_connections; resolve->pending_connections = pending_connection; - debug(LD_EXIT,"Connection (fd %d) waiting for pending DNS " - "resolve of '%s'", - exitconn->s, safe_str(exitconn->address)); + log_debug(LD_EXIT,"Connection (fd %d) waiting for pending DNS " + "resolve of '%s'", + exitconn->s, safe_str(exitconn->address)); exitconn->state = EXIT_CONN_STATE_RESOLVING; return 0; case CACHE_STATE_VALID: exitconn->addr = resolve->addr; - debug(LD_EXIT,"Connection (fd %d) found cached answer for '%s'", - exitconn->s, safe_str(exitconn->address)); + log_debug(LD_EXIT,"Connection (fd %d) found cached answer for '%s'", + exitconn->s, safe_str(exitconn->address)); if (exitconn->purpose == EXIT_PURPOSE_RESOLVE) send_resolved_cell(exitconn, RESOLVED_TYPE_IPV4); return 1; case CACHE_STATE_FAILED: - debug(LD_EXIT,"Connection (fd %d) found cached error for '%s'", - exitconn->s, safe_str(exitconn->address)); + log_debug(LD_EXIT,"Connection (fd %d) found cached error for '%s'", + exitconn->s, safe_str(exitconn->address)); if (exitconn->purpose == EXIT_PURPOSE_RESOLVE) send_resolved_cell(exitconn, RESOLVED_TYPE_ERROR); circ = circuit_get_by_edge_conn(exitconn); @@ -359,16 +362,16 @@ assign_to_dnsworker(connection_t *exitconn) DNSWORKER_STATE_IDLE); if (!dnsconn) { - warn(LD_EXIT,"no idle dns workers. Failing."); + log_warn(LD_EXIT,"no idle dns workers. Failing."); if (exitconn->purpose == EXIT_PURPOSE_RESOLVE) send_resolved_cell(exitconn, RESOLVED_TYPE_ERROR_TRANSIENT); goto err; } - debug(LD_EXIT, - "Connection (fd %d) needs to resolve '%s'; assigning " - "to DNSWorker (fd %d)", - exitconn->s, safe_str(exitconn->address), dnsconn->s); + log_debug(LD_EXIT, + "Connection (fd %d) needs to resolve '%s'; assigning " + "to DNSWorker (fd %d)", + exitconn->s, safe_str(exitconn->address), dnsconn->s); tor_free(dnsconn->address); dnsconn->address = tor_strdup(exitconn->address); @@ -402,8 +405,8 @@ connection_dns_remove(connection_t *conn) resolve = HT_FIND(cache_map, &cache_root, &search); if (!resolve) { /* XXXX RD This *is* a bug, right? -NM */ - notice(LD_BUG, "Address '%s' is not pending. Dropping.", - safe_str(conn->address)); + log_notice(LD_BUG, "Address '%s' is not pending. Dropping.", + safe_str(conn->address)); return; } @@ -415,9 +418,9 @@ connection_dns_remove(connection_t *conn) if (pend->conn == conn) { resolve->pending_connections = pend->next; tor_free(pend); - debug(LD_EXIT, "First connection (fd %d) no longer waiting for resolve " - "of '%s'", - conn->s, safe_str(conn->address)); + log_debug(LD_EXIT, "First connection (fd %d) no longer waiting " + "for resolve of '%s'", + conn->s, safe_str(conn->address)); return; } else { for ( ; pend->next; pend = pend->next) { @@ -425,9 +428,9 @@ connection_dns_remove(connection_t *conn) victim = pend->next; pend->next = victim->next; tor_free(victim); - debug(LD_EXIT, "Connection (fd %d) no longer waiting for resolve " - "of '%s'", - conn->s, safe_str(conn->address)); + log_debug(LD_EXIT, + "Connection (fd %d) no longer waiting for resolve of '%s'", + conn->s, safe_str(conn->address)); return; /* more are pending */ } } @@ -489,22 +492,25 @@ dns_cancel_pending_resolve(char *address) resolve = HT_FIND(cache_map, &cache_root, &search); if (!resolve) { /* XXXX RD This *is* a bug, right? -NM */ - notice(LD_BUG,"Address '%s' is not pending. Dropping.", safe_str(address)); + log_notice(LD_BUG,"Address '%s' is not pending. Dropping.", + safe_str(address)); return; } if (!resolve->pending_connections) { /* XXX this should never trigger, but sometimes it does */ - warn(LD_BUG,"Bug: Address '%s' is pending but has no pending connections!", - safe_str(address)); + log_warn(LD_BUG, + "Bug: Address '%s' is pending but has no pending connections!", + safe_str(address)); tor_fragile_assert(); return; } tor_assert(resolve->pending_connections); /* mark all pending connections to fail */ - debug(LD_EXIT, "Failing all connections waiting on DNS resolve of '%s'", - safe_str(address)); + log_debug(LD_EXIT, + "Failing all connections waiting on DNS resolve of '%s'", + safe_str(address)); while (resolve->pending_connections) { pend = resolve->pending_connections; pend->conn->state = EXIT_CONN_STATE_RESOLVEFAILED; @@ -575,8 +581,8 @@ dns_found_answer(char *address, uint32_t addr, char outcome) resolve = HT_FIND(cache_map, &cache_root, &search); if (!resolve) { - info(LD_EXIT,"Resolved unasked address '%s'; caching anyway.", - safe_str(address)); + log_info(LD_EXIT,"Resolved unasked address '%s'; caching anyway.", + safe_str(address)); resolve = tor_malloc_zero(sizeof(cached_resolve_t)); resolve->state = (outcome == DNS_RESOLVE_SUCCEEDED) ? CACHE_STATE_VALID : CACHE_STATE_FAILED; @@ -589,8 +595,8 @@ dns_found_answer(char *address, uint32_t addr, char outcome) if (resolve->state != CACHE_STATE_PENDING) { /* XXXX Maybe update addr? or check addr for consistency? Or let * VALID replace FAILED? */ - notice(LD_EXIT, "Resolved '%s' which was already resolved; ignoring", - safe_str(address)); + log_notice(LD_EXIT, "Resolved '%s' which was already resolved; ignoring", + safe_str(address)); tor_assert(resolve->pending_connections == NULL); return; } @@ -681,7 +687,7 @@ connection_dns_finished_flushing(connection_t *conn) int connection_dns_reached_eof(connection_t *conn) { - warn(LD_EXIT,"Read eof. Worker died unexpectedly."); + log_warn(LD_EXIT,"Read eof. Worker died unexpectedly."); if (conn->state == DNSWORKER_STATE_BUSY) { /* don't cancel the resolve here -- it would be cancelled in * connection_about_to_close_connection(), since conn is still @@ -707,9 +713,10 @@ connection_dns_process_inbuf(connection_t *conn) tor_assert(conn->type == CONN_TYPE_DNSWORKER); if (conn->state != DNSWORKER_STATE_BUSY && buf_datalen(conn->inbuf)) { - warn(LD_BUG,"Bug: read data (%d bytes) from an idle dns worker (fd %d, " - "address '%s'). Please report.", - (int)buf_datalen(conn->inbuf), conn->s, safe_str(conn->address)); + log_warn(LD_BUG, + "Bug: read data (%d bytes) from an idle dns worker (fd %d, " + "address '%s'). Please report.", + (int)buf_datalen(conn->inbuf), conn->s, safe_str(conn->address)); tor_fragile_assert(); /* Pull it off the buffer anyway, or it will just stay there. @@ -718,8 +725,8 @@ connection_dns_process_inbuf(connection_t *conn) while (buf_datalen(conn->inbuf)) { connection_fetch_from_buf(&success,1,conn); connection_fetch_from_buf((char *)&addr,sizeof(uint32_t),conn); - warn(LD_EXIT,"Discarding idle dns answer (success %d, addr %d.)", - success, addr); // XXX safe_str + log_warn(LD_EXIT,"Discarding idle dns answer (success %d, addr %d.)", + success, addr); // XXX safe_str } return 0; } @@ -731,8 +738,8 @@ connection_dns_process_inbuf(connection_t *conn) connection_fetch_from_buf(&success,1,conn); connection_fetch_from_buf((char *)&addr,sizeof(uint32_t),conn); - debug(LD_EXIT, "DNSWorker (fd %d) returned answer for '%s'", - conn->s, safe_str(conn->address)); + log_debug(LD_EXIT, "DNSWorker (fd %d) returned answer for '%s'", + conn->s, safe_str(conn->address)); tor_assert(success >= DNS_RESOLVE_FAILED_TRANSIENT); tor_assert(success <= DNS_RESOLVE_SUCCEEDED); @@ -812,13 +819,13 @@ dnsworker_main(void *data) if ((r = recv(fd, &address_len, 1, 0)) != 1) { if (r == 0) { - info(LD_EXIT,"DNS worker exiting because Tor process closed " - "connection (either pruned idle dnsworker or died)."); + log_info(LD_EXIT,"DNS worker exiting because Tor process closed " + "connection (either pruned idle dnsworker or died)."); } else { - info(LD_EXIT,"DNS worker exiting because of error on connection " - "to Tor process."); - info(LD_EXIT,"(Error on %d was %s)", fd, - tor_socket_strerror(tor_socket_errno(fd))); + log_info(LD_EXIT,"DNS worker exiting because of error on connection " + "to Tor process."); + log_info(LD_EXIT,"(Error on %d was %s)", fd, + tor_socket_strerror(tor_socket_errno(fd))); } tor_close_socket(fd); crypto_thread_cleanup(); @@ -826,7 +833,7 @@ dnsworker_main(void *data) } if (address_len && read_all(fd, address, address_len, 1) != address_len) { - err(LD_BUG,"read hostname failed. Child exiting."); + log_err(LD_BUG,"read hostname failed. Child exiting."); tor_close_socket(fd); crypto_thread_cleanup(); spawn_exit(); @@ -840,23 +847,23 @@ dnsworker_main(void *data) switch (result) { case 1: /* XXX result can never be 1, because we set it to -1 above on error */ - info(LD_NET,"Could not resolve dest addr %s (transient).", - safe_str(address)); + log_info(LD_NET,"Could not resolve dest addr %s (transient).", + safe_str(address)); answer[0] = DNS_RESOLVE_FAILED_TRANSIENT; break; case -1: - info(LD_NET,"Could not resolve dest addr %s (permanent).", - safe_str(address)); + log_info(LD_NET,"Could not resolve dest addr %s (permanent).", + safe_str(address)); answer[0] = DNS_RESOLVE_FAILED_PERMANENT; break; case 0: - info(LD_NET,"Resolved address '%s'.",safe_str(address)); + log_info(LD_NET,"Resolved address '%s'.",safe_str(address)); answer[0] = DNS_RESOLVE_SUCCEEDED; break; } set_uint32(answer+1, ip); if (write_all(fd, answer, 5, 1) != 5) { - err(LD_NET,"writing answer failed. Child exiting."); + log_err(LD_NET,"writing answer failed. Child exiting."); tor_close_socket(fd); crypto_thread_cleanup(); spawn_exit(); @@ -877,8 +884,8 @@ spawn_dnsworker(void) fdarray = tor_malloc(sizeof(int)*2); if ((err = tor_socketpair(AF_UNIX, SOCK_STREAM, 0, fdarray)) < 0) { - warn(LD_NET, "Couldn't construct socketpair: %s", - tor_socket_strerror(-err)); + log_warn(LD_NET, "Couldn't construct socketpair: %s", + tor_socket_strerror(-err)); tor_free(fdarray); return -1; } @@ -889,7 +896,7 @@ spawn_dnsworker(void) fd = fdarray[0]; /* We copy this out here, since dnsworker_main may free * fdarray */ spawn_func(dnsworker_main, (void*)fdarray); - debug(LD_EXIT,"just spawned a dns worker."); + log_debug(LD_EXIT,"just spawned a dns worker."); #ifndef TOR_IS_MULTITHREADED tor_close_socket(fdarray[1]); /* don't need the worker's side of the pipe */ tor_free(fdarray); @@ -904,7 +911,7 @@ spawn_dnsworker(void) conn->address = tor_strdup(""); if (connection_add(conn) < 0) { /* no space, forget it */ - warn(LD_NET,"connection_add failed. Giving up."); + log_warn(LD_NET,"connection_add failed. Giving up."); connection_free(conn); /* this closes fd */ return -1; } @@ -943,8 +950,8 @@ spawn_enough_dnsworkers(void) DNSWORKER_STATE_BUSY); tor_assert(dnsconn); - warn(LD_EXIT, "%d DNS workers are spawned; all are busy. Killing one.", - MAX_DNSWORKERS); + log_warn(LD_EXIT, "%d DNS workers are spawned; all are busy. Killing one.", + MAX_DNSWORKERS); connection_mark_for_close(dnsconn); num_dnsworkers_busy--; @@ -958,7 +965,7 @@ spawn_enough_dnsworkers(void) while (num_dnsworkers < num_dnsworkers_needed) { if (spawn_dnsworker() < 0) { - warn(LD_EXIT,"Spawn failed. Will try again later."); + log_warn(LD_EXIT,"Spawn failed. Will try again later."); return -1; } num_dnsworkers++; @@ -967,8 +974,8 @@ spawn_enough_dnsworkers(void) while (num_dnsworkers > num_dnsworkers_busy+MAX_IDLE_DNSWORKERS) { /* too many idle? */ /* cull excess workers */ - info(LD_EXIT,"%d of %d dnsworkers are idle. Killing one.", - num_dnsworkers-num_dnsworkers_busy, num_dnsworkers); + log_info(LD_EXIT,"%d of %d dnsworkers are idle. Killing one.", + num_dnsworkers-num_dnsworkers_busy, num_dnsworkers); dnsconn = connection_get_by_type_state(CONN_TYPE_DNSWORKER, DNSWORKER_STATE_IDLE); tor_assert(dnsconn); diff --git a/src/or/hibernate.c b/src/or/hibernate.c index aa26dca75d..ffd06a96b3 100644 --- a/src/or/hibernate.c +++ b/src/or/hibernate.c @@ -129,7 +129,7 @@ accounting_parse_options(or_options_t *options, int validate_only) smartlist_split_string(items, v, NULL, SPLIT_SKIP_SPACE|SPLIT_IGNORE_BLANK,0); if (smartlist_len(items)<2) { - warn(LD_CONFIG, "Too few arguments to AccountingStart"); + log_warn(LD_CONFIG, "Too few arguments to AccountingStart"); goto err; } s = smartlist_get(items,0); @@ -140,8 +140,9 @@ accounting_parse_options(or_options_t *options, int validate_only) } else if (0==strcasecmp(s, "day")) { unit = UNIT_DAY; } else { - warn(LD_CONFIG, "Unrecognized accounting unit '%s': only 'month', 'week'," - " and 'day' are supported.", s); + log_warn(LD_CONFIG, + "Unrecognized accounting unit '%s': only 'month', 'week'," + " and 'day' are supported.", s); goto err; } @@ -149,16 +150,16 @@ accounting_parse_options(or_options_t *options, int validate_only) case UNIT_WEEK: d = tor_parse_long(smartlist_get(items,1), 10, 1, 7, &ok, NULL); if (!ok) { - warn(LD_CONFIG, "Weekly accounting must begin on a day between " - "1 (Monday) and 7 (Sunday)"); + log_warn(LD_CONFIG, "Weekly accounting must begin on a day between " + "1 (Monday) and 7 (Sunday)"); goto err; } break; case UNIT_MONTH: d = tor_parse_long(smartlist_get(items,1), 10, 1, 28, &ok, NULL); if (!ok) { - warn(LD_CONFIG, "Monthly accounting must begin on a day between " - "1 and 28"); + log_warn(LD_CONFIG, "Monthly accounting must begin on a day between " + "1 and 28"); goto err; } break; @@ -171,27 +172,29 @@ accounting_parse_options(or_options_t *options, int validate_only) idx = unit==UNIT_DAY?1:2; if (smartlist_len(items) != (idx+1)) { - warn(LD_CONFIG,"Accounting unit '%s' requires %d argument%s.", - s, idx, (idx>1)?"s":""); + log_warn(LD_CONFIG,"Accounting unit '%s' requires %d argument%s.", + s, idx, (idx>1)?"s":""); goto err; } s = smartlist_get(items, idx); h = tor_parse_long(s, 10, 0, 23, &ok, &cp); if (!ok) { - warn(LD_CONFIG,"Accounting start time not parseable: bad hour."); + log_warn(LD_CONFIG,"Accounting start time not parseable: bad hour."); goto err; } if (!cp || *cp!=':') { - warn(LD_CONFIG,"Accounting start time not parseable: not in HH:MM format"); + log_warn(LD_CONFIG, + "Accounting start time not parseable: not in HH:MM format"); goto err; } m = tor_parse_long(cp+1, 10, 0, 59, &ok, &cp); if (!ok) { - warn(LD_CONFIG, "Accounting start time not parseable: bad minute"); + log_warn(LD_CONFIG, "Accounting start time not parseable: bad minute"); goto err; } if (!cp || *cp!='\0') { - warn(LD_CONFIG,"Accounting start time not parseable: not in HH:MM format"); + log_warn(LD_CONFIG, + "Accounting start time not parseable: not in HH:MM format"); goto err; } @@ -325,15 +328,16 @@ configure_accounting(time_t now) start_of_accounting_period_after(interval_start_time) <= now) { /* We didn't have recorded usage, or we don't have recorded usage * for this interval. Start a new interval. */ - info(LD_ACCT, "Starting new accounting interval."); + log_info(LD_ACCT, "Starting new accounting interval."); reset_accounting(now); } else if (interval_start_time == start_of_accounting_period_containing(interval_start_time)) { - info(LD_ACCT, "Continuing accounting interval."); + log_info(LD_ACCT, "Continuing accounting interval."); /* We are in the interval we thought we were in. Do nothing.*/ interval_end_time = start_of_accounting_period_after(interval_start_time); } else { - warn(LD_ACCT, "Mismatched accounting interval; starting a fresh one."); + log_warn(LD_ACCT, + "Mismatched accounting interval; starting a fresh one."); reset_accounting(now); } accounting_set_wakeup_time(); @@ -374,7 +378,7 @@ update_expected_bandwidth(void) static void reset_accounting(time_t now) { - info(LD_ACCT, "Starting new accounting interval."); + log_info(LD_ACCT, "Starting new accounting interval."); update_expected_bandwidth(); interval_start_time = start_of_accounting_period_containing(now); interval_end_time = start_of_accounting_period_after(interval_start_time); @@ -417,7 +421,7 @@ accounting_run_housekeeping(time_t now) } if (time_to_record_bandwidth_usage(now)) { if (accounting_record_bandwidth_usage(now)) { - err(LD_FS, "Couldn't record bandwidth usage to disk; exiting."); + log_err(LD_FS, "Couldn't record bandwidth usage to disk; exiting."); /* This can fail when we're out of fd's, causing a crash. * The current answer is to reserve 32 more than we need, in * set_max_file_descriptors(). */ @@ -440,7 +444,7 @@ accounting_set_wakeup_time(void) if (! identity_key_is_set()) { if (init_keys() < 0) { - err(LD_BUG, "Error initializing keys"); + log_err(LD_BUG, "Error initializing keys"); tor_assert(0); } } @@ -462,7 +466,8 @@ accounting_set_wakeup_time(void) time_to_exhaust_bw = 24*60*60; interval_wakeup_time = interval_start_time; - notice(LD_ACCT, "Configured hibernation. This interval begins at %s " + log_notice(LD_ACCT, + "Configured hibernation. This interval begins at %s " "and ends at %s. We have no prior estimate for bandwidth, so " "we will start out awake and hibernate when we exhaust our quota.", buf1, buf2); @@ -504,7 +509,8 @@ accounting_set_wakeup_time(void) down_timetype); + log_info(LD_NET,"Closing listener type %d", conn->type); connection_mark_for_close(conn); } @@ -693,8 +700,8 @@ hibernate_begin(int new_state, time_t now) /* XXX upload rendezvous service descriptors with no intro points */ if (new_state == HIBERNATE_STATE_EXITING) { - notice(LD_GENERAL,"Interrupt: will shut down in %d seconds. Interrupt " - "again to exit now.", options->ShutdownWaitLength); + log_notice(LD_GENERAL,"Interrupt: will shut down in %d seconds. Interrupt " + "again to exit now.", options->ShutdownWaitLength); hibernate_end_time = time(NULL) + options->ShutdownWaitLength; } else { /* soft limit reached */ hibernate_end_time = interval_end_time; @@ -712,7 +719,7 @@ hibernate_end(int new_state) hibernate_state == HIBERNATE_STATE_DORMANT); /* listeners will be relaunched in run_scheduled_events() in main.c */ - notice(LD_ACCT,"Hibernation period ended. Resuming normal activity."); + log_notice(LD_ACCT,"Hibernation period ended. Resuming normal activity."); hibernate_state = new_state; hibernate_end_time = 0; /* no longer hibernating */ @@ -747,7 +754,7 @@ hibernate_go_dormant(time_t now) else hibernate_begin(HIBERNATE_STATE_DORMANT, now); - notice(LD_ACCT,"Going dormant. Blowing away remaining connections."); + log_notice(LD_ACCT,"Going dormant. Blowing away remaining connections."); /* Close all OR/AP/exit conns. Leave dir conns because we still want * to be able to upload server descriptors so people know we're still @@ -760,7 +767,7 @@ hibernate_go_dormant(time_t now) if (CONN_IS_EDGE(conn)) connection_edge_end(conn, END_STREAM_REASON_HIBERNATING, conn->cpath_layer); - info(LD_NET,"Closing conn type %d", conn->type); + log_info(LD_NET,"Closing conn type %d", conn->type); if (conn->type == CONN_TYPE_AP) /* send socks failure if needed */ connection_mark_unattached_ap(conn, END_STREAM_REASON_HIBERNATING); else @@ -789,11 +796,13 @@ hibernate_end_time_elapsed(time_t now) format_iso_time(buf,interval_wakeup_time); if (hibernate_state != HIBERNATE_STATE_DORMANT) { /* We weren't sleeping before; we should sleep now. */ - notice(LD_ACCT, "Accounting period ended. Commencing hibernation until " - "%s GMT",buf); + log_notice(LD_ACCT, + "Accounting period ended. Commencing hibernation until " + "%s GMT", buf); hibernate_go_dormant(now); } else { - notice(LD_ACCT, "Accounting period ended. This period, we will hibernate" + log_notice(LD_ACCT, + "Accounting period ended. This period, we will hibernate" " until %s GMT",buf); } } @@ -813,7 +822,7 @@ consider_hibernation(time_t now) if (hibernate_state == HIBERNATE_STATE_EXITING) { tor_assert(hibernate_end_time); if (hibernate_end_time <= now) { - notice(LD_GENERAL, "Clean shutdown finished. Exiting."); + log_notice(LD_GENERAL, "Clean shutdown finished. Exiting."); tor_cleanup(); exit(0); } @@ -836,11 +845,13 @@ consider_hibernation(time_t now) * go dormant. */ if (hibernate_state == HIBERNATE_STATE_LIVE) { if (hibernate_soft_limit_reached()) { - notice(LD_ACCT,"Bandwidth soft limit reached; commencing hibernation."); + log_notice(LD_ACCT, + "Bandwidth soft limit reached; commencing hibernation."); hibernate_begin(HIBERNATE_STATE_LOWBANDWIDTH, now); } else if (accounting_enabled && now < interval_wakeup_time) { format_iso_time(buf,interval_wakeup_time); - notice(LD_ACCT,"Commencing hibernation. We will wake up at %s GMT",buf); + log_notice(LD_ACCT, + "Commencing hibernation. We will wake up at %s GMT", buf); hibernate_go_dormant(now); } } diff --git a/src/or/main.c b/src/or/main.c index 47da30ee20..d4e33cc719 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -118,8 +118,8 @@ connection_add(connection_t *conn) tor_assert(conn->s >= 0); if (nfds >= get_options()->_ConnLimit-1) { - warn(LD_NET,"Failing because we have %d connections already. Please " - "raise your ulimit -n.", nfds); + log_warn(LD_NET,"Failing because we have %d connections already. Please " + "raise your ulimit -n.", nfds); return -1; } @@ -136,8 +136,8 @@ connection_add(connection_t *conn) nfds++; - debug(LD_NET,"new conn type %s, socket %d, nfds %d.", - conn_type_to_string(conn->type), conn->s, nfds); + log_debug(LD_NET,"new conn type %s, socket %d, nfds %d.", + conn_type_to_string(conn->type), conn->s, nfds); return 0; } @@ -154,8 +154,8 @@ connection_remove(connection_t *conn) tor_assert(conn); tor_assert(nfds>0); - debug(LD_NET,"removing socket %d (type %s), nfds now %d", - conn->s, conn_type_to_string(conn->type), nfds-1); + log_debug(LD_NET,"removing socket %d (type %s), nfds now %d", + conn->s, conn_type_to_string(conn->type), nfds-1); tor_assert(conn->poll_index >= 0); current_index = conn->poll_index; @@ -261,11 +261,11 @@ connection_watch_events(connection_t *conn, short events) } if (r<0) - warn(LD_NET, - "Error from libevent setting read event state for %d to " - "%swatched: %s", - conn->s, (events & EV_READ)?"":"un", - tor_socket_strerror(tor_socket_errno(conn->s))); + log_warn(LD_NET, + "Error from libevent setting read event state for %d to " + "%swatched: %s", + conn->s, (events & EV_READ)?"":"un", + tor_socket_strerror(tor_socket_errno(conn->s))); if (events & EV_WRITE) { r = event_add(conn->write_event, NULL); @@ -274,11 +274,11 @@ connection_watch_events(connection_t *conn, short events) } if (r<0) - warn(LD_NET, - "Error from libevent setting read event state for %d to " - "%swatched: %s", - conn->s, (events & EV_WRITE)?"":"un", - tor_socket_strerror(tor_socket_errno(conn->s))); + log_warn(LD_NET, + "Error from libevent setting read event state for %d to " + "%swatched: %s", + conn->s, (events & EV_WRITE)?"":"un", + tor_socket_strerror(tor_socket_errno(conn->s))); } /** Return true iff conn is listening for read events. */ @@ -297,11 +297,11 @@ connection_stop_reading(connection_t *conn) tor_assert(conn); tor_assert(conn->read_event); - debug(LD_NET,"connection_stop_reading() called."); + log_debug(LD_NET,"connection_stop_reading() called."); if (event_del(conn->read_event)) - warn(LD_NET, "Error from libevent setting read event state for %d " - "to unwatched.", - conn->s); + log_warn(LD_NET, "Error from libevent setting read event state for %d " + "to unwatched.", + conn->s); } /** Tell the main loop to start notifying conn of any read events. */ @@ -312,9 +312,9 @@ connection_start_reading(connection_t *conn) tor_assert(conn->read_event); if (event_add(conn->read_event, NULL)) - warn(LD_NET, "Error from libevent setting read event state for %d " - "to watched.", - conn->s); + log_warn(LD_NET, "Error from libevent setting read event state for %d " + "to watched.", + conn->s); } /** Return true iff conn is listening for write events. */ @@ -334,9 +334,9 @@ connection_stop_writing(connection_t *conn) tor_assert(conn->write_event); if (event_del(conn->write_event)) - warn(LD_NET, "Error from libevent setting write event state for %d " - "to unwatched.", - conn->s); + log_warn(LD_NET, "Error from libevent setting write event state for %d " + "to unwatched.", + conn->s); } @@ -348,9 +348,9 @@ connection_start_writing(connection_t *conn) tor_assert(conn->write_event); if (event_add(conn->write_event, NULL)) - warn(LD_NET, "Error from libevent setting write event state for %d " - "to watched.", - conn->s); + log_warn(LD_NET, "Error from libevent setting write event state for %d " + "to watched.", + conn->s); } /** Close all connections that have been scheduled to get closed */ @@ -376,16 +376,16 @@ conn_read_callback(int fd, short event, void *_conn) { connection_t *conn = _conn; - debug(LD_NET,"socket %d wants to read.",conn->s); + log_debug(LD_NET,"socket %d wants to read.",conn->s); assert_connection_ok(conn, time(NULL)); if (connection_handle_read(conn) < 0) { if (!conn->marked_for_close) { #ifndef MS_WINDOWS - warn(LD_BUG,"Bug: unhandled error on read for %s connection " - "(fd %d); removing", - conn_type_to_string(conn->type), conn->s); + log_warn(LD_BUG,"Bug: unhandled error on read for %s connection " + "(fd %d); removing", + conn_type_to_string(conn->type), conn->s); tor_fragile_assert(); #endif if (CONN_IS_EDGE(conn)) @@ -448,19 +448,19 @@ conn_close_if_marked(int i) assert_connection_ok(conn, time(NULL)); assert_all_pending_dns_resolves_ok(); - debug(LD_NET,"Cleaning up connection (fd %d).",conn->s); + log_debug(LD_NET,"Cleaning up connection (fd %d).",conn->s); if (conn->s >= 0 && connection_wants_to_flush(conn)) { /* s == -1 means it's an incomplete edge connection, or that the socket * has already been closed as unflushable. */ int sz = connection_bucket_write_limit(conn); if (!conn->hold_open_until_flushed) - info(LD_NET, - "Conn (addr %s, fd %d, type %s, state %d) marked, but wants " - "to flush %d bytes. (Marked at %s:%d)", - conn->address, conn->s, conn_type_to_string(conn->type), - conn->state, - (int)conn->outbuf_flushlen, - conn->marked_for_close_file, conn->marked_for_close); + log_info(LD_NET, + "Conn (addr %s, fd %d, type %s, state %d) marked, but wants " + "to flush %d bytes. (Marked at %s:%d)", + conn->address, conn->s, conn_type_to_string(conn->type), + conn->state, + (int)conn->outbuf_flushlen, + conn->marked_for_close_file, conn->marked_for_close); if (connection_speaks_cells(conn)) { if (conn->state == OR_CONN_STATE_OPEN) { retval = flush_buf_tls(conn->tls, conn->outbuf, sz, @@ -516,9 +516,11 @@ directory_all_unreachable(time_t now) while ((conn = connection_get_by_type_state(CONN_TYPE_AP, AP_CONN_STATE_CIRCUIT_WAIT))) { - notice(LD_NET, - "Is your network connection down? Failing connection to '%s:%d'.", - safe_str(conn->socks_request->address), conn->socks_request->port); + log_notice(LD_NET, + "Is your network connection down? " + "Failing connection to '%s:%d'.", + safe_str(conn->socks_request->address), + conn->socks_request->port); connection_mark_unattached_ap(conn, END_STREAM_REASON_NET_UNREACHABLE); } } @@ -602,14 +604,14 @@ run_connection_housekeeping(int i, time_t now) /* Expire any directory connections that haven't sent anything for 5 min */ if (conn->type == CONN_TYPE_DIR && conn->timestamp_lastwritten + 5*60 < now) { - info(LD_DIR,"Expiring wedged directory conn (fd %d, purpose %d)", - conn->s, conn->purpose); + log_info(LD_DIR,"Expiring wedged directory conn (fd %d, purpose %d)", + conn->s, conn->purpose); /* This check is temporary; it's to let us know whether we should consider * parsing partial serverdesc responses. */ if (conn->purpose == DIR_PURPOSE_FETCH_SERVERDESC && buf_datalen(conn->inbuf)>=1024) { - info(LD_DIR,"Trying to extract information from wedged server desc " - "download."); + log_info(LD_DIR,"Trying to extract information from wedged server desc " + "download."); connection_dir_reached_eof(conn); } else { connection_mark_for_close(conn); @@ -623,18 +625,20 @@ run_connection_housekeeping(int i, time_t now) #define TIME_BEFORE_OR_CONN_IS_OBSOLETE (60*60*24*7) /* a week */ if (!conn->is_obsolete) { if (conn->timestamp_created + TIME_BEFORE_OR_CONN_IS_OBSOLETE < now) { - info(LD_OR, "Marking OR conn to %s:%d obsolete (fd %d, %d secs old).", - conn->address, conn->port, conn->s, - (int)(now - conn->timestamp_created)); + log_info(LD_OR, + "Marking OR conn to %s:%d obsolete (fd %d, %d secs old).", + conn->address, conn->port, conn->s, + (int)(now - conn->timestamp_created)); conn->is_obsolete = 1; } else { connection_t *best = connection_or_get_by_identity_digest(conn->identity_digest); if (best && best != conn) { - info(LD_OR, - "Marking duplicate conn to %s:%d obsolete (fd %d, %d secs old).", - conn->address, conn->port, conn->s, - (int)(now - conn->timestamp_created)); + log_info(LD_OR, + "Marking duplicate conn to %s:%d obsolete " + "(fd %d, %d secs old).", + conn->address, conn->port, conn->s, + (int)(now - conn->timestamp_created)); conn->is_obsolete = 1; } } @@ -642,8 +646,9 @@ run_connection_housekeeping(int i, time_t now) if (conn->is_obsolete && conn->n_circuits == 0) { /* no unmarked circs -- mark it now */ - info(LD_OR,"Expiring non-used OR connection to fd %d (%s:%d) [Obsolete].", - conn->s,conn->address, conn->port); + log_info(LD_OR, + "Expiring non-used OR connection to fd %d (%s:%d) [Obsolete].", + conn->s,conn->address, conn->port); connection_mark_for_close(conn); conn->hold_open_until_flushed = 1; return; @@ -654,23 +659,23 @@ run_connection_housekeeping(int i, time_t now) if (now >= conn->timestamp_lastwritten + options->KeepalivePeriod) { routerinfo_t *router = router_get_by_digest(conn->identity_digest); if (!connection_state_is_open(conn)) { - info(LD_OR,"Expiring non-open OR connection to fd %d (%s:%d).", - conn->s,conn->address, conn->port); + log_info(LD_OR,"Expiring non-open OR connection to fd %d (%s:%d).", + conn->s,conn->address, conn->port); connection_mark_for_close(conn); conn->hold_open_until_flushed = 1; } else if (we_are_hibernating() && conn->n_circuits == 0 && !buf_datalen(conn->outbuf)) { - info(LD_OR,"Expiring non-used OR connection to fd %d (%s:%d) " - "[Hibernating or exiting].", - conn->s,conn->address, conn->port); + log_info(LD_OR,"Expiring non-used OR connection to fd %d (%s:%d) " + "[Hibernating or exiting].", + conn->s,conn->address, conn->port); connection_mark_for_close(conn); conn->hold_open_until_flushed = 1; } else if (!clique_mode(options) && conn->n_circuits && (!router || !server_mode(options) || !router_is_clique_mode(router))) { - info(LD_OR,"Expiring non-used OR connection to fd %d (%s:%d) " - "[Not in clique mode].", - conn->s,conn->address, conn->port); + log_info(LD_OR,"Expiring non-used OR connection to fd %d (%s:%d) " + "[Not in clique mode].", + conn->s,conn->address, conn->port); connection_mark_for_close(conn); conn->hold_open_until_flushed = 1; } else if ( @@ -724,11 +729,11 @@ run_scheduled_events(time_t now) */ if (server_mode(options) && get_onion_key_set_at()+MIN_ONION_KEY_LIFETIME < now) { - info(LD_GENERAL,"Rotating onion key."); + log_info(LD_GENERAL,"Rotating onion key."); rotate_onion_key(); cpuworkers_rotate(); if (router_rebuild_descriptor(1)<0) { - warn(LD_BUG, "Couldn't rebuild router descriptor"); + log_warn(LD_BUG, "Couldn't rebuild router descriptor"); } if (advertised_server_mode()) router_upload_dir_desc_to_dirservers(0); @@ -749,10 +754,10 @@ run_scheduled_events(time_t now) if (!last_rotated_certificate) last_rotated_certificate = now; if (last_rotated_certificate+MAX_SSL_KEY_LIFETIME < now) { - info(LD_GENERAL,"Rotating tls context."); + log_info(LD_GENERAL,"Rotating tls context."); if (tor_tls_context_new(get_identity_key(), 1, options->Nickname, MAX_SSL_KEY_LIFETIME) < 0) { - warn(LD_BUG, "Error reinitializing TLS context"); + log_warn(LD_BUG, "Error reinitializing TLS context"); /* XXX is it a bug here, that we just keep going? */ } last_rotated_certificate = now; @@ -960,15 +965,16 @@ second_elapsed_callback(int fd, short event, void *args) /* every 20 minutes, check and complain if necessary */ routerinfo_t *me = router_get_my_routerinfo(); if (me && !check_whether_orport_reachable()) - warn(LD_CONFIG,"Your server (%s:%d) has not managed to confirm that " - "its ORPort is reachable. Please check your firewalls, ports, " - "address, /etc/hosts file, etc.", - me->address, me->or_port); + log_warn(LD_CONFIG,"Your server (%s:%d) has not managed to confirm that " + "its ORPort is reachable. Please check your firewalls, ports, " + "address, /etc/hosts file, etc.", + me->address, me->or_port); if (me && !check_whether_dirport_reachable()) - warn(LD_CONFIG,"Your server (%s:%d) has not managed to confirm that its " - "DirPort is reachable. Please check your firewalls, ports, " - "address, /etc/hosts file, etc.", - me->address, me->dir_port); + log_warn(LD_CONFIG, + "Your server (%s:%d) has not managed to confirm that its " + "DirPort is reachable. Please check your firewalls, ports, " + "address, /etc/hosts file, etc.", + me->address, me->dir_port); } /* if more than 100s have elapsed, probably the clock jumped: doesn't @@ -991,8 +997,8 @@ second_elapsed_callback(int fd, short event, void *args) #endif if (evtimer_add(timeout_event, &one_second)) - err(LD_NET, - "Error from libevent when setting one-second timeout event"); + log_err(LD_NET, + "Error from libevent when setting one-second timeout event"); } /** Called when a possibly ignorable libevent error occurs; ensures that we @@ -1002,7 +1008,7 @@ static int got_libevent_error(void) { if (++n_libevent_errors > 8) { - err(LD_NET, "Too many libevent errors in one second; dying"); + log_err(LD_NET, "Too many libevent errors in one second; dying"); return -1; } return 0; @@ -1016,7 +1022,7 @@ do_hup(void) char keydir[512]; or_options_t *options = get_options(); - notice(LD_GENERAL,"Received reload signal (hup). Reloading config."); + log_notice(LD_GENERAL,"Received reload signal (hup). Reloading config."); has_completed_circuit=0; if (accounting_is_enabled(options)) accounting_record_bandwidth_usage(time(NULL)); @@ -1027,8 +1033,8 @@ do_hup(void) /* first, reload config variables, in case they've changed */ /* no need to provide argc/v, they've been cached inside init_from_config */ if (options_init_from_torrc(0, NULL) < 0) { - err(LD_CONFIG,"Reading config failed--see warnings above. " - "For usage, try -h."); + log_err(LD_CONFIG,"Reading config failed--see warnings above. " + "For usage, try -h."); return -1; } options = get_options(); /* they have changed now */ @@ -1036,10 +1042,11 @@ do_hup(void) /* reload the approved-routers file */ tor_snprintf(keydir, sizeof(keydir), "%s/approved-routers", options->DataDirectory); - info(LD_GENERAL,"Reloading approved fingerprints from \"%s\"...",keydir); + log_info(LD_GENERAL, + "Reloading approved fingerprints from \"%s\"...", keydir); if (dirserv_parse_fingerprint_file(keydir) < 0) { - info(LD_GENERAL, "Error reloading fingerprints. " - "Continuing with old list."); + log_info(LD_GENERAL, "Error reloading fingerprints. " + "Continuing with old list."); } } @@ -1068,7 +1075,7 @@ do_hup(void) if (descriptor) { tor_snprintf(keydir,sizeof(keydir),"%s/router.desc", options->DataDirectory); - info(LD_OR,"Saving descriptor to \"%s\"...",keydir); + log_info(LD_OR,"Saving descriptor to \"%s\"...",keydir); if (write_str_to_file(keydir, descriptor, 0)) { return 0; } @@ -1091,7 +1098,7 @@ do_main_loop(void) * TLS context. */ if (! identity_key_is_set()) { if (init_keys() < 0) { - err(LD_GENERAL,"Error initializing keys; exiting"); + log_err(LD_GENERAL,"Error initializing keys; exiting"); return -1; } } @@ -1143,23 +1150,24 @@ do_main_loop(void) /* let the program survive things like ^z */ if (e != EINTR && !ERRNO_IS_EINPROGRESS(e)) { #ifdef HAVE_EVENT_GET_METHOD - err(LD_NET,"libevent call with %s failed: %s [%d]", - event_get_method(), tor_socket_strerror(e), e); + log_err(LD_NET,"libevent call with %s failed: %s [%d]", + event_get_method(), tor_socket_strerror(e), e); #else - err(LD_NET,"libevent call failed: %s [%d]", - tor_socket_strerror(e), e); + log_err(LD_NET,"libevent call failed: %s [%d]", + tor_socket_strerror(e), e); #endif return -1; #ifndef MS_WINDOWS } else if (e == EINVAL) { - warn(LD_NET, "EINVAL from libevent: should you upgrade libevent?"); + log_warn(LD_NET, "EINVAL from libevent: should you upgrade libevent?"); if (got_libevent_error()) return -1; #endif } else { if (ERRNO_IS_EINPROGRESS(e)) - warn(LD_BUG,"libevent call returned EINPROGRESS? Please report."); - debug(LD_NET,"libevent call interrupted."); + log_warn(LD_BUG, + "libevent call returned EINPROGRESS? Please report."); + log_debug(LD_NET,"libevent call interrupted."); /* You can't trust the results of this poll(). Go back to the * top of the big for loop. */ continue; @@ -1217,13 +1225,13 @@ signal_callback(int fd, short events, void *arg) switch (sig) { case SIGTERM: - err(LD_GENERAL,"Catching signal TERM, exiting cleanly."); + log_err(LD_GENERAL,"Catching signal TERM, exiting cleanly."); tor_cleanup(); exit(0); break; case SIGINT: if (!server_mode(get_options())) { /* do it now */ - notice(LD_GENERAL,"Interrupt: exiting cleanly."); + log_notice(LD_GENERAL,"Interrupt: exiting cleanly."); tor_cleanup(); exit(0); } @@ -1231,7 +1239,7 @@ signal_callback(int fd, short events, void *arg) break; #ifdef SIGPIPE case SIGPIPE: - debug(LD_GENERAL,"Caught sigpipe. Ignoring."); + log_debug(LD_GENERAL,"Caught sigpipe. Ignoring."); break; #endif case SIGUSR1: @@ -1240,12 +1248,12 @@ signal_callback(int fd, short events, void *arg) break; case SIGUSR2: switch_logs_debug(); - debug(LD_GENERAL,"Caught USR2, going to loglevel debug. " - "Send HUP to change back."); + log_debug(LD_GENERAL,"Caught USR2, going to loglevel debug. " + "Send HUP to change back."); break; case SIGHUP: if (do_hup() < 0) { - warn(LD_CONFIG,"Restart failed (config error?). Exiting."); + log_warn(LD_CONFIG,"Restart failed (config error?). Exiting."); tor_cleanup(); exit(1); } @@ -1402,8 +1410,8 @@ handle_signals(int is_parent) signal_set(&signal_events[i], signals[i], signal_callback, (void*)(uintptr_t)signals[i]); if (signal_add(&signal_events[i], NULL)) - warn(LD_BUG, "Error from libevent when adding event for signal %d", - signals[i]); + log_warn(LD_BUG, "Error from libevent when adding event for signal %d", + signals[i]); } } else { struct sigaction action; @@ -1445,26 +1453,26 @@ tor_init(int argc, char *argv[]) "Do not rely on it for strong anonymity.",VERSION); if (network_init()<0) { - err(LD_NET,"Error initializing network; exiting."); + log_err(LD_NET,"Error initializing network; exiting."); return -1; } atexit(exit_function); if (options_init_from_torrc(argc,argv) < 0) { - err(LD_CONFIG,"Reading config failed--see warnings above. " - "For usage, try -h."); + log_err(LD_CONFIG,"Reading config failed--see warnings above. " + "For usage, try -h."); return -1; } #ifndef MS_WINDOWS if (geteuid()==0) - warn(LD_GENERAL,"You are running Tor as root. You don't need to, " - "and you probably shouldn't."); + log_warn(LD_GENERAL,"You are running Tor as root. You don't need to, " + "and you probably shouldn't."); #endif crypto_global_init(get_options()->HardwareAccel); if (crypto_seed_rng()) { - err(LD_BUG, "Unable to seed random number generator. Exiting."); + log_err(LD_BUG, "Unable to seed random number generator. Exiting."); return -1; } @@ -1540,15 +1548,15 @@ do_list_fingerprint(void) } tor_assert(nickname); if (init_keys() < 0) { - err(LD_BUG,"Error initializing keys; exiting"); + log_err(LD_BUG,"Error initializing keys; exiting"); return; } if (!(k = get_identity_key())) { - err(LD_GENERAL,"Error: missing identity key."); + log_err(LD_GENERAL,"Error: missing identity key."); return; } if (crypto_pk_get_fingerprint(k, buf, 1)<0) { - warn(LD_BUG, "Error computing fingerprint"); + log_warn(LD_BUG, "Error computing fingerprint"); return; } printf("%s %s\n", nickname, buf); @@ -1645,7 +1653,8 @@ nt_service_control(DWORD request) switch (request) { case SERVICE_CONTROL_STOP: case SERVICE_CONTROL_SHUTDOWN: - err(LD_GENERAL, "Got stop/shutdown request; shutting down cleanly."); + log_err(LD_GENERAL, + "Got stop/shutdown request; shutting down cleanly."); service_status.dwCurrentState = SERVICE_STOP_PENDING; event_loopexit(&exit_now); return; @@ -1683,8 +1692,8 @@ nt_service_body(int argc, char **argv) } } else { - err(LD_CONFIG, "torrc is not in the current working directory. " - "The Tor service will not start."); + log_err(LD_CONFIG, "torrc is not in the current working directory. " + "The Tor service will not start."); r = NT_SERVICE_ERROR_NO_TORRC; } @@ -1737,8 +1746,8 @@ nt_service_main(void) printf("Configuration was valid\n"); break; default: - err(LD_CONFIG, "Illegal command number %d: internal error.", - get_options()->command); + log_err(LD_CONFIG, "Illegal command number %d: internal error.", + get_options()->command); } tor_cleanup(); } @@ -2062,7 +2071,7 @@ tor_main(int argc, char *argv[]) #ifdef USE_DMALLOC int r = CRYPTO_set_mem_ex_functions(_tor_malloc, _tor_realloc, _tor_dmalloc_free); - notice(LD_CONFIG, "Set up damalloc; returned %d", r); + log_notice(LD_CONFIG, "Set up damalloc; returned %d", r); #endif #ifdef MS_WINDOWS_SERVICE backup_argv = argv; @@ -2111,8 +2120,8 @@ tor_main(int argc, char *argv[]) printf("Configuration was valid\n"); break; default: - warn(LD_BUG,"Illegal command number %d: internal error.", - get_options()->command); + log_warn(LD_BUG,"Illegal command number %d: internal error.", + get_options()->command); } tor_cleanup(); return -1; diff --git a/src/or/onion.c b/src/or/onion.c index ecf0bcc24a..315c5f12dd 100644 --- a/src/or/onion.c +++ b/src/or/onion.c @@ -57,11 +57,11 @@ onion_pending_add(circuit_t *circ) tor_assert(!ol_tail->next); if (ol_length >= get_options()->MaxOnionsPending) { - warn(LD_GENERAL, - "Your computer is too slow to handle this many circuit " - "creation requests! Please consider using the " - "MaxAdvertisedBandwidth config option or choosing a more " - "restricted exit policy."); + log_warn(LD_GENERAL, + "Your computer is too slow to handle this many circuit " + "creation requests! Please consider using the " + "MaxAdvertisedBandwidth config option or choosing a more " + "restricted exit policy."); tor_free(tmp); return -1; } @@ -73,8 +73,8 @@ onion_pending_add(circuit_t *circ) /* cull elderly requests. */ circ = ol_list->circ; onion_pending_remove(ol_list->circ); - info(LD_CIRC, - "Circuit create request is too old; cancelling due to overload."); + log_info(LD_CIRC, + "Circuit create request is too old; cancelling due to overload."); circuit_mark_for_close(circ, END_CIRC_REASON_RESOURCELIMIT); } return 0; @@ -122,9 +122,9 @@ onion_pending_remove(circuit_t *circ) } else { /* we need to hunt through the rest of the list */ for ( ;tmpo->next && tmpo->next->circ != circ; tmpo=tmpo->next) ; if (!tmpo->next) { - debug(LD_GENERAL, - "circ (p_circ_id %d) not in list, probably at cpuworker.", - circ->p_circ_id); + log_debug(LD_GENERAL, + "circ (p_circ_id %d) not in list, probably at cpuworker.", + circ->p_circ_id); return; } /* now we know tmpo->next->circ == circ */ @@ -244,18 +244,18 @@ onion_skin_server_handshake(const char *onion_skin, /*ONIONSKIN_CHALLENGE_LEN*/ break; } if (len<0) { - info(LD_PROTOCOL, - "Couldn't decrypt onionskin: client may be using old onion key"); + log_info(LD_PROTOCOL, + "Couldn't decrypt onionskin: client may be using old onion key"); goto err; } else if (len != DH_KEY_LEN) { - warn(LD_PROTOCOL, "Unexpected onionskin length after decryption: %d", - len); + log_warn(LD_PROTOCOL, "Unexpected onionskin length after decryption: %d", + len); goto err; } dh = crypto_dh_new(); if (crypto_dh_get_public(dh, handshake_reply_out, DH_KEY_LEN)) { - info(LD_GENERAL, "crypto_dh_get_public failed."); + log_info(LD_GENERAL, "crypto_dh_get_public failed."); goto err; } @@ -271,7 +271,7 @@ onion_skin_server_handshake(const char *onion_skin, /*ONIONSKIN_CHALLENGE_LEN*/ len = crypto_dh_compute_secret(dh, challenge, DH_KEY_LEN, key_material, DIGEST_LEN+key_out_len); if (len < 0) { - info(LD_GENERAL, "crypto_dh_compute_secret failed."); + log_info(LD_GENERAL, "crypto_dh_compute_secret failed."); goto err; } @@ -336,8 +336,8 @@ onion_skin_client_handshake(crypto_dh_env_t *handshake_state, if (memcmp(key_material, handshake_reply+DH_KEY_LEN, 20)) { /* H(K) does *not* match. Something fishy. */ tor_free(key_material); - warn(LD_PROTOCOL,"Digest DOES NOT MATCH on onion handshake. " - "Bug or attack."); + log_warn(LD_PROTOCOL,"Digest DOES NOT MATCH on onion handshake. " + "Bug or attack."); return -1; } @@ -422,8 +422,8 @@ fast_client_handshake(const char *handshake_state, /* DIGEST_LEN bytes */ } if (memcmp(out, handshake_reply_out+DIGEST_LEN, DIGEST_LEN)) { /* H(K) does *not* match. Something fishy. */ - warn(LD_PROTOCOL,"Digest DOES NOT MATCH on fast handshake. " - "Bug or attack."); + log_warn(LD_PROTOCOL,"Digest DOES NOT MATCH on fast handshake. " + "Bug or attack."); return -1; } memcpy(key_out, out+DIGEST_LEN, key_out_len);