summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-12-25Remove some old, commented out codeSebastian Hahn
2009-12-25Remove online config descriptions.Sebastian Hahn
They weren't in sync with reality nor manpage, and only useful to a human who could simply have checked the manpage.
2009-12-25Fix a typoSebastian Hahn
2009-12-23New consensus params "bwconnrate" and "bwconnburst"Roger Dingledine
...to let us rate-limit client connections as they enter the network. It's controlled in the consensus so we can turn it on and off for experiments. It's starting out off. Based on proposal 163.
2009-12-21make the os x tiger compiler shut upRoger Dingledine
it's wrong, but that's our problem not its problem
2009-12-21a changelog and doc fixes for the strictnodes workRoger Dingledine
2009-12-21fix compileRoger Dingledine
2009-12-21Use nodes in ExitNodes even if they're not fast/stableRoger Dingledine
2009-12-21Use nodes in EntryNodes even if they're not fast/stableRoger Dingledine
2009-12-21instrument entry_is_live to tell why our guard isn't liveRoger Dingledine
2009-12-21Be more willing to use an unsuitable circuit for exit.Roger Dingledine
Specifically, there are two cases: a) are we willing to start a new circuit at a node not in your ExitNodes config option, and b) are we willing to make use of a circuit that's already established but has an unsuitable exit. Now we discard all your circuits when you set ExitNodes, so the only way you could end up with an exit circuit that ends at an unsuitable place is if we explicitly ran out of exit nodes, StrictNodes was 0, and we built this circuit to solve a stream that needs solving. Fixes bug in dc322931, which would ignore the just-built circuit because it has an unsuitable exit.
2009-12-21Abandon circs if the user changes Exclude*NodesRoger Dingledine
If ExcludeNodes or ExcludeExitNodes changes on a config reload, mark and discard all our origin circuits.
2009-12-21comments and cleanups, no actual changesRoger Dingledine
2009-12-21Make EntryNodes config option much more aggressive.Roger Dingledine
Before it would prepend your requested entrynodes to your list of guard nodes, but feel free to use others after that. Now it chooses only from your EntryNodes if any of those are available, and only falls back to others if a) they're all down and b) StrictNodes is not set. Also, now we refresh your entry guards from EntryNode at each consensus fetch (rather than just at startup and then they slowly rot as the network changes). The goal here is to make users less likely to set StrictNodes, since it's doing closer to what they expect it should be doing.
2009-12-21Switch to a StrictNodes config option.Roger Dingledine
This is step one of handling ExcludedNodes better. This first step is just to make EntryNodes and ExitNodes do what they did before.
2009-12-19fix some typosRoger Dingledine
2009-12-19start to document commonly used "param" argumentsRoger Dingledine
2009-12-18Merge branch 'ewma'Nick Mathewson
2009-12-18Add a changelog entry for the circuit priority logicNick Mathewson
2009-12-18Merge commit 'karsten/fix-bridge-stats-master-4'Nick Mathewson
2009-12-18Permit an empty "bridge-ips" line when parsing bridge stats.Karsten Loesing
2009-12-18Remove duplicate words and a duplicate newline.Karsten Loesing
2009-12-17Refactor out the 'find string at start of any line' logic.Nick Mathewson
We do this in too many places throughout the code; it's time to start clamping down. Also, refactor Karsten's patch to use strchr-then-strndup, rather than malloc-then-strlcpy-then-strchr-then-clear.
2009-12-17Make changes to latest bridge-stats fixes as suggested by Nick.Karsten Loesing
2009-12-17Fix bridge statistics.Karsten Loesing
Fix statistics on client numbers by country as seen by bridges that were broken in 0.2.2.1-alpha. Also switch to reporting full 24-hour intervals instead of variable 12-to-48-hour intervals.
2009-12-17Move ChangeLog entry to the right place.Karsten Loesing
2009-12-17Remove v0 hidden service statistics code.Karsten Loesing
The HSAuthorityRecordStats option was used to track statistics of overall hidden service usage on the version 0 hidden service authorities. With the version 2 hidden service directories being deployed and version 0 descriptors being phased out, these statistics are not as useful anymore. Goodbye, you fine piece of software; my first major code contribution to Tor.
2009-12-16Merge commit 'karsten/fix-cell-stats'Nick Mathewson
Conflicts: ChangeLog
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-15Merge commit 'origin/maint-0.2.1'Nick Mathewson
2009-12-15Stop using lround in or.h, and check for bad values of RECENT_CIRCUITSNick Mathewson
2009-12-15Update translations.txt with new torbutton process.Mike Perry
2009-12-15Fix bug 1173: remove an assert(unsigned >= 0).Nick Mathewson
2009-12-15Merge commit 'sebastian/coverity'Nick Mathewson
2009-12-15Merge branch 'mathlog'Nick Mathewson
2009-12-15Refactor a bit so that it is safe to include math.h, and mostly not needed.Nick Mathewson
2009-12-15Document CircuitPriorityHalflife on the manpageNick Mathewson
2009-12-15Change interface for configuring cell ewma algorithm.Nick Mathewson
The rule is now: take the value from the CircuitPriorityHalflife config option if it is set. If it zero, disable the cell_ewma algorithm. If it is set, use it to calculate the scaling factor. If it is not set, look for a CircPriorityHalflifeMsec parameter in the consensus networkstatus. If *that* is zero, then disable the cell_ewma algorithm; if it is set, use it to calculate the scaling factor. If it is not set at all, disable the algorithm.
2009-12-15Merge commit 'sebastian/ewma2' into ewmaNick Mathewson
Conflicts: src/or/relay.c
2009-12-15Fix various comment typos in ewma patch; found by arma.Nick Mathewson
2009-12-15Fix comment typos in container.cNick Mathewson
2009-12-14Fix compile warning on Panther.Sebastian Hahn
Apparently Panther doesn't like comparing ints and enums
2009-12-14Remove some dead code found by coverity, cid 404Sebastian Hahn
In connection_dir_client_reached_eof, we make sure that we either return when we get an http status code of 503 or handle the problem and set it to 200. Later we check if the status code is 503. Remove that check.
2009-12-14Fix Snow Leopard compile and a codestyle violationSebastian Hahn
When calculating the current tick, cap (tv_sec / EWMA_TICK_LEN) to an unsigned int.
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-13New controller command "getinfo config-text"Roger Dingledine
It returns the contents that Tor would write if you send it a SAVECONF command, so the controller can write the file to disk itself.
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-12Enhance pqueue so we can remove items from the middle.Nick Mathewson
This changes the pqueue API by requiring an additional int in every structure that we store in a pqueue to hold the index of that structure within the heap.