summaryrefslogtreecommitdiff
path: root/src/or/connection.c
AgeCommit message (Collapse)Author
2010-08-18Add a generic rate-limited log mechanism, and use it in a few placesNick Mathewson
Incidentally fixes bug 1042.
2010-08-18Merge commit 'karsten/dirbytes2'Nick Mathewson
Conflicts: src/or/rephist.h
2010-08-18Correctly report written bytes on linked connections.Karsten Loesing
2010-08-18Count bytes we spend on answering directory requests.Karsten Loesing
2010-08-15Merge commit 'sebastian/bug1831'Nick Mathewson
2010-08-16Fix misplaced labelsSebastian Hahn
2010-08-11Refactor exit port statistics code and add unit tests.Karsten Loesing
2010-07-27Create routerparse.hSebastian Hahn
2010-07-27Create rephist.hSebastian Hahn
2010-07-27Create relay.hSebastian Hahn
2010-07-27Create reasons.hSebastian Hahn
2010-07-27Create policies.hSebastian Hahn
2010-07-27Create main.hSebastian Hahn
2010-07-27Create dns.hSebastian Hahn
2010-07-27Create dirserv.hSebastian Hahn
2010-07-27Create directory.hSebastian Hahn
2010-07-27Create cpuworker.hSebastian Hahn
2010-07-27Create control.hSebastian Hahn
2010-07-27Create connection_or.hSebastian Hahn
2010-07-27Create connection_edge.hSebastian Hahn
2010-07-27Create connection.hSebastian Hahn
2010-07-27Create config.hSebastian Hahn
2010-07-27Create circuituse.hSebastian Hahn
2010-07-27Create circuitlist.hSebastian Hahn
2010-07-27Create circuitbuild.hSebastian Hahn
2010-07-27Create buffers.hSebastian Hahn
2010-07-27Create rendclient.hSebastian Hahn
2010-07-27Create rendcommon.hSebastian Hahn
2010-07-27Create router.hSebastian Hahn
2010-07-27Create geoip.hSebastian Hahn
2010-07-27Split headers for dnsserv.c functions out of or.hSebastian Hahn
The next series of commits begins addressing the issue that we're currently including the complete or.h file in all of our source files. To change that, we're splitting function definitions into new header files (one header file per source file).
2010-03-05commit my annotations while i was hunting down the host order bugRoger Dingledine
2010-02-27Merge remote branch 'origin/maint-0.2.1'Nick Mathewson
Conflicts: src/common/test.h src/or/test.c
2010-02-27Update Tor Project copyright yearsNick Mathewson
2010-02-08Don't spam controllers with TOO_MANY_CONNECTIONS eventsSebastian Hahn
We implemented ratelimiting for warnings going into the logfile, but didn't rate-limit controller events. Now both log warnings and controller events are rate-limited.
2010-01-20Don't use OutboundBindAddress to connect to localhostNick Mathewson
The OutboundBindAddress option is useful for making sure that all of your outbond connections use a given interface. But when connecting to 127.0.0.1 (or ::1 even) it's important to actually have the connection come _from_ localhost, since lots of programs running on localhost use the source address to authenticate that the connection is really coming from the same host. Our old code always bound to OutboundBindAddress, whether connecting to localhost or not. This would potentially break DNS servers on localhost, and socks proxies on localhost. This patch changes the behavior so that we only look at OutboundBindAddress when connecting to a non-loopback address.
2010-01-18Log a notice when we get a new control connectionSebastian Hahn
2010-01-15whitespace fixesRoger Dingledine
2009-12-29add separate per-conn write limitingRoger Dingledine
2009-12-18Merge branch 'ewma'Nick Mathewson
2009-12-18Remove duplicate words and a duplicate newline.Karsten Loesing
2009-12-15Merge branch 'safelogging2'Nick Mathewson
Conflicts: ChangeLog
2009-12-15Refactor the safe_str_*() API to make more sense.Nick Mathewson
The new rule is: safe_str_X() means "this string is a piece of X information; make it safe to log." safe_str() on its own means "this string is a piece of who-knows-what; make it safe to log".
2009-12-13Optimize cell-ewma circuit priority algorithm.Nick Mathewson
There are two big changes here: - We store active circuits in a priority queue for each or_conn, rather than doing a linear search over all the active circuits before we send each cell. - Rather than multiplying every circuit's cell-ewma by a decay factor every time we send a cell (thus normalizing the value of a current cell to 1.0 and a past cell to alpha^t), we instead only scale down the cell-ewma every tick (ten seconds atm), normalizing so that a cell sent at the start of the tick has value 1.0).
2009-12-12Adjust EWMA patch to conform to whitespace style.Nick Mathewson
2009-12-12Favor quiet circuits when choosing which order to relay cells in.Can Tang
Each circuit is ranked in terms of how many cells from it have been relayed recently, using a time-weighted average. This patch has been tested this on a private Tor network on PlanetLab, and gotten improvements of 12-35% in time it takes to fetch a small web page while there's a simultaneous large data transfer going on simultaneously. [Commit msg by nickm based on mail from Ian Goldberg.]
2009-12-12Now that FOO_free(NULL) always works, remove checks before calling it.Nick Mathewson
2009-12-12*_free functions now accept NULLSebastian Hahn
Some *_free functions threw asserts when passed NULL. Now all of them accept NULL as input and perform no action when called that way. This gains us consistence for our free functions, and allows some code simplifications where an explicit null check is no longer necessary.
2009-12-12Allow SafeLogging to exclude client related informationSebastian Hahn
2009-11-21clobber connections with different number than we clobber circuitsRoger Dingledine