aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Fix a function formatting warning in rephist.cNick Mathewson2011-01-03
|
* Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2011-01-03
|\ | | | | | | | | Conflicts: src/or/routerparse.c
| * fix whitespace issuesNick Mathewson2011-01-03
| |
* | Bump copyright statements to 2011 (0.2.2)Nick Mathewson2011-01-03
| |
* | Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2011-01-03
|\| | | | | | | | | | | Conflicts: src/common/test.h src/or/test.c
| * Bump copyright statements to 2011Nick Mathewson2011-01-03
| |
| * Merge remote branch 'public/bug2190_021' into maint-0.2.1Nick Mathewson2010-12-21
| |\
| | * Do not send Libevent log messages to a controller (0.2.1 backport)Nick Mathewson2010-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Doing so could make Libevent call Libevent from inside a Libevent logging call, which is a recipe for reentrant confusion and hard-to-debug crashes. This would especially hurt if Libevent debug-level logging is enabled AND the user has a controller watching for low-severity log messages. Fix bug 2190; fix on 0.1.0.2-rc.
| * | Merge commit 'nickm/fix_security_bug_021' into maint-0.2.1Roger Dingledine2010-12-16
| |\ \
* | \ \ Merge remote branch 'public/bug2060' into maint-0.2.2Nick Mathewson2010-12-21
|\ \ \ \
| * | | | Disable DirPort when BridgeRelay is setNick Mathewson2010-11-22
| | | | |
* | | | | Merge remote branch 'rransom/bug2190_the_hard_way' into maint-0.2.2Nick Mathewson2010-12-21
|\ \ \ \ \
| * | | | | Only add each log message to pending_cb_messages once.Robert Ransom2010-12-11
| | | | | |
| * | | | | Don't call flush_pending_log_callbacks while logging LD_NOCB messages.Robert Ransom2010-12-11
| | | | | | | | | | | | | | | | | | | | | | | | Found by boboper.
| * | | | | Better fix for 2190: defer libevent->controller messages instead of droppingNick Mathewson2010-11-19
| | | | | |
| * | | | | Do not send Libevent log messages to a controller.Nick Mathewson2010-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Doing so could make Libevent call Libevent from inside a Libevent logging call, which is a recipe for reentrant confusion and hard-to-debug crashes. This would especially hurt if Libevent debug-level logging is enabled AND the user has a controller watching for low-severity log messages. Fix bug 2190; fix on 0.1.0.2-rc.
* | | | | | Merge commit 'nickm/fix_security_bug_022' into maint-0.2.2Roger Dingledine2010-12-16
|\ \ \ \ \ \
| * \ \ \ \ \ Merge remote branch fix_security_bug_021 into fix_security_bug_022Nick Mathewson2010-12-15
| |\ \ \ \ \ \ | | | |_|_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/common/memarea.c src/or/or.h src/or/rendclient.c
| | * | | | | Make payloads into uint8_t.Nick Mathewson2010-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This will avoid some signed/unsigned assignment-related bugs.
| | * | | | | Have all of our allocation functions and a few others check for underflowNick Mathewson2010-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's all too easy in C to convert an unsigned value to a signed one, which will (on all modern computers) give you a huge signed value. If you have a size_t value of size greater than SSIZE_T_MAX, that is way likelier to be an underflow than it is to be an actual request for more than 2gb of memory in one go. (There's nothing in Tor that should be trying to allocate >2gb chunks.)
| | * | | | | Base SIZE_T_CEILING on SSIZE_T_MAX.Nick Mathewson2010-12-13
| | | | | | |
* | | | | | | Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2010-12-16
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | / / | | |_|_|/ / | |/| | | |
| * | | | | Change gabelmoo's IP address and ports.Karsten Loesing2010-12-16
| | | | | |
* | | | | | Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2010-12-14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/config/geoip
| * | | | | Update to the December 1 2010 Maxmind GeoLite Country database.Karsten Loesing2010-12-08
| |/ / / /
| * | | | Fix compilation with mingw and OpenSSL 0.9.8m+mingw-san2010-11-23
| | | | |
| * | | | Use S_CASE for ehostunreach, not E_CASE. Partial backport of 69deb22f. Fixes ↵Nick Mathewson2010-11-23
| | | | | | | | | | | | | | | | | | | | 0.2.1 compilation on windows
* | | | | Merge branch 'bug2081_followup_022' into maint-0.2.2Nick Mathewson2010-12-07
|\ \ \ \ \
| * | | | | Reject relay versions older than 0.2.0.26-rcNick Mathewson2010-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was the first version to cache the correct directory information. Fixes bug 2156.
| * | | | | Have authorities reject routers running verions susceptible to bug 1038.Nick Mathewson2010-11-22
| | | | | |
* | | | | | Fix a bug in calculating wakeup time on 64-bit machines.Nick Mathewson2010-12-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you had TIME_MAX > INT_MAX, and your "time_to_exhaust_bw = accountingmax/expected_bandwidth_usage * 60" calculation managed to overflow INT_MAX, then your time_to_consider value could underflow and wind up being rediculously low or high. "Low" was no problem; negative values got caught by the (time_to_consider <= 0) check. "High", however, would get you a wakeup time somewhere in the distant future. The fix is to check for time_to_exhaust_bw overflowing INT_MAX, not TIME_MAX: We don't allow any accounting interval longer than a month, so if time_to_exhaust_bw is significantly larger than 31*24*60*60, we can just clip it. This is a bugfix on 0.0.9pre6, when accounting was first introduced. It fixes bug 2146, unless there are other causes there too. The fix is from boboper. (I tweaked it slightly by removing an assignment that boboper marked as dead, and lowering a variable that no longer needed to be function-scoped.)
* | | | | | Add a missing ! to directory_fetches_from_authoritiesNick Mathewson2010-12-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old logic would have us fetch from authorities if we were refusing unknown exits and our exit policy was reject*. Instead, we want to fetch from authorities if we're refusing unknown exits and our exit policy is _NOT_ reject*. Fixed by boboper. Fixes more of 2097. Bugfix on 0.2.2.16-alpha.
* | | | | | Don't crash when accountingmax is set in non-server TorsNick Mathewson2010-12-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We use a hash of the identity key to seed a prng to tell when an accounting period should end. But thanks to the bug998 changes, clients no longer have server-identity keys to use as a long-term seed in accounting calculations. In any case, their identity keys (as used in TLS) were never never fixed. So we can just set the wakeup time from a random seed instead there. Still open is whether everybody should be random. This patch fixes bug 2235, which was introduced in 0.2.2.18-alpha. Diagnosed with help from boboper on irc.
* | | | | | Fix a harmless off-by-one error in counting controller argument lengthsNick Mathewson2010-12-02
| | | | | | | | | | | | | | | | | | | | | | | | Bugfix on 0.1.1.1-alpha; found by boboper.
* | | | | | Revise comment on 2210 a little; clean up n_streams/num_streams confusionNick Mathewson2010-11-29
| | | | | | | | | | | | | | | | | | | | | | | | Also add a changes file
* | | | | | Add wrappers function for libc random()Nick Mathewson2010-11-29
| | | | | | | | | | | | | | | | | | | | | | | | On windows, it's called something different.
* | | | | | Fix whitespace in patch for 2210 and backport to 0.2.2Nick Mathewson2010-11-29
| | | | | |
* | | | | | Improve fairness when activating streams in circuit_resume_edge_reading_helperMashael AlSabah2010-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The reason the "streams problem" occurs is due to the complicated interaction between Tor's congestion control and libevent. At some point during the experiment, the circuit window is exhausted, which blocks all edge streams. When a circuit level sendme is received at Exit, it resumes edge reading by looping over linked list of edge streams, and calling connection_start_reading() to inform libevent to resume reading. When the streams are activated again, Tor gets the chance to service the first three streams activated before the circuit window is exhausted again, which causes all streams to be blocked again. As an experiment, we reversed the order in which the streams are activated, and indeed the first three streams, rather than the last three, got service, while the others starved. Our solution is to change the order in which streams are activated. We choose a random edge connection from the linked list, and then we activate streams starting from that chosen stream. When we reach the end of the list, then we continue from the head of the list until our chosen stream (treating the linked list as a circular linked list). It would probably be better to actually remember which streams have received service recently, but this way is simple and effective.
* | | | | | Merge branch 'exitstats' into maint-0.2.2Nick Mathewson2010-11-29
|\ \ \ \ \ \
| * | | | | | comment karsten's bug2196 patch a littleNick Mathewson2010-11-29
| | | | | | |
| * | | | | | Report only the top 10 ports in exit-port stats.Karsten Loesing2010-11-24
| | |_|_|/ / | |/| | | |
* / | | | | Avoid dereferencing NULL if a bridge fails to build an ei descriptor.Robert Ransom2010-11-24
|/ / / / / | | | | | | | | | | | | | | | Reported by an anonymous commenter on Trac.
* / / / / bump to 0.2.2.19-alphaRoger Dingledine2010-11-21
|/ / / /
* | / / Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2010-11-21
|\| | | | |/ / |/| |
| * | Merge branch 'fix2204' into maint-0.2.1Nick Mathewson2010-11-21
| |\ \ | | |/ | |/|
| | * Do not set the hostname TLS extension server-side; only client-sideNick Mathewson2010-11-20
| | | | | | | | | | | | | | | This may fix bug 2204, and resolve the incompatibility with openssl 0.9.8p/1.0.0b.
| * | Disable logging to control port connections in buf_shrink_freelists.Robert Ransom2010-11-12
| | | | | | | | | | | | | | | If buf_shrink_freelists calls log_warn for some reason, we don't want the log call itself to throw buf_shrink_freelists further off the rails.
| * | Move the original log_info call out of the core of buf_shrink_freelists.Robert Ransom2010-11-12
| |/ | | | | | | | | | | | | | | Sending a log message to a control port can cause Tor to allocate a buffer, thereby changing the length of the freelist behind buf_shrink_freelists's back, thereby causing an assertion to fail. Fixes bug #1125.
* | Fix a unit test broken by fix for 2195Nick Mathewson2010-11-19
| |
| |
| \
*-. \ Merge branch 'fix2183', remote branch 'rransom/fix2195-v2' into maint-0.2.2Nick Mathewson2010-11-19
|\ \ \