aboutsummaryrefslogtreecommitdiff
path: root/src/or
AgeCommit message (Collapse)Author
2011-01-03Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2011-01-03Bump copyright statements to 2011 (0.2.2)Nick Mathewson
2011-01-03Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson
Conflicts: src/common/test.h src/or/test.c
2011-01-03Bump copyright statements to 2011Nick Mathewson
2010-12-22Disable stats requiring geoip info if we have noneSebastian Hahn
In other parts of the code we will otherwise attempt to collect these statistics, and that will lead to crashes.
2010-12-21Merge remote branch 'karsten/dirreq-stats-default'Nick Mathewson
Conflicts: src/or/config.c
2010-12-21Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-21Merge remote branch 'public/bug2060' into maint-0.2.2Nick Mathewson
2010-12-21Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-21Merge remote branch 'rransom/bug2190_the_hard_way' into maint-0.2.2Nick Mathewson
2010-12-19Merge branch 'maint-0.2.2'Roger Dingledine
2010-12-16Merge commit 'nickm/fix_security_bug_022' into maint-0.2.2Roger Dingledine
2010-12-16Merge commit 'nickm/fix_security_bug_021' into maint-0.2.1Roger Dingledine
2010-12-16Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-16Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson
2010-12-16Change gabelmoo's IP address and ports.Karsten Loesing
2010-12-15Merge remote branch fix_security_bug_021 into fix_security_bug_022Nick Mathewson
Conflicts: src/common/memarea.c src/or/or.h src/or/rendclient.c
2010-12-15Make payloads into uint8_t.Nick Mathewson
This will avoid some signed/unsigned assignment-related bugs.
2010-12-07Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-07Merge branch 'bug2081_followup_022' into maint-0.2.2Nick Mathewson
2010-12-07Reject relay versions older than 0.2.0.26-rcNick Mathewson
This was the first version to cache the correct directory information. Fixes bug 2156.
2010-12-06Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-06Fix a bug in calculating wakeup time on 64-bit machines.Nick Mathewson
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.)
2010-12-06Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-06Add a missing ! to directory_fetches_from_authoritiesNick Mathewson
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.
2010-12-06Fetch missing certs to authenticate microdesc consensuses as neededNick Mathewson
Fixes bug 2253; fix by rransom
2010-12-03Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-03Don't crash when accountingmax is set in non-server TorsNick Mathewson
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.
2010-12-03Make connection direction statistics compile again.Karsten Loesing
2010-12-03Write bidirectional connection stats in single line.Karsten Loesing
There's no need to have a separate line conn-stats-end for the end date and interval length with only a single line conn-bi-direct following.
2010-12-03Refactor conn stats and add unit tests.Karsten Loesing
2010-12-03Document BIDI_* constants.Karsten Loesing
2010-12-03Call the new config option ConnDirectionStatistics.Karsten Loesing
2010-12-03Add metric on uni/bidirectional connection usage.Karsten Loesing
2010-12-02Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-12-02Fix a harmless off-by-one error in counting controller argument lengthsNick Mathewson
Bugfix on 0.1.1.1-alpha; found by boboper.
2010-12-01Merge remote branch 'sjmurdoch/cloexec'Nick Mathewson
2010-12-01Open connection to DNS resolvers with CLOEXEC flag setSteven Murdoch
NB: this will now register the socket with the socket accounting code
2010-11-30Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
Conflicts: src/or/relay.c
2010-11-30Do not invoke tls_renegotiated_cb for non-bufferevent connections too early.Nick Mathewson
This is not the most beautiful fix for this problem, but it is the simplest. Bugfix for 2205. Thanks to Sebastian and Mashael for finding the bug, and boboper/cypherpunks for figuring out why it was happening and how to fix it, and for writing a few fixes.
2010-11-30fix memory leak introduced in 26e89742Roger Dingledine
found via valgrind
2010-11-29Revise comment on 2210 a little; clean up n_streams/num_streams confusionNick Mathewson
Also add a changes file
2010-11-29Add wrappers function for libc random()Nick Mathewson
On windows, it's called something different.
2010-11-29Fix whitespace in patch for 2210 and backport to 0.2.2Nick Mathewson
2010-11-29Improve fairness when activating streams in circuit_resume_edge_reading_helperMashael AlSabah
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.
2010-11-29Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2010-11-29Merge branch 'exitstats' into maint-0.2.2Nick Mathewson
2010-11-29comment karsten's bug2196 patch a littleNick Mathewson
2010-11-24Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
Conflicts: configure.in contrib/tor-mingw.nsi.in src/win32/orconfig.h
2010-11-24Avoid dereferencing NULL if a bridge fails to build an ei descriptor.Robert Ransom
Reported by an anonymous commenter on Trac.