mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Normalize whitespace; add a "tell me about all the unnormalized whitespace" target; fix a braino in dirserv.c
svn:r2758
This commit is contained in:
@@ -765,7 +765,7 @@ option_reset(or_options_t *options, config_var_t *var)
|
||||
}
|
||||
}
|
||||
|
||||
/** Set <b>options</b>->DirServers to contain the default directory
|
||||
/** Set <b>options</b>->DirServers to contain the default directory
|
||||
* servers. */
|
||||
static void
|
||||
add_default_trusted_dirservers(or_options_t *options)
|
||||
@@ -1317,7 +1317,6 @@ static int check_nickname_list(const char *lst, const char *name)
|
||||
return r;
|
||||
}
|
||||
|
||||
|
||||
/** Read a configuration file into <b>options</b>, finding the configuration
|
||||
* file location based on the command line. After loading the options,
|
||||
* validate them for consistency, then take actions based on them.
|
||||
@@ -1840,7 +1839,6 @@ parse_dir_server_line(const char *line, int validate_only)
|
||||
return r;
|
||||
}
|
||||
|
||||
|
||||
/** Adjust or the value of options->DataDirectory, or fill it in if it's
|
||||
* absent. Return 0 on success, -1 on failure. */
|
||||
static int
|
||||
@@ -1894,7 +1892,6 @@ validate_data_directory(or_options_t *options) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
mode:c
|
||||
|
||||
@@ -405,7 +405,7 @@ static int connection_handle_listener_read(connection_t *conn, int new_type) {
|
||||
return 0;
|
||||
}
|
||||
/* else there was a real error. */
|
||||
log_fn(LOG_WARN,"accept() failed: %s. Closing listener.",
|
||||
log_fn(LOG_WARN,"accept() failed: %s. Closing listener.",
|
||||
tor_socket_strerror(e));
|
||||
connection_mark_for_close(conn);
|
||||
return -1;
|
||||
@@ -570,7 +570,7 @@ static void listener_close_if_present(int type) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
/**
|
||||
* Launch any configured listener connections of type <b>type</b>. (A
|
||||
* listener is configured if <b>port_option</b> is non-zero. If any
|
||||
* BindAddress configuration options are given in <b>cfg</b>, create a
|
||||
@@ -578,7 +578,7 @@ static void listener_close_if_present(int type) {
|
||||
* connection binding to the address <b>default_addr</b>.)
|
||||
*
|
||||
* If <b>force</b> is true, close and re-open all listener connections.
|
||||
* Otherwise, only relaunch the listeners of this type if the number of
|
||||
* Otherwise, only relaunch the listeners of this type if the number of
|
||||
* existing connections is not as configured (e.g., because one died).
|
||||
*/
|
||||
static int retry_listeners(int type, struct config_line_t *cfg,
|
||||
|
||||
@@ -203,7 +203,6 @@ int connection_edge_finished_connecting(connection_t *conn)
|
||||
tor_assert(conn->type == CONN_TYPE_EXIT);
|
||||
tor_assert(conn->state == EXIT_CONN_STATE_CONNECTING);
|
||||
|
||||
|
||||
log_fn(LOG_INFO,"Exit connection to %s:%u established.",
|
||||
conn->address,conn->port);
|
||||
|
||||
@@ -858,7 +857,6 @@ int connection_exit_begin_resolve(cell_t *cell, circuit_t *circ) {
|
||||
assert_circuit_ok(circ);
|
||||
relay_header_unpack(&rh, cell->payload);
|
||||
|
||||
|
||||
/* This 'dummy_conn' only exists to remember the stream ID
|
||||
* associated with the resolve request; and to make the
|
||||
* implementation of dns.c more uniform. (We really only need to
|
||||
@@ -880,7 +878,7 @@ int connection_exit_begin_resolve(cell_t *cell, circuit_t *circ) {
|
||||
/* send it off to the gethostbyname farm */
|
||||
switch(dns_resolve(dummy_conn)) {
|
||||
case 1: /* The result was cached; a resolved cell was sent. */
|
||||
case -1:
|
||||
case -1:
|
||||
circuit_detach_stream(circuit_get_by_conn(dummy_conn), dummy_conn);
|
||||
connection_free(dummy_conn);
|
||||
return 0;
|
||||
@@ -1203,7 +1201,6 @@ void client_dns_clean(void)
|
||||
strmap_foreach(client_dns_map, (strmap_foreach_fn)_remove_if_expired, &now);
|
||||
}
|
||||
|
||||
|
||||
/** Make connection redirection follow the provided list of
|
||||
* exit_redirect_t */
|
||||
void
|
||||
|
||||
@@ -178,7 +178,6 @@ directory_get_from_dirserver(uint8_t purpose, const char *payload,
|
||||
log_fn(LOG_WARN,"No running dirservers known. Not trying. (purpose %d)", purpose);
|
||||
}
|
||||
|
||||
|
||||
/** Launch a new connection to the directory server <b>router</b> to upload or
|
||||
* download a service or rendezvous descriptor. <b>purpose</b> determines what
|
||||
* kind of directory connection we're launching, and must be one of
|
||||
@@ -755,7 +754,7 @@ directory_handle_command_get(connection_t *conn, char *headers,
|
||||
return 0;
|
||||
}
|
||||
|
||||
log_fn(LOG_DEBUG,"Dumping %sdirectory to client.",
|
||||
log_fn(LOG_DEBUG,"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\nContent-Type: text/plain\r\nContent-Encoding: %s\r\n\r\n",
|
||||
|
||||
@@ -119,7 +119,7 @@ dirserv_parse_fingerprint_file(const char *fname)
|
||||
nickname, fingerprint);
|
||||
continue;
|
||||
}
|
||||
if (0==strcasecmp(ent->nickname, DEFAULT_CLIENT_NICKNAME)) {
|
||||
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. */
|
||||
log(LOG_WARN,
|
||||
@@ -465,7 +465,7 @@ dirserv_load_from_directory_string(const char *dir)
|
||||
/**
|
||||
* Allocate and return a description of the status of the server <b>desc</b>,
|
||||
* for use in a running-routers line (if <b>rr_format</b> is true), or in a
|
||||
* router-status line (if <b>rr_format</b> is false. The server is listed
|
||||
* router-status line (if <b>rr_format</b> is false. The server is listed
|
||||
* as running iff <b>is_live</b> is true.
|
||||
*/
|
||||
static char *
|
||||
@@ -617,14 +617,14 @@ dirserv_dump_directory_to_string(char *s, size_t maxlen,
|
||||
struct config_line_t *ln;
|
||||
versions = smartlist_create();
|
||||
for (ln = get_options()->RecommendedVersions; ln; ln = ln->next) {
|
||||
smartlist_split_string(versions, ln->value, ",",
|
||||
smartlist_split_string(versions, ln->value, ",",
|
||||
SPLIT_SKIP_SPACE|SPLIT_IGNORE_BLANK, 0);
|
||||
}
|
||||
recommended_versions = smartlist_join_strings(versions,",",0,NULL);
|
||||
SMARTLIST_FOREACH(versions,char *,s,tor_free(s));
|
||||
smartlist_free(versions);
|
||||
}
|
||||
|
||||
|
||||
dirserv_remove_old_servers(ROUTER_MAX_AGE);
|
||||
published_on = time(NULL);
|
||||
format_iso_time(published, published_on);
|
||||
|
||||
@@ -146,7 +146,6 @@ start_of_accounting_period_containing(time_t now)
|
||||
return tor_timegm(tm);
|
||||
}
|
||||
|
||||
|
||||
/** Return the start of the accounting period that comes after the one
|
||||
* containing the time <b>now</b>. */
|
||||
static time_t
|
||||
@@ -161,7 +160,6 @@ start_of_accounting_period_after(time_t now)
|
||||
return tor_timegm(tm);
|
||||
}
|
||||
|
||||
|
||||
/** Initialize the accounting subsystem. */
|
||||
void
|
||||
configure_accounting(time_t now)
|
||||
|
||||
@@ -372,7 +372,6 @@ void directory_has_arrived(time_t now) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/** Perform regular maintenance tasks for a single connection. This
|
||||
* function gets run once per second per connection by run_housekeeping.
|
||||
*/
|
||||
@@ -595,7 +594,6 @@ static void run_scheduled_events(time_t now) {
|
||||
*/
|
||||
connection_ap_expire_beginning();
|
||||
|
||||
|
||||
/** 3c. And expire connections that we've held open for too long.
|
||||
*/
|
||||
connection_expire_held_open();
|
||||
@@ -990,7 +988,6 @@ void handle_signals(int is_parent)
|
||||
#endif /* signal stuff */
|
||||
}
|
||||
|
||||
|
||||
/** Main entry point for the Tor command-line client.
|
||||
*/
|
||||
static int tor_init(int argc, char *argv[]) {
|
||||
|
||||
@@ -97,7 +97,6 @@
|
||||
#include <time.h>
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef MS_WINDOWS
|
||||
#if (_MSC_VER <= 1300)
|
||||
#include <winsock.h>
|
||||
@@ -719,7 +718,6 @@ typedef struct {
|
||||
int failure_count;
|
||||
} cpath_build_state_t;
|
||||
|
||||
|
||||
#define CIRCUIT_MAGIC 0x35315243u
|
||||
/** Struct for a path (circuit) through the onion routing network. */
|
||||
struct circuit_t {
|
||||
@@ -1578,7 +1576,6 @@ int router_update_status_from_smartlist(routerinfo_t *r,
|
||||
void add_trusted_dir_server(const char *addr, uint16_t port,const char *digest);
|
||||
void clear_trusted_dir_servers(void);
|
||||
|
||||
|
||||
/********************************* routerparse.c ************************/
|
||||
|
||||
typedef struct tor_version_t {
|
||||
|
||||
@@ -526,8 +526,8 @@ connection_edge_process_relay_cell_not_open(
|
||||
if(connection_ap_can_use_exit(conn, exitrouter)) {
|
||||
log_fn(LOG_WARN,"Exitrouter %s seems to be more restrictive than its exit policy. Not using this router as exit for now,", exitrouter->nickname);
|
||||
exit_policy_free(exitrouter->exit_policy);
|
||||
exitrouter->exit_policy =
|
||||
router_parse_exit_policy_from_string("reject *:*");
|
||||
exitrouter->exit_policy =
|
||||
router_parse_exit_policy_from_string("reject *:*");
|
||||
}
|
||||
|
||||
conn->state = AP_CONN_STATE_CIRCUIT_WAIT;
|
||||
|
||||
@@ -235,7 +235,6 @@ rend_client_introduction_acked(circuit_t *circ,
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/** If we are not currently fetching a rendezvous service descriptor
|
||||
* for the service ID <b>query</b>, start a directory connection to fetch a
|
||||
* new one.
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
#include "or.h"
|
||||
|
||||
|
||||
/** Return 0 if one and two are the same service ids, else -1 or 1 */
|
||||
int rend_cmp_service_ids(const char *one, const char *two) {
|
||||
return strcasecmp(one,two);
|
||||
|
||||
@@ -209,7 +209,6 @@ rend_mid_establish_rendezvous(circuit_t *circ, const char *request, size_t reque
|
||||
circ->purpose = CIRCUIT_PURPOSE_REND_POINT_WAITING;
|
||||
memcpy(circ->rend_cookie, request, REND_COOKIE_LEN);
|
||||
|
||||
|
||||
base16_encode(hexid,9,request,4);
|
||||
|
||||
log_fn(LOG_INFO, "Established rendezvous point on circuit %d for cookie %s",
|
||||
|
||||
@@ -280,7 +280,7 @@ void rep_hist_dump_stats(time_t now, int severity)
|
||||
name2 = "(unknown)";
|
||||
|
||||
link_history = (link_history_t*) link_history_p;
|
||||
|
||||
|
||||
ret = tor_snprintf(buffer+len, 2048-len, "%s(%ld/%ld); ", name2,
|
||||
link_history->n_extend_ok,
|
||||
link_history->n_extend_ok+link_history->n_extend_fail);
|
||||
@@ -556,7 +556,6 @@ rep_hist_get_bandwidth_lines(void)
|
||||
return buf;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
mode:c
|
||||
|
||||
@@ -801,7 +801,6 @@ int is_legal_nickname_or_hexdigest(const char *s)
|
||||
return len == HEX_DIGEST_LEN+1 && strspn(s+1,HEX_CHARACTERS)==len-1;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
mode:c
|
||||
|
||||
@@ -273,7 +273,6 @@ void routerlist_add_family(smartlist_t *sl, routerinfo_t *router) {
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
for (cl = get_options()->NodeFamilies; cl; cl = cl->next) {
|
||||
if (router_nickname_is_in_list(router, cl->value)) {
|
||||
add_nickname_list_to_smartlist(sl, cl->value, 0);
|
||||
@@ -835,7 +834,6 @@ routerlist_remove_old_routers(int age)
|
||||
* Code to parse router descriptors and directories.
|
||||
*/
|
||||
|
||||
|
||||
/** Add to the current routerlist each router stored in the
|
||||
* signed directory <b>s</b>. If pkey is provided, check the signature against
|
||||
* pkey; else check against the pkey of the signing directory server. */
|
||||
@@ -1044,7 +1042,7 @@ void routerlist_update_from_runningrouters(routerlist_t *list,
|
||||
all_routers = smartlist_create();
|
||||
if(me) /* learn if the dirservers think I'm verified */
|
||||
smartlist_add(all_routers, me);
|
||||
|
||||
|
||||
smartlist_add_all(all_routers,list->routers);
|
||||
SMARTLIST_FOREACH(rr->running_routers, const char *, cp,
|
||||
routers_update_status_from_entry(all_routers, rr->published_on,
|
||||
@@ -1060,10 +1058,10 @@ void routerlist_update_from_runningrouters(routerlist_t *list,
|
||||
* (running-routers format)
|
||||
* <li> !<b>nickname</b> -- router is not-running and verified.
|
||||
* (running-routers format)
|
||||
* <li> <b>nickname</b>=$<b>hexdigest</b> -- router is running and
|
||||
* <li> <b>nickname</b>=$<b>hexdigest</b> -- router is running and
|
||||
* verified. (router-status format)
|
||||
* (router-status format)
|
||||
* <li> !<b>nickname</b>=$<b>hexdigest</b> -- router is running and
|
||||
* <li> !<b>nickname</b>=$<b>hexdigest</b> -- router is running and
|
||||
* verified. (router-status format)
|
||||
* <li> !<b>nickname</b> -- router is not-running and verified.
|
||||
* <li> $<b>hexdigest</b> -- router is running and unverified.
|
||||
|
||||
@@ -422,7 +422,7 @@ router_parse_routerlist_from_directory(const char *str,
|
||||
* router. */
|
||||
str = end;
|
||||
if (router_parse_list_from_string(&str, &new_dir,
|
||||
good_nickname_list,
|
||||
good_nickname_list,
|
||||
tok->tp==K_RUNNING_ROUTERS,
|
||||
published_on)) {
|
||||
log_fn(LOG_WARN, "Error reading routers from directory");
|
||||
@@ -736,7 +736,6 @@ router_parse_list_from_string(const char **s, routerlist_t **dest,
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/** Helper function: reads a single router entry from *<b>s</b> ...
|
||||
* *<b>end</b>. Mallocs a new router and returns it if all goes well, else
|
||||
* returns NULL.
|
||||
@@ -895,7 +894,6 @@ routerinfo_t *router_parse_entry_from_string(const char *s,
|
||||
log_fn(LOG_WARN,"Error in exit policy"); goto err;}
|
||||
);
|
||||
|
||||
|
||||
if ((tok = find_first_by_keyword(tokens, K_FAMILY)) && tok->n_args) {
|
||||
int i;
|
||||
router->declared_family = smartlist_create();
|
||||
@@ -907,7 +905,7 @@ routerinfo_t *router_parse_entry_from_string(const char *s,
|
||||
smartlist_add(router->declared_family, tor_strdup(tok->args[i]));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!(tok = find_first_by_keyword(tokens, K_ROUTER_SIGNATURE))) {
|
||||
log_fn(LOG_WARN, "Missing router signature"); goto err;
|
||||
}
|
||||
@@ -945,7 +943,6 @@ routerinfo_t *router_parse_entry_from_string(const char *s,
|
||||
router->or_port, router->socks_port, router->dir_port,
|
||||
(unsigned) router->bandwidthrate, (unsigned) router->bandwidthburst);
|
||||
|
||||
|
||||
goto done;
|
||||
return router;
|
||||
|
||||
@@ -1016,7 +1013,6 @@ int router_add_exit_policy_from_string(routerinfo_t *router, const char *s)
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int router_add_exit_policy(routerinfo_t *router,directory_token_t *tok)
|
||||
{
|
||||
struct exit_policy_t *newe, **tmpe;
|
||||
@@ -1056,7 +1052,6 @@ router_parse_exit_policy(directory_token_t *tok) {
|
||||
if (parse_addr_and_port_range(arg, &newe->addr, &newe->msk,
|
||||
&newe->prt_min, &newe->prt_max))
|
||||
goto policy_read_failed;
|
||||
|
||||
|
||||
in.s_addr = htonl(newe->addr);
|
||||
address = tor_strdup(inet_ntoa(in));
|
||||
@@ -1302,7 +1297,6 @@ get_next_token(const char **s, where_syntax where) {
|
||||
fputs("\n",stdout);
|
||||
#endif
|
||||
|
||||
|
||||
return tok;
|
||||
#undef RET_ERR
|
||||
}
|
||||
|
||||
+2
-4
@@ -625,7 +625,6 @@ test_util(void) {
|
||||
test_eq(2, smartlist_len(sl));
|
||||
test_streq("efgh", smartlist_get(sl, 1));
|
||||
|
||||
|
||||
/* Test tor_strstrip() */
|
||||
strcpy(buf, "Testing 1 2 3");
|
||||
test_eq(0, tor_strstrip(buf, ",!"));
|
||||
@@ -779,7 +778,7 @@ test_gzip(void)
|
||||
tor_free(buf1);
|
||||
}
|
||||
|
||||
static void *
|
||||
static void *
|
||||
_squareAndRemoveK4(const char *key, void*val, void *data)
|
||||
{
|
||||
int *ip = (int*)data;
|
||||
@@ -867,7 +866,7 @@ test_strmap(void)
|
||||
strmap_free(map,NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
static void
|
||||
test_onion(void)
|
||||
{
|
||||
#if 0
|
||||
@@ -929,7 +928,6 @@ test_onion_handshake(void)
|
||||
crypto_free_pk_env(pk);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
test_dir_format(void)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user