summaryrefslogtreecommitdiff
path: root/changes
AgeCommit message (Collapse)Author
2015-08-21Ensure worker threads actually exit when it is timeSebastian Hahn
This includes a small refactoring to use a new enum (workqueue_reply_t) for the return values instead of just ints.
2015-08-19Merge branch 'ed25519_keygen_squashed'Nick Mathewson
2015-08-19changes file for ed25519_keygen branchNick Mathewson
2015-08-18Merge remote-tracking branch 'teor/feature14882-TestingDirAuthVoteIsStrict-v3'Nick Mathewson
2015-08-18Merge branch 'decouple_controller_events_squashed'Nick Mathewson
2015-08-18Refactor our logic for sending events to controllersNick Mathewson
Previously we'd put these strings right on the controllers' outbufs. But this could cause some trouble, for these reasons: 1) Calling the network stack directly here would make a huge portion of our networking code (from which so much of the rest of Tor is reachable) reachable from everything that potentially generated controller events. 2) Since _some_ events (EVENT_ERR for instance) would cause us to call connection_flush(), every control_event_* function would appear to be able to reach even _more_ of the network stack in our cllgraph. 3) Every time we generated an event, we'd have to walk the whole connection list, which isn't exactly fast. This is an attempt to break down the "blob" described in http://archives.seul.org/tor/dev/Mar-2015/msg00197.html -- the set of functions from which nearly all the other functions in Tor are reachable. Closes ticket 16695.
2015-08-18New TestingDirAuthVote{Exit,Guard,HSDir}IsStrict flagsteor
"option to prevent guard,exit,hsdir flag assignment" "A node will never receive the corresponding flag unless that node is specified in the TestingDirAuthVote{Exit,Guard,HSDir} list, regardless of its uptime, bandwidth, exit policy, or DirPort". Patch modified by "teor": VoteOnHidServDirectoriesV2 is now obsolete, so TestingDirAuthVoteHSDir always votes on HSDirs. Closes ticket 14882. Patch by "robgjansen". Commit message and changes file by "teor" with quotes from "robgjansen".
2015-08-17Merge remote-tracking branches 'public/decouple_lost_owner' and ↵Nick Mathewson
'public/decouple_signals'
2015-08-17Merge remote-tracking branch 'yawning/feature16535'Nick Mathewson
2015-08-17Enable ed25519-donna's SSE2 code when possible for 32 bit x86.Yawning Angel
This probably requires the user to manually set CFLAGS, but should result in a net gain on 32 bit x86. Enabling SSE2 support would be possible on x86_64, but will result in slower performance. Implements feature #16535.
2015-08-17Merge remote-tracking branch 'public/bug16741_026'Nick Mathewson
2015-08-17Merge remote-tracking branch 'yawning/feature16533'Nick Mathewson
2015-08-17Merge remote-tracking branch 'public/decouple_retry_directory'Nick Mathewson
2015-08-14Increase AccountingMax example value to 40 GB.Nick Mathewson
(Change not made in torrc.minimal.in; only in torrc.sample and torrc.minimal.in-staging) Closes ticket 16742.
2015-08-14Merge remote-tracking branch 'public/decouple_init_keys'Nick Mathewson
2015-08-13Decouple routerlist_retry_directory_downloads() from the blobNick Mathewson
Instead of having it call update_all_descriptor_downloads and update_networkstatus_downloads directly, we can have it cause them to get rescheduled and called from run_scheduled_events. Closes ticket 16789.
2015-08-13Change lost_owning_controller() to call activate_signal().Nick Mathewson
Closes ticket 16788.
2015-08-13Add changes file for #16389David Goulet
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-12Merge branch 'bug16539'Nick Mathewson
2015-08-12whoops; add a stale changes fileNick Mathewson
2015-08-12Fix a memory leak when adding an ri with expired ed certsNick Mathewson
Fixes bug 16539; bugfix on 0.2.7.2-alpha.
2015-08-12Use ed25519-donna's batch verification support when applicable.Yawning Angel
The code was always in our Ed25519 wrappers, so enable it when using the ed25519-donna backend, and deal with the mocking related crypto_rand silliness. Implements feature 16533.
2015-08-12Decouple the backend for directory_all_unreachable to simplify our CFGNick Mathewson
See ticket 16762.
2015-08-11Split the client-only parts of init_keys() into a separate functionNick Mathewson
This should simplify the callgraph a little more.
2015-08-11Make HSDir depend on Running/Valid again.Nick Mathewson
When we removed Running/Valid checks from Fast and Stable in 8712, I removed them from HSDir too, which apparently wasn't a good idea. Reverts part of a65e835800b1af2c2a4c215b. Fixes bug 16524. Bugfix on 0.2.7.2-alpha.
2015-08-10Remove a 9-function strongly connected component of tor's callgraph.Nick Mathewson
microdesc_free_() called get_microdesc_cache(), which had the fun side-effect of potentially reloading the whole cache from disk. Replace it with a variant that doesn't.
2015-08-10Merge remote-tracking branch 'dgoulet/bug16274_027_02'Nick Mathewson
2015-08-07Check for EINTR correctly on windowsNick Mathewson
(even though these are nonblocking calls and EINTR shouldn't be possible). Also, log what error we're seing if drain_fn fails.
2015-08-06Merge remote-tracking branch 'public/decouple-write'Nick Mathewson
2015-08-06Merge remote-tracking branch 'public/bug16286'Nick Mathewson
2015-08-05Set the open file limit to the current value before changing itDavid Goulet
If setrlimit() failed, max_out wasn't set in set_max_file_descriptors() ending in a state where we don't use ULIMIT_BUFFER for things like tor private key files. Also fix the set_max_file_descriptors() documentation. Fixes #16274 Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-08-05Let's try to get test_workqueue working on windowsNick Mathewson
2015-08-04Merge remote-tracking branch 'public/bug13338'Nick Mathewson
2015-08-04Switch order of unblocking threads and releasing the mutex.cypherpunks
According to POSIX, the mutex must be locked by the thread calling the signal functions to ensure predictable scheduling behavior. Found the issue using Helgrind which gave the warning `dubious: associated lock is not held by any thread`.
2015-08-03When building with coverage, run chutney with coverageNick Mathewson
Previously, this required me to do stuff like 'cp src/or/tor-cov src/or/tor' , which is pretty embarrassing.
2015-08-03Improved targets for "run all the tests, no, all of them."Nick Mathewson
2015-07-31Improve log messages for problems about ed25519 keypinningNick Mathewson
Fixes 16286; bugfix on 0.2.7.2-alpha.
2015-07-30Add get_max_sockets() and remove dead codeDavid Goulet
The control port was using set_max_file_descriptors() with a limit set to 0 to query the number of maximum socket Tor can use. With the recent changes to that function, a check was introduced to make sure a user can not set a value below the amount we reserved for non socket. This commit adds get_max_sockets() that returns the value of max_sockets so we can stop using that "setter" function to get the current value. Finally, the dead code is removed that is the code that checked for limit equal to 0. From now on, set_max_file_descriptors() should never be used with a limit set to 0 for a valid use case. Fixes #16697 Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-07-30Do not autoflush control connections as their outbufs get bigNick Mathewson
Doing this is no longer necessary, and it leads to weird recursions in our call graph. Closes ticket 16480.
2015-07-30changes file for callgraph scriptsNick Mathewson
2015-07-30Wrap windows-only C files in #ifdef _WIN32Nick Mathewson
This should make some scripts and IDEs happier.
2015-07-29Merge remote-tracking branch 'origin/maint-0.2.6'Nick Mathewson
2015-07-29Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6Nick Mathewson
2015-07-29Merge remote-tracking branch 'origin/maint-0.2.4' into maint-0.2.5Nick Mathewson
2015-07-29Merge remote-tracking branch 'teor/feature14175-chutney-performance-v2'Nick Mathewson
2015-07-29Update geoip and geoip6 to the July 8 2015 database.Karsten Loesing
2015-07-27Fold final entries into changelogtor-0.2.7.2-alphaNick Mathewson
2015-07-27Allow a single trailing `.` when validating FQDNs from SOCKS.Yawning Angel
URI syntax (and DNS syntax) allows for a single trailing `.` to explicitly distinguish between a relative and absolute (fully-qualified) domain name. While this is redundant in that RFC 1928 DOMAINNAME addresses are *always* fully-qualified, certain clients blindly pass the trailing `.` along in the request. Fixes bug 16674; bugfix on 0.2.6.2-alpha.
2015-07-22Merge branch 'ticket2325_squashed'Nick Mathewson
2015-07-21changes file for bug16631Nick Mathewson