From 8a781f7f34ffa528a7f3cd2dde69e7259685c2b4 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Sun, 29 Oct 2006 07:41:25 +0000 Subject: [PATCH] general cleanups from looking through or-cvs svn:r8855 --- ChangeLog | 61 ++++++++++++++++++++++++++------------------ doc/control-spec.txt | 7 ++--- src/or/dirserv.c | 4 +-- src/or/relay.c | 2 +- 4 files changed, 43 insertions(+), 31 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4a5d4cef8d..ccb309dd7f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,12 +1,12 @@ Changes in version 0.1.2.3-alpha - 2006-10-?? o Minor features: - - If most authorities set a (newly defined) BadExit flag for a server, - do not consider it as a general-purpose exit. Only consider - authorities that advertise themselves as listing bad exits. + - If most authorities set a BadExit flag for a server, do not consider + it as a general-purpose exit. Only consider authorities that + advertise themselves as listing bad exits. - Start making it possible for servers to publish less often: never discard a descriptor simply for being too old until either it is - recommended by no authorities, or until we get a better one for the - same router. Make caches consider retaining old recommended + recommended by no authorities, or until we get a better one for + the same router. Make caches consider retaining old recommended routers for even longer. - Directory servers now provide 'Pragma: no-cache' and 'Expires' headers for content, so that we can work better in the presence of @@ -24,17 +24,17 @@ Changes in version 0.1.2.3-alpha - 2006-10-?? controller about why a remote OR told us to close a circuit. - There's now a GETINFO ns/... field so that controllers can ask Tor about the current state of a router. - - Stream events also have REASON and REMOTE_REASON fields, working much - like those for circuit events. - - NS events to inform a controller when our opinion of a router's status - has changed. + - Stream events also have REASON and REMOTE_REASON fields, working + much like those for circuit events. + - NS events to inform a controller when our opinion of a router's + status has changed. - Add a GETINFO events/names and GETINFO features/names so controllers can tell which events and features are supported. - A new CLEARDNSCACHE signal to allow controllers to clear the client-side DNS cache without expiring circuits. - - When the controller does a "GETINFO network-status", tell it about even - those routers whose descriptors are very old, and use long nicknames - where appropriate. + - When the controller does a "GETINFO network-status", tell it + about even those routers whose descriptors are very old, and use + long nicknames where appropriate. o Security bugfixes: - When the user sends a NEWNYM signal, clear the client-side DNS @@ -42,7 +42,7 @@ Changes in version 0.1.2.3-alpha - 2006-10-?? o Minor bugfixes: - Change NT service functions to be loaded on demand. This lets us - build with mingw without breaking Tor for Windows 98 users. + build with MinGW without breaking Tor for Windows 98 users. - Do DirPort reachability tests less often, since a single test chews through many circuits before giving up. - In the hidden service example in torrc.sample, stop recommending @@ -55,23 +55,34 @@ Changes in version 0.1.2.3-alpha - 2006-10-?? make them show up exactly when requested, rather than exactly when not requested. - When reporting verbose nicknames in entry_guards_getinfo(), avoid - printing a duplicate "$" in the keys we send. + printing a duplicate "$" in the keys we send (reported by mwenge). - Stop triggering asserts if the controller tries to extend hidden - service circuits. - - Correctly set maximum connection limit on Cygwin. - - Try to detect windows correctly when cross-compiling. - - Detect the size of the routers file correctly even if it is corrupted - (on systems without mmap) or not page-aligned (on systems with mmap). - This bug was harmless. - - Implement the protocol correctly by always sending a RELAY_END cell - when an attempt to open a stream fails. This should make clients - able to find a good exit faster in some cases, since unhandleable - requests will now get an error rather than timing out. + service circuits (reported by mwenge). + - Correctly set maximum connection limit on Cygwin. (This time + for sure!) + - Try to detect Windows correctly when cross-compiling. + - Detect the size of the routers file correctly even if it is + corrupted (on systems without mmap) or not page-aligned (on systems + with mmap). This bug was harmless. + - Sometimes we didn't bother sending a RELAY_END cell when an attempt + to open a stream fails; now we do in more cases. This should + make clients able to find a good exit faster in some cases, since + unhandleable requests will now get an error rather than timing out. - Resolve two memory leaks when rebuilding the on-disk router cache (reported by fookoowa). + - Avoid infinite loop on unexpected controller input. + - Clean up minor code warnings suggested by the MIPSpro C compiler, + and reported by some Centos users. - Controller signals now work on non-Unix platforms that don't define SIGUSR1 and SIGUSR2 the way we expect. + - Libevent-1.2 exports, but does not define in its headers, strlcpy. + Try to fix this in configure.in by checking for most functions + before we check for libevent. + + - Patch from Michael Mohr to cross.sh, so it checks more values + before failing, and always enables eventdns. + Changes in version 0.1.2.2-alpha - 2006-10-07 o Major features: @@ -150,7 +161,7 @@ Changes in version 0.1.2.2-alpha - 2006-10-07 not mandatory that we use that enclave, stop wanting it. - When eventdns is enabled, allow multithreaded builds on NetBSD and OpenBSD. (We had previously disabled threads on these platforms - because they didn't have working thread-safe resolver functions) + because they didn't have working thread-safe resolver functions.) o Major bugfixes, anonymity/security: - If a client asked for a server by name, and there's a named server diff --git a/doc/control-spec.txt b/doc/control-spec.txt index 7ac949bcda..bafd1e6cdb 100644 --- a/doc/control-spec.txt +++ b/doc/control-spec.txt @@ -352,7 +352,7 @@ $Id$ "desc/id/" or "desc/name/" -- the latest server descriptor for a given OR, NUL-terminated. - "ns/id/" or "desc/name/" -- the latest network + "ns/id/" or "ns/name/" -- the latest network status info for a given OR. Network status info is as given in dir-spec.txt, and reflects the current beliefs of this Tor about the router in question. Like directory clients, controllers MUST @@ -954,8 +954,9 @@ $Id$ Action is a string, and Arguments is a series of keyword=value pairs on the same line. - These events are always produced with EXTENDED_EVENTS and VERBOSE_NAMES; - see the explanations in the USEFEATURE section command for details. + These events are always produced with EXTENDED_EVENTS and + VERBOSE_NAMES; see the explanations in the USEFEATURE section + for details. Actions for STATUS_GENERAL severity NOTICE events can be as follows: diff --git a/src/or/dirserv.c b/src/or/dirserv.c index c72c847983..c9761ccb72 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -235,7 +235,7 @@ dirserv_load_fingerprint_file(void) } if (0==strcasecmp(nickname, UNNAMED_ROUTER_NICKNAME)) { /* If you approved an OR called "unnamed", then clients will be - * confused.*/ + * confused. */ log_notice(LD_CONFIG, "Authorizing a nickname '%s' is not allowed; skipping.", UNNAMED_ROUTER_NICKNAME); @@ -384,7 +384,7 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname, if (reject_unlisted) return FP_REJECT; /* 0.1.0.2-rc was the first version that did enough self-testing that - * we're willing to take its word about whether it's running . */ + * we're willing to take its word about whether it's running. */ if (platform && !tor_version_as_new_as(platform,"0.1.0.2-rc")) result |= FP_INVALID; } diff --git a/src/or/relay.c b/src/or/relay.c index 93b272c75e..0923797077 100644 --- a/src/or/relay.c +++ b/src/or/relay.c @@ -554,7 +554,7 @@ connection_edge_end_reason_str(int reason) switch (reason) { case -1: log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL, - "End cell arrived with length 0. Should be at least 1."); + "End cell arrived with length 0. Should be at least 1."); return "MALFORMED"; case END_STREAM_REASON_MISC: return "misc error"; case END_STREAM_REASON_RESOLVEFAILED: return "resolve failed";