|
@@ -34,16 +34,19 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
as it's processing a begin_dir request, it will free the exit stream
|
|
|
but leave it attached to the circuit, leading to unpredictable
|
|
|
behavior. (Reported by seeess, fixes bug 425.)
|
|
|
+ - Fix a bug in dirserv_remove_invalid() that would cause authorities
|
|
|
+ to corrupt memory under some really unlikely scenarios.
|
|
|
|
|
|
o Minor fixes (resource management):
|
|
|
- - Count the number of open sockets separately from the number of active
|
|
|
- connection_t objects. This will let us avoid underusing our
|
|
|
- allocated connection limit.
|
|
|
+ - Count the number of open sockets separately from the number
|
|
|
+ of active connection_t objects. This will let us avoid underusing
|
|
|
+ our allocated connection limit.
|
|
|
- We no longer use socket pairs to link an edge connection to an
|
|
|
- anonymous directory connection. Instead, we track the link
|
|
|
- internally and transfer the data in-process. This saves two
|
|
|
- sockets per anonymous directory connection (at the client and at
|
|
|
- the server), and avoids the nasty Windows socketpair() workaround.
|
|
|
+ anonymous directory connection or a dirport test connection.
|
|
|
+ Instead, we track the link internally and transfer the data
|
|
|
+ in-process. This saves two sockets per "linked" connection (at the
|
|
|
+ client and at the server), and avoids the nasty Windows socketpair()
|
|
|
+ workaround.
|
|
|
- Keep unused 4k and 16k buffers on free lists, rather than wasting 8k
|
|
|
for every single inactive connection_t.
|
|
|
- Free items from the 4k/16k-buffer free lists when they haven't been
|
|
@@ -51,7 +54,7 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
|
|
|
o Minor features (build):
|
|
|
- Make autoconf search for libevent, openssl, and zlib consistently.
|
|
|
- - Update deprecated macros in configure.in
|
|
|
+ - Update deprecated macros in configure.in.
|
|
|
- When warning about missing headers, tell the user to let us
|
|
|
know if the compile succeeds anyway, so we can downgrade the
|
|
|
warning.
|
|
@@ -64,17 +67,18 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
- Always prepend "Bug: " to any log message about a bug.
|
|
|
- Put a platform string (e.g. "Linux i686") in the startup log
|
|
|
message, so when people paste just their logs, we know if it's
|
|
|
- openbsd or windows or what.
|
|
|
+ OpenBSD or Windows or what.
|
|
|
- When logging memory usage, break down memory used in buffers by
|
|
|
buffer type.
|
|
|
|
|
|
o Minor features (directory system):
|
|
|
- Directory authorities accept and serve "extra info" documents for
|
|
|
- routers. These documents contain fields from router descriptors that
|
|
|
- aren't usually needed, and that use a lot of excess bandwidth. Once
|
|
|
- these fields are removed from router descriptors, the bandwidth savings
|
|
|
- should be about 60%. (Limitation: servers do not yet upload extra-info
|
|
|
- documents.) [Partially implements proposal 104.]
|
|
|
+ routers. These documents contain fields from router descriptors
|
|
|
+ that aren't usually needed, and that use a lot of excess
|
|
|
+ bandwidth. Once these fields are removed from router descriptors,
|
|
|
+ the bandwidth savings should be about 60%. (Limitation: servers
|
|
|
+ do not yet upload extra-info documents.) [Partially implements
|
|
|
+ proposal 104.]
|
|
|
- Directory authorities allow multiple router descriptors and/or extra
|
|
|
info documents to be uploaded in a single go. This will make
|
|
|
implementing proposal 104 simpler.
|
|
@@ -89,12 +93,11 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
- Let the controller specify HOP=%d as an argument to ATTACHSTREAM,
|
|
|
so we can exit from the middle of the circuit.
|
|
|
- Implement "getinfo status/circuit-established".
|
|
|
- - Implement "getinfo status/version/..." so a controller can tell whether
|
|
|
- the current version is recommended, and whether any versions are good,
|
|
|
- and how many authorities agree. (Patch from shibz.)
|
|
|
+ - Implement "getinfo status/version/..." so a controller can tell
|
|
|
+ whether the current version is recommended, and whether any versions
|
|
|
+ are good, and how many authorities agree. (Patch from shibz.)
|
|
|
|
|
|
o Minor features (other):
|
|
|
- - Correctly report Windows 95 OSR2 and Windows 98 SE.
|
|
|
- More unit tests.
|
|
|
|
|
|
o Removed features:
|
|
@@ -110,6 +113,13 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
- Even though windows is equally happy with / and \ as path separators,
|
|
|
try to use \ consistently on windows and / consistently on unix: it
|
|
|
makes the log messages nicer.
|
|
|
+ - Correctly report platform name on Windows 95 OSR2 and Windows 98 SE.
|
|
|
+
|
|
|
+ o Minor bugfixes (directory):
|
|
|
+ - Correctly enforce that elements of directory objects do not appear
|
|
|
+ more often than they are allowed to appear.
|
|
|
+ - When we are reporting the DirServer line we just parsed, we were
|
|
|
+ logging the second stanza of the key fingerprint, not the first.
|
|
|
|
|
|
o Minor bugfixes (other):
|
|
|
- Stop allowing hibernating servers to be "stable" or "fast".
|
|
@@ -117,28 +127,22 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
- Don't save non-general-purpose router descriptors to the disk cache,
|
|
|
because we have no way of remembering what their purpose was when
|
|
|
we restart.
|
|
|
- - Correctly enforce that elements of directory objects do not appear
|
|
|
- more often than they are allowed to appear.
|
|
|
- - Fix a bug in dirserv_remove_invalid() that would cause authorities to
|
|
|
- corrupt memory under some really unlikely scenarios.
|
|
|
- Add even more asserts to hunt down bug 417.
|
|
|
- - When we are reporting the DirServer line we just parsed, we were
|
|
|
- logging the second stanza of the key fingerprint, not the first.
|
|
|
- On Windows, we were preventing other processes from reading
|
|
|
cached-routers while Tor was running. (Reported by janbar)
|
|
|
|
|
|
- o Minor bugfixes (controller), reported by daejees:
|
|
|
+ o Minor bugfixes (controller):
|
|
|
- Make 'getinfo fingerprint' return a 551 error if we're not a
|
|
|
- server, so we match what the control spec claims we do.
|
|
|
+ server, so we match what the control spec claims we do. Reported
|
|
|
+ by daejees.
|
|
|
- Fix a typo in an error message when extendcircuit fails that
|
|
|
- caused us to not follow the \r\n-based delimiter protocol.
|
|
|
+ caused us to not follow the \r\n-based delimiter protocol. Reported
|
|
|
+ by daejees.
|
|
|
- The control spec described a GUARDS event, but the code
|
|
|
implemented a GUARD event. Standardize on GUARD, but support people
|
|
|
- asking for GUARDS too.
|
|
|
+ asking for GUARDS too. Reported by daejees.
|
|
|
- Correct the control spec to match how the code actually responds
|
|
|
- to 'getinfo addr-mappings/*'.
|
|
|
-
|
|
|
- o Minor bugfixes (controller):
|
|
|
+ to 'getinfo addr-mappings/*'. Reported by daejees.
|
|
|
- Actually set the purpose correctly for descriptors inserted with
|
|
|
purpose=controller.
|
|
|
|
|
@@ -146,10 +150,10 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
|
|
|
- Stop passing around circuit_t and crypt_path_t pointers that are
|
|
|
implicit in other procedure arguments.
|
|
|
- Drop the old code to choke directory connections when the corresponding
|
|
|
- or connections got full: thanks to the cell queue feature, or conns
|
|
|
+ OR connections got full: thanks to the cell queue feature, OR conns
|
|
|
don't get full any more.
|
|
|
- - Make dns_resolve handle attaching connections to circuits properly,
|
|
|
- so the caller doesn't have to.
|
|
|
+ - Make dns_resolve() handle attaching connections to circuits
|
|
|
+ properly, so the caller doesn't have to.
|
|
|
- Rename wants_to_read and wants_to_write to read/write_blocked_on_bw.
|
|
|
|
|
|
|