aboutsummaryrefslogtreecommitdiff
path: root/src/or/relay.c
Commit message (Collapse)AuthorAge
* add a minimum for CircuitStreamTimeout, plus a man pageRoger Dingledine2009-11-22
| | | | | plus some other unrelated touchups that have been sitting in my sandbox
* clean up the XXX comments around bug 1038Roger Dingledine2009-10-26
|
* Fix compile warnings on Snow LeopardSebastian Hahn2009-09-01
| | | | Big thanks to nickm and arma for helping me with this!
* Add some fixes after discussion with Nick.Karsten Loesing2009-08-21
| | | | | | | | | | | | | | - Refactor geoip.c by moving duplicate code into rotate_request_period(). - Don't leak memory when cleaning up cell queues. - Make sure that exit_(streams|bytes_(read|written)) are initialized in all places accessing these arrays. - Read only the last block from *stats files and ensure that its timestamp is not more than 25 hours in the past and not more than 1 hour in the future. - Stop truncating the last character when reading *stats files. The only thing that's left now is to avoid reading whole *stats files into memory.
* Clean up proposal 166 and its implementation.Karsten Loesing2009-08-18
|
* Use memory pool for insertion times.Karsten Loesing2009-08-17
|
* Implement queue with O(1) operations, and correct some math.Karsten Loesing2009-08-17
|
* Reduce cell statistics accuracy from 1 ms to 10 ms.Karsten Loesing2009-08-17
|
* Remove ./configure option for cell statistics.Karsten Loesing2009-08-17
|
* Remove ./configure option for entry and dir request statistics.Karsten Loesing2009-08-17
|
* Merge branch 'maint-0.2.1'Roger Dingledine2009-08-10
|\
| * Send sendmes when we're down 100 cells, not 101.Roger Dingledine2009-08-10
| | | | | | | | | | | | | | | | | | Send circuit or stream sendme cells when our window has decreased by 100 cells, not when it has decreased by 101 cells. Bug uncovered by Karsten when testing the "reduce circuit window" performance patch. Bugfix on the 54th commit on Tor -- from July 2002, before the release of Tor 0.0.0. This is the new winner of the oldest-bug prize.
* | Merge branch 'maint-0.2.1' into masterRoger Dingledine2009-07-28
|\|
| * three hacks to workaround bug 1038Roger Dingledine2009-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that clients and hidden services are receiving relay_early cells, and they tear down the circuit. Hack #1 is for rendezvous points to rewrite relay_early cells to relay cells. That way there are never any incoming relay_early cells. Hack #2 is for clients and hidden services to never send a relay_early cell on an established rendezvous circuit. That works around rendezvous points that haven't upgraded yet. Hack #3 is for clients and hidden services to not tear down the circuit when they receive an inbound relay_early cell. We already refuse extend cells at clients.
* | Fix dirreq and cell stats on 32-bit architectures.Karsten Loesing2009-07-27
| | | | | | | | | | | | | | | | | | When determining how long directory requests take or how long cells spend in queues, we were comparing timestamps on microsecond detail only to convert results to second or millisecond detail later on. But on 32-bit architectures this means that 2^31 microseconds only cover time differences of up to 36 minutes. Instead, compare timestamps on millisecond detail.
* | Some tweaks to statistics.Karsten Loesing2009-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes to directory request statistics: - Rename GEOIP statistics to DIRREQ statistics, because they now include more than only GeoIP-based statistics, whereas other statistics are GeoIP-dependent, too. - Rename output file from geoip-stats to dirreq-stats. - Add new config option DirReqStatistics that is required to measure directory request statistics. - Clean up ChangeLog. Also ensure that entry guards statistics have access to a local GeoIP database.
* | Some tweaks to directory request download times.Karsten Loesing2009-07-15
| | | | | | | | | | - Use common prefixes DIRREQ_* and dirreq_*. - Replace enums in structs with bitfields.
* | Directories now also measure download times of network statuses.Karsten Loesing2009-07-15
| |
* | fix comments and other typosRoger Dingledine2009-07-13
| |
* | If configured, write cell statistics to disk periodically.Karsten Loesing2009-07-05
| |
* | Merge commit 'origin/maint-0.2.1'Nick Mathewson2009-06-16
|\|
| * Revise earlier check for correct IPv4 addr length to check for ==4.Nick Mathewson2009-06-16
| | | | | | | | | | | | We need this to match the check in connection_ap_handshake_socks_resolved(). Found by optimist.
| * Check answer_len in the remap_addr case of process_relay_cell_not_open.Roger Dingledine2009-06-12
| | | | | | | | | | | | Fix an edge case where a malicious exit relay could convince a controller that the client's DNS question resolves to an internal IP address. Bug found and fixed by "optimist"; bugfix on 0.1.2.8-beta.
* | Check answer_len in the remap_addr case of process_relay_cell_not_open.Roger Dingledine2009-06-12
| | | | | | | | | | | | Fix an edge case where a malicious exit relay could convince a controller that the client's DNS question resolves to an internal IP address. Bug found and fixed by "optimist"; bugfix on 0.1.2.8-beta.
* | Merge commit 'origin/maint-0.2.1'Nick Mathewson2009-05-28
|\|
| * Two more spelling fix fixes.Nick Mathewson2009-05-28
| |
* | Merge commit 'origin/maint-0.2.1'Nick Mathewson2009-05-27
|\|
| * Spell-check Tor.Nick Mathewson2009-05-27
| |
| * Update copyright to 2009.Karsten Loesing2009-05-04
| |
* | Update copyright to 2009.Karsten Loesing2009-05-02
| |
* | Documentation fix.Karsten Loesing2009-05-02
|/
* when we get an unrecognized relay streamid, log itRoger Dingledine2009-03-11
| | | | svn:r18919
* Patch from lark: drop BEGIN cells from a rendevous circuit if they do not ↵Nick Mathewson2009-02-21
| | | | | | originate from the end of the circuit. svn:r18667
* apply a variant of rovv's bug 872 patch, and document that we want a better ↵Nick Mathewson2009-01-05
| | | | | | solution for 0.2.2.x. svn:r17924
* Remove svn $Id$s from our source, and remove tor --version --version.Nick Mathewson2009-01-04
| | | | | | | | The subversion $Id$ fields made every commit force a rebuild of whatever file got committed. They were not actually useful for telling the version of Tor files in the wild. svn:r17867
* Debug code for task 878.Karsten Loesing2008-12-30
| | | | svn:r17828
* Do not not cannibalize a circuit that has run out of RELAY_EARLY cells. ↵Nick Mathewson2008-12-29
| | | | | | Partial bug 878 fix. svn:r17815
* Document most undocumented variables.Nick Mathewson2008-12-23
| | | | svn:r17754
* Add DOCDOC entries for undocumented static and global variables.Nick Mathewson2008-12-22
| | | | svn:r17739
* Fix most DOCDOCs remaining and/or added by redox.Nick Mathewson2008-12-22
| | | | svn:r17734
* Add DOCDOC comments for all undocumented functions. Add missing *s to other ↵Nick Mathewson2008-12-22
| | | | | | comments so that they will get recognized as doxygen. svn:r17729
* Fix all of the doxygen warnings not pertaining to missing documentation.Nick Mathewson2008-12-22
| | | | svn:r17727
* Make cell pools always-on.Nick Mathewson2008-12-18
| | | | svn:r17692
* Replace calls to time(NULL) that occur on the order of once per read, one ↵Nick Mathewson2008-12-18
| | | | | | per write, or once per cell with calls to a function that looks at a cached value of time. This is tricksy to benchmark, since it will only help on systems where time() is a syscall and syscalls are relatively slow. svn:r17690
* Resolve many DOCDOCs.Nick Mathewson2008-12-17
| | | | svn:r17662
* Whitespace fix.Nick Mathewson2008-12-17
| | | | svn:r17650
* Change CELL_DIRECTION_* to an enum.Nick Mathewson2008-12-17
| | | | svn:r17646
* Move edge-only flags from connection_t to edge_connection_t.Nick Mathewson2008-12-17
| | | | svn:r17643
* When a stream at an exit relay is in state "resolving" orRoger Dingledine2008-12-14
| | | | | | | | | | | "connecting" and it receives an "end" relay cell, the exit relay would silently ignore the end cell and not close the stream. If the client never closes the circuit, then the exit relay never closes the TCP connection. Bug introduced in Tor 0.1.2.1-alpha; reported by "wood". svn:r17625
* Verify cpath_layer match on rendezvous cells too. Fixes another case of bug ↵Nick Mathewson2008-10-27
| | | | | | 446. Based on patch from rovv. svn:r17162