Loading ChangeLog +24 −80 Changes for ChangeLog: 24 added lines, 80 removed lines. Original line number Diff line number Diff line Changes in version 0.2.1.1-alpha - 2008-??-?? o Major bugfixes: - When we switched to using v3 directories, we threw away the part of the "do we have enough directory info?" calculation that checked how many relays we believed to still be running based on our own experience. So if we went offline, we never gave up trying to make new circuits; worse, when we came back online we didn't recognize that we should give all the relays another chance. Bugfix on 0.2.0.9-alpha; fixes bugs 648 and 675. o Minor bugfixes: - Stop giving double-close warn when we reject an address for client DNS. - On Windows, correctly detect errors when listing the contents of a directory. Fix from lodger. (Bugfix on 0.1.2.x.) - Fix the implementation of ClientDNSRejectInternalAddresses so that it actually works, and doesn't warn about every single reverse lookup. Fixes the other part of bug 617. Bugfix on 0.2.0.1-alpha. - Keep address policies from leaking: start their refcount at 1, not 2. Bugfix on 0.2.0.16-alpha. - Free authority certificates on exit, so they don't look like memory leaks. Bugfix on 0.2.0.19-alpha. - Free static hashtables for policy maps and for TLS connections on shutdown, so they don't look like memory leaks. Bugfix on 0.2.0.x. - Stop giving double-close warn when we reject an address for client DNS. - Make relay cells written on a connection count as non-padding when tracking how long a connection has been in use. Bugfix on 0.2.0.1-alpha. Spotted by lodger. - Reduce the default smartlist size from 32 to 16; it turns out that most smartlists hold around 8-12 elements tops. - Avoid allocating extra space when computing consensuses on 64-bit platforms. Bug spotted by aakova. - Use recursive pthread mutexes in order to avoid deadlock when logging debug-level messages to a controller. Bug spotted by nwf, bugfix on 0.2.0.16-alpha. - Warn less verbosely about clock skew from netinfo cells from untrusted sources. Fixes bug 663. - Non-exit relays no longer allow DNS requests. Fixes bug 619. Patch from Lodger. - Make controller stream events for DNS requests more consistent, by adding "new stream" events for DNS requests, and removing spurious "stream closed" events" for cached reverse resolves. Patch from mwenge. Fixes bug 646. - Correctly notify one-hop connections when a circuit build has failed. Possible fix for bug 669. Found by lodger. - When we choose to abandon a new entry guard because we think our older ones might be better, close any circuits pending on that new entry guard connection. Bugfix on 0.1.2.8-beta; found by lodger. - Detect address changes correctly on non-directory mirror servers. Fix for bug 652. - Authorities correctly free policies on bad servers on exit. Fixes bug 672. - When tunneling an encrypted directory connection, and its first circuit fails do not leave it unattached and ask the controller to deal. Fixes the second part of bug 681. - Make bridge authorities correctly clean extrainfo store from time to time. Bugfix on 0.2.0.x. - Stop reloading the router list from disk for no reason when we run out of reachable directory mirrors. Once upon a time reloading it would set the 'is_running' flag back to 1 for them. It hasn't done that for a long time. - In very rare situations new hidden service descriptors were published earlier than 30 seconds after the last change to the service, with the 30 seconds being the current voodoo saying that a descriptor is stable. - While setting up a hidden service, some valid introduction circuits were overlooked and given up. This might be the reason for the long delay in making a hidden service available. Bugfix on 0.2.0.13-alpha. - In very rare situations new hidden service descriptors were published earlier than 30 seconds after the last change to the service, with the 30 seconds being the current voodoo saying that a descriptor is stable. o Minor features: - Allow separate log levels to be configured for different logging domains. For example, this allows one to log all notices, warnings, or errors, plus all memory management messages of level debug or higher, with: Log [MM] debug-err [*] notice-err file /var/log/tor. domains. For example, this allows one to log all notices, warnings, or errors, plus all memory management messages of level debug or higher, with: Log [MM] debug-err [*] notice-err file /var/log/tor. - Add a malloc_good_size implementation to OpenBSD_malloc_linux.c, to avoid unused RAM in buffer chunks and memory pools. - Downgrade "sslv3 alert handshake failure" message to INFO. - Add a couple of extra warnings to --enable-gcc-warnings for GCC 4.3, and stop using a warning that had become unfixably verbose under GCC 4.3. - Start using OpenSSL's RAND_poll() for better (and more portable) and stop using a warning that had become unfixably verbose under GCC 4.3. - Resume using OpenSSL's RAND_poll() for better (and more portable) cross-platform entropy collection again. We used to use it, then stopped using it because of a bug that could crash systems that called RAND_poll when they had a lot of fds open. It looks like the bug got fixed in late 2006. Our new behavior is to call RAND_poll() at startup, and to call RAND_poll() when we reseed later only if we have a non-buggy OpenSSL version. stopped using it because of a bug that could crash systems that called RAND_poll when they had a lot of fds open. It looks like the bug got fixed in late 2006. Our new behavior is to call RAND_poll() at startup, and to call RAND_poll() when we reseed later only if we have a non-buggy OpenSSL version. - Speed up parsing and cut down on memory fragmentation by using stack-style allocations for parsing directory objects. Previously, this accounted for over 40% of allocations from within Tor's code Loading @@ -92,8 +46,8 @@ Changes in version 0.2.1.1-alpha - 2008-??-?? output to messages of warning and error severity. - Use a Bloom filter rather than a digest-based set to track which descriptors we need to keep around when we're cleaning out old router descriptors. This speeds up the computation significantly, and may reduce fragmentation. router descriptors. This speeds up the computation significantly, and may reduce fragmentation. - Make dumpstats() log the fullness and size of openssl-internal buffers. - Servers support a new URL scheme for consensus downloads that Loading @@ -101,33 +55,23 @@ Changes in version 0.2.1.1-alpha - 2008-??-?? The server then only sends the consensus if the client will trust it. Otherwise a 404 error is sent back. Clients use this new scheme when the server supports it. - Add a new V3AuthUseLegacyKey option to make it easier for authorities to change their identity keys if they have to. - If the user has applied the experimental SSL_MODE_RELEASE_BUFFERS patch to their OpenSSL, turn it on to save memory on servers. This patch will (with any luck) get included in a mainline distribution before too long. - Add a "PURPOSE=" argument to "STREAM NEW" events, as suggested by Robert Hogan. Fixes the first part of bug 681. - Make bridge authorities never serve extrainfo docs. - Allow comments in geoip file. - New configure/torrc options (--enable-geoip-stats, DirRecordUsageByCountry) to record how many IPs we've served directory info to in each country code, how many status documents total we've sent to each country code, and what share of the total DirRecordUsageByCountry) to record how many IPs we've served directory info to in each country code, how many status documents total we've sent to each country code, and what share of the total directory requests we should expect to see. - Never use OpenSSL compression: it wastes RAM and CPU trying to compress cells, which are basically all encrypted, compressed, or both. o Minor features (security): - Reject requests for reverse-dns lookup of names in a private address space. Patch from Lodger. o Code simplifications and refactoring: - Refactor code using connection_ap_handshake_attach_circuit() to allow that function to mark connections for close. Part of a fix for bug 617. Bugfix on 0.2.0.1-alpha. allow that function to mark connections for close. Part of a fix for bug 617. Bugfix on 0.2.0.1-alpha. - Add a macro to implement the common pattern of iterating through two parallel lists in lockstep. Loading Loading
ChangeLog +24 −80 Changes for ChangeLog: 24 added lines, 80 removed lines. Original line number Diff line number Diff line Changes in version 0.2.1.1-alpha - 2008-??-?? o Major bugfixes: - When we switched to using v3 directories, we threw away the part of the "do we have enough directory info?" calculation that checked how many relays we believed to still be running based on our own experience. So if we went offline, we never gave up trying to make new circuits; worse, when we came back online we didn't recognize that we should give all the relays another chance. Bugfix on 0.2.0.9-alpha; fixes bugs 648 and 675. o Minor bugfixes: - Stop giving double-close warn when we reject an address for client DNS. - On Windows, correctly detect errors when listing the contents of a directory. Fix from lodger. (Bugfix on 0.1.2.x.) - Fix the implementation of ClientDNSRejectInternalAddresses so that it actually works, and doesn't warn about every single reverse lookup. Fixes the other part of bug 617. Bugfix on 0.2.0.1-alpha. - Keep address policies from leaking: start their refcount at 1, not 2. Bugfix on 0.2.0.16-alpha. - Free authority certificates on exit, so they don't look like memory leaks. Bugfix on 0.2.0.19-alpha. - Free static hashtables for policy maps and for TLS connections on shutdown, so they don't look like memory leaks. Bugfix on 0.2.0.x. - Stop giving double-close warn when we reject an address for client DNS. - Make relay cells written on a connection count as non-padding when tracking how long a connection has been in use. Bugfix on 0.2.0.1-alpha. Spotted by lodger. - Reduce the default smartlist size from 32 to 16; it turns out that most smartlists hold around 8-12 elements tops. - Avoid allocating extra space when computing consensuses on 64-bit platforms. Bug spotted by aakova. - Use recursive pthread mutexes in order to avoid deadlock when logging debug-level messages to a controller. Bug spotted by nwf, bugfix on 0.2.0.16-alpha. - Warn less verbosely about clock skew from netinfo cells from untrusted sources. Fixes bug 663. - Non-exit relays no longer allow DNS requests. Fixes bug 619. Patch from Lodger. - Make controller stream events for DNS requests more consistent, by adding "new stream" events for DNS requests, and removing spurious "stream closed" events" for cached reverse resolves. Patch from mwenge. Fixes bug 646. - Correctly notify one-hop connections when a circuit build has failed. Possible fix for bug 669. Found by lodger. - When we choose to abandon a new entry guard because we think our older ones might be better, close any circuits pending on that new entry guard connection. Bugfix on 0.1.2.8-beta; found by lodger. - Detect address changes correctly on non-directory mirror servers. Fix for bug 652. - Authorities correctly free policies on bad servers on exit. Fixes bug 672. - When tunneling an encrypted directory connection, and its first circuit fails do not leave it unattached and ask the controller to deal. Fixes the second part of bug 681. - Make bridge authorities correctly clean extrainfo store from time to time. Bugfix on 0.2.0.x. - Stop reloading the router list from disk for no reason when we run out of reachable directory mirrors. Once upon a time reloading it would set the 'is_running' flag back to 1 for them. It hasn't done that for a long time. - In very rare situations new hidden service descriptors were published earlier than 30 seconds after the last change to the service, with the 30 seconds being the current voodoo saying that a descriptor is stable. - While setting up a hidden service, some valid introduction circuits were overlooked and given up. This might be the reason for the long delay in making a hidden service available. Bugfix on 0.2.0.13-alpha. - In very rare situations new hidden service descriptors were published earlier than 30 seconds after the last change to the service, with the 30 seconds being the current voodoo saying that a descriptor is stable. o Minor features: - Allow separate log levels to be configured for different logging domains. For example, this allows one to log all notices, warnings, or errors, plus all memory management messages of level debug or higher, with: Log [MM] debug-err [*] notice-err file /var/log/tor. domains. For example, this allows one to log all notices, warnings, or errors, plus all memory management messages of level debug or higher, with: Log [MM] debug-err [*] notice-err file /var/log/tor. - Add a malloc_good_size implementation to OpenBSD_malloc_linux.c, to avoid unused RAM in buffer chunks and memory pools. - Downgrade "sslv3 alert handshake failure" message to INFO. - Add a couple of extra warnings to --enable-gcc-warnings for GCC 4.3, and stop using a warning that had become unfixably verbose under GCC 4.3. - Start using OpenSSL's RAND_poll() for better (and more portable) and stop using a warning that had become unfixably verbose under GCC 4.3. - Resume using OpenSSL's RAND_poll() for better (and more portable) cross-platform entropy collection again. We used to use it, then stopped using it because of a bug that could crash systems that called RAND_poll when they had a lot of fds open. It looks like the bug got fixed in late 2006. Our new behavior is to call RAND_poll() at startup, and to call RAND_poll() when we reseed later only if we have a non-buggy OpenSSL version. stopped using it because of a bug that could crash systems that called RAND_poll when they had a lot of fds open. It looks like the bug got fixed in late 2006. Our new behavior is to call RAND_poll() at startup, and to call RAND_poll() when we reseed later only if we have a non-buggy OpenSSL version. - Speed up parsing and cut down on memory fragmentation by using stack-style allocations for parsing directory objects. Previously, this accounted for over 40% of allocations from within Tor's code Loading @@ -92,8 +46,8 @@ Changes in version 0.2.1.1-alpha - 2008-??-?? output to messages of warning and error severity. - Use a Bloom filter rather than a digest-based set to track which descriptors we need to keep around when we're cleaning out old router descriptors. This speeds up the computation significantly, and may reduce fragmentation. router descriptors. This speeds up the computation significantly, and may reduce fragmentation. - Make dumpstats() log the fullness and size of openssl-internal buffers. - Servers support a new URL scheme for consensus downloads that Loading @@ -101,33 +55,23 @@ Changes in version 0.2.1.1-alpha - 2008-??-?? The server then only sends the consensus if the client will trust it. Otherwise a 404 error is sent back. Clients use this new scheme when the server supports it. - Add a new V3AuthUseLegacyKey option to make it easier for authorities to change their identity keys if they have to. - If the user has applied the experimental SSL_MODE_RELEASE_BUFFERS patch to their OpenSSL, turn it on to save memory on servers. This patch will (with any luck) get included in a mainline distribution before too long. - Add a "PURPOSE=" argument to "STREAM NEW" events, as suggested by Robert Hogan. Fixes the first part of bug 681. - Make bridge authorities never serve extrainfo docs. - Allow comments in geoip file. - New configure/torrc options (--enable-geoip-stats, DirRecordUsageByCountry) to record how many IPs we've served directory info to in each country code, how many status documents total we've sent to each country code, and what share of the total DirRecordUsageByCountry) to record how many IPs we've served directory info to in each country code, how many status documents total we've sent to each country code, and what share of the total directory requests we should expect to see. - Never use OpenSSL compression: it wastes RAM and CPU trying to compress cells, which are basically all encrypted, compressed, or both. o Minor features (security): - Reject requests for reverse-dns lookup of names in a private address space. Patch from Lodger. o Code simplifications and refactoring: - Refactor code using connection_ap_handshake_attach_circuit() to allow that function to mark connections for close. Part of a fix for bug 617. Bugfix on 0.2.0.1-alpha. allow that function to mark connections for close. Part of a fix for bug 617. Bugfix on 0.2.0.1-alpha. - Add a macro to implement the common pattern of iterating through two parallel lists in lockstep. Loading