general cleanups from looking through or-cvs

svn:r8855
This commit is contained in:
Roger Dingledine 2006-10-29 07:41:25 +00:00
parent 6b13771edd
commit 8a781f7f34
4 changed files with 43 additions and 31 deletions

View File

@ -1,12 +1,12 @@
Changes in version 0.1.2.3-alpha - 2006-10-?? Changes in version 0.1.2.3-alpha - 2006-10-??
o Minor features: o Minor features:
- If most authorities set a (newly defined) BadExit flag for a server, - If most authorities set a BadExit flag for a server, do not consider
do not consider it as a general-purpose exit. Only consider it as a general-purpose exit. Only consider authorities that
authorities that advertise themselves as listing bad exits. advertise themselves as listing bad exits.
- Start making it possible for servers to publish less often: never - Start making it possible for servers to publish less often: never
discard a descriptor simply for being too old until either it is 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 recommended by no authorities, or until we get a better one for
same router. Make caches consider retaining old recommended the same router. Make caches consider retaining old recommended
routers for even longer. routers for even longer.
- Directory servers now provide 'Pragma: no-cache' and 'Expires' - Directory servers now provide 'Pragma: no-cache' and 'Expires'
headers for content, so that we can work better in the presence of 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. 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 - There's now a GETINFO ns/... field so that controllers can ask Tor
about the current state of a router. about the current state of a router.
- Stream events also have REASON and REMOTE_REASON fields, working much - Stream events also have REASON and REMOTE_REASON fields, working
like those for circuit events. much like those for circuit events.
- NS events to inform a controller when our opinion of a router's status - NS events to inform a controller when our opinion of a router's
has changed. status has changed.
- Add a GETINFO events/names and GETINFO features/names so controllers - Add a GETINFO events/names and GETINFO features/names so controllers
can tell which events and features are supported. can tell which events and features are supported.
- A new CLEARDNSCACHE signal to allow controllers to clear the - A new CLEARDNSCACHE signal to allow controllers to clear the
client-side DNS cache without expiring circuits. client-side DNS cache without expiring circuits.
- When the controller does a "GETINFO network-status", tell it about even - When the controller does a "GETINFO network-status", tell it
those routers whose descriptors are very old, and use long nicknames about even those routers whose descriptors are very old, and use
where appropriate. long nicknames where appropriate.
o Security bugfixes: o Security bugfixes:
- When the user sends a NEWNYM signal, clear the client-side DNS - 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: o Minor bugfixes:
- Change NT service functions to be loaded on demand. This lets us - 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 - Do DirPort reachability tests less often, since a single test
chews through many circuits before giving up. chews through many circuits before giving up.
- In the hidden service example in torrc.sample, stop recommending - 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 make them show up exactly when requested, rather than exactly when
not requested. not requested.
- When reporting verbose nicknames in entry_guards_getinfo(), avoid - 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 - Stop triggering asserts if the controller tries to extend hidden
service circuits. service circuits (reported by mwenge).
- Correctly set maximum connection limit on Cygwin. - Correctly set maximum connection limit on Cygwin. (This time
- Try to detect windows correctly when cross-compiling. for sure!)
- Detect the size of the routers file correctly even if it is corrupted - Try to detect Windows correctly when cross-compiling.
(on systems without mmap) or not page-aligned (on systems with mmap). - Detect the size of the routers file correctly even if it is
This bug was harmless. corrupted (on systems without mmap) or not page-aligned (on systems
- Implement the protocol correctly by always sending a RELAY_END cell with mmap). This bug was harmless.
when an attempt to open a stream fails. This should make clients - Sometimes we didn't bother sending a RELAY_END cell when an attempt
able to find a good exit faster in some cases, since unhandleable to open a stream fails; now we do in more cases. This should
requests will now get an error rather than timing out. 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 - Resolve two memory leaks when rebuilding the on-disk router cache
(reported by fookoowa). (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 - Controller signals now work on non-Unix platforms that don't define
SIGUSR1 and SIGUSR2 the way we expect. 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 Changes in version 0.1.2.2-alpha - 2006-10-07
o Major features: 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. not mandatory that we use that enclave, stop wanting it.
- When eventdns is enabled, allow multithreaded builds on NetBSD and - When eventdns is enabled, allow multithreaded builds on NetBSD and
OpenBSD. (We had previously disabled threads on these platforms 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: o Major bugfixes, anonymity/security:
- If a client asked for a server by name, and there's a named server - If a client asked for a server by name, and there's a named server

View File

@ -352,7 +352,7 @@ $Id$
"desc/id/<OR identity>" or "desc/name/<OR nickname>" -- the latest "desc/id/<OR identity>" or "desc/name/<OR nickname>" -- the latest
server descriptor for a given OR, NUL-terminated. server descriptor for a given OR, NUL-terminated.
"ns/id/<OR identity>" or "desc/name/<OR nickname>" -- the latest network "ns/id/<OR identity>" or "ns/name/<OR nickname>" -- the latest network
status info for a given OR. Network status info is as given in 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 dir-spec.txt, and reflects the current beliefs of this Tor about the
router in question. Like directory clients, controllers MUST 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 Action is a string, and Arguments is a series of keyword=value
pairs on the same line. pairs on the same line.
These events are always produced with EXTENDED_EVENTS and VERBOSE_NAMES; These events are always produced with EXTENDED_EVENTS and
see the explanations in the USEFEATURE section command for details. VERBOSE_NAMES; see the explanations in the USEFEATURE section
for details.
Actions for STATUS_GENERAL severity NOTICE events can be as follows: Actions for STATUS_GENERAL severity NOTICE events can be as follows:

View File

@ -235,7 +235,7 @@ dirserv_load_fingerprint_file(void)
} }
if (0==strcasecmp(nickname, UNNAMED_ROUTER_NICKNAME)) { if (0==strcasecmp(nickname, UNNAMED_ROUTER_NICKNAME)) {
/* If you approved an OR called "unnamed", then clients will be /* If you approved an OR called "unnamed", then clients will be
* confused.*/ * confused. */
log_notice(LD_CONFIG, log_notice(LD_CONFIG,
"Authorizing a nickname '%s' is not allowed; skipping.", "Authorizing a nickname '%s' is not allowed; skipping.",
UNNAMED_ROUTER_NICKNAME); UNNAMED_ROUTER_NICKNAME);
@ -384,7 +384,7 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname,
if (reject_unlisted) if (reject_unlisted)
return FP_REJECT; return FP_REJECT;
/* 0.1.0.2-rc was the first version that did enough self-testing that /* 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")) if (platform && !tor_version_as_new_as(platform,"0.1.0.2-rc"))
result |= FP_INVALID; result |= FP_INVALID;
} }

View File

@ -554,7 +554,7 @@ connection_edge_end_reason_str(int reason)
switch (reason) { switch (reason) {
case -1: case -1:
log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL, 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"; return "MALFORMED";
case END_STREAM_REASON_MISC: return "misc error"; case END_STREAM_REASON_MISC: return "misc error";
case END_STREAM_REASON_RESOLVEFAILED: return "resolve failed"; case END_STREAM_REASON_RESOLVEFAILED: return "resolve failed";