aboutsummaryrefslogtreecommitdiff
path: root/src/or/rephist.c
Commit message (Expand)AuthorAge
* use tor_mem_is_zero() in more places.•••svn:r6814 Roger Dingledine2006-07-23
* whitespace and docs•••svn:r6808 Roger Dingledine2006-07-23
* i lied, that won't work at all. maybe this will.•••svn:r6805 Roger Dingledine2006-07-22
* MSVC6 is apparently terrified of unnatural cross-breeding between uint64_t an...•••svn:r6768 Nick Mathewson2006-07-17
* ok, ok, maybe *this* time my rep_hist_circbuilding_dormant() will work.•••svn:r6568 Roger Dingledine2006-06-08
* ah, that explains why we weren't going dormant with•••respect to descriptor fetches. maybe now it will work. svn:r6565 Roger Dingledine2006-06-08
* Add async dns code from Adam Langley, tweaked to build on OSX. Long-term, w...•••svn:r6524 Nick Mathewson2006-06-03
* don't stop fetching server descriptors if we're a server and•••haven't found ourselves reachable yet. svn:r6522 Roger Dingledine2006-06-03
* stop fetching descriptors if we're not a dir mirror and we•••haven't tried to establish any circuits lately. svn:r6516 Roger Dingledine2006-05-30
* forward-port: "Resolve" all XXX011 items, mostly by marking them non-011.•••svn:r6396 Nick Mathewson2006-04-18
* When the controller's *setconf commands fail, collect an error message•••in a string and hand it back. This starts to resolve bug 275. svn:r6241 Roger Dingledine2006-03-26
* Cleanup on time-relaqted constants. New conventions:••• 1) Surround all constants by (parens), whether we'll be using them in a denominator or not. 2) Express all time periods as products (24*60*60), not as multiplied-out constants (86400). 3) Comments like "(60*60) /* one hour */" are as pointless as comments like "c = a + b; /* set c to the sum of a and b */". Remove them. 4) All time periods should be #defined constants, not given inline. 5) All time periods should have doxygen comments. 6) All time periods, unless specified, are in seconds. It's not necessary to say so. To summarize, the old (lack of) style would allow: #define FOO_RETRY_INTERVAL 60*60 /* one hour (seconds) */ next_try = now + 3600; The new style is: /** How often do we reattempt foo? */ #define FOO_RETRY_INTERVAL (60*60) next_try = now + RETRY_INTERVAL; svn:r6142 Nick Mathewson2006-03-12
* the last of the log convention conversion. finally.•••svn:r6005 Roger Dingledine2006-02-13
* Happy new year!•••svn:r5949 Roger Dingledine2006-02-09
* Fix wide lines•••svn:r5793 Nick Mathewson2006-01-11
* Convert some more ints to long longs in rephist.c, as suggested by windows co...•••svn:r5789 Nick Mathewson2006-01-11
* only print bandwidth lines to the state file if we're being a server.•••otherwise this is pointless and probably bad for security. svn:r5704 Roger Dingledine2006-01-02
* Possible fix to state-load bug reported by weasel.•••svn:r5692 Nick Mathewson2006-01-02
* Appease some verbose GCC warnings.•••svn:r5679 Nick Mathewson2005-12-29
* simplify because we weren't using those return values anyway•••svn:r5643 Roger Dingledine2005-12-24
* Keep bandwidth history accross restarts/crashes•••svn:r5637 Peter Palfrader2005-12-23
* Bite the bullet and limit all our source lines to 80 characters, the way IBM ...•••svn:r5582 Nick Mathewson2005-12-14
* Start the process of treating internal circuits and exit circuits•••separately. It's important to keep them separate because internal circuits have their last hops picked like middle hops, rather than like exit hops. So exiting on them will break the user's expectations. - Stop cannibalizing internal circuits for general exits, and stop cannibalizing exit circuits for rendezvous stuff. - Don't let new exit streams attach to internal circuits. - When deciding if we have enough circuits for internal and for exit, don't count the wrong ones. - Treat predicted resolves as predicted port 80 exits. svn:r5457 Roger Dingledine2005-11-25
* Replace balanced trees with hash tables: this should make stuff significantly...•••svn:r5441 Nick Mathewson2005-11-23
* Remove last vestiges of old logging interface.•••svn:r5317 Nick Mathewson2005-10-25
* Update more files to new log stuff.•••svn:r5286 Nick Mathewson2005-10-18
* Use digestmap_t instead of strmap_t where appropriate. Do less hex en/decoding•••svn:r5279 Nick Mathewson2005-10-18
* even better function start checks; give dmalloc a chance of working.•••svn:r5162 Nick Mathewson2005-09-30
* Reformat inconsistent function declarations.•••svn:r5160 Nick Mathewson2005-09-30
* Remove extraneous space on read-history lines.•••svn:r5123 Nick Mathewson2005-09-23
* make the numbers in read-history and write-history into uint64s,•••so they don't overflow and publish negatives in the descriptor. fixes bug 193. svn:r5119 Roger Dingledine2005-09-23
* predict required circuits better, with an eye toward making•••hidden services faster on the service end. svn:r4772 Roger Dingledine2005-08-13
* parameterize RephistTrackTime•••svn:r4673 Roger Dingledine2005-07-25
* add a trivial tor-counting variable•••svn:r4593 Roger Dingledine2005-07-18
* Remove code that has been #if-0ed for a long time.•••svn:r4435 Nick Mathewson2005-06-15
* Docment or add DOCDOC comments to undocumented functions in src/or. Make fun...•••svn:r4411 Nick Mathewson2005-06-11
* Change end-of-file NLNL convention. It turns out arma I and I agree.•••svn:r4382 Nick Mathewson2005-06-09
* Instrument buffers.c and rephist.c memory usage•••svn:r4317 Nick Mathewson2005-06-06
* update copyright notices.•••svn:r3982 Nick Mathewson2005-04-01
* free some more memory at shutdown•••svn:r3707 Roger Dingledine2005-02-28
* Free even more things on shutdown. Temporarily move tor_free_all out from #i...•••svn:r3614 Nick Mathewson2005-02-11
* Add more functions to free things to help dmalloc allong.•••svn:r3613 Nick Mathewson2005-02-10
* Introduce a notion of 'internal' circs, which are chosen without regard•••to the exit policy of the last hop. Intro and rendezvous circs must be internal circs, to avoid leaking information. Resolve and connect streams can use internal circs if they want. New circuit pooling algorithm: make sure to have enough circs around to satisfy any predicted ports, and also make sure to have 2 internal circs around if we've required internal circs lately (with high uptime if we've seen that lately). Split NewCircuitPeriod config option into NewCircuitPeriod (30 secs), which describes how often we retry making new circuits if current ones are dirty, and MaxCircuitDirtiness (10 mins), which describes how long we're willing to make use of an already-dirty circuit. Once rendezvous circuits are established, keep using the same circuit as long as you attach a new stream to it at least every 10 minutes. (So web browsing doesn't require you to build new rend circs every 30 seconds.) Cannibalize GENERAL circs to be C_REND, C_INTRO, S_INTRO, and S_REND circ as necessary, if there are any completed ones lying around when we try to launch one. Re-instate the ifdef's to use version-0 style introduce cells, since there was yet another bug in handling version-1 style. We'll try switching over again after 0.0.9 is obsolete. Bugfix: when choosing an exit node for a new non-internal circ, don't take into account whether it'll be useful for any pending x.onion addresses -- it won't. Bugfix: we weren't actually publishing the hidden service descriptor when it became dirty. So we only published it every 20 minutes or so, which means when you first start your Tor, the hidden service will seem broken. svn:r3360 Roger Dingledine2005-01-17
* I'm a bad person.•••Stop treating the uint16_t's as null-terminated strings, and stop looking at the byte after them to see if it's null, because sometimes you're not allowed to look there. svn:r3108 Roger Dingledine2004-12-07
* Renormalize whitespace•••svn:r3095 Nick Mathewson2004-12-07
* New circuit building strategy: keep a list of ports that we've used in ...•••that will handle each such port. (We can extend this to include addresses if exit policies shift to require that.) Seed us with port 80 so web browsers won't complain that Tor is "slow to start up". This was necessary because our old circuit building strategy just involved counting circuits, and as time went by we would build up a big pile of circuits that had peculiar exit policies (e.g. only exit to 9001-9100) which would take up space in the circuit pile but never get used. Fix router_compare_addr_to_addr_policy: it was not treating a port of * as always matching, so we were picking reject *:* nodes as exit nodes too. If you haven't used a clean circuit in an hour, throw it away, just to be on the safe side. This means after 6 hours a totally unused Tor client will have no circuits open. svn:r3078 Roger Dingledine2004-12-05
* bugfix: router_exit_policy_rejects_all() was broken, so we were•••sometimes picking middleman nodes as our last hop, which wasn't very useful. svn:r3075 Roger Dingledine2004-12-04
* Spell-check strings and comments•••svn:r3052 Nick Mathewson2004-12-01
* do even less inside our signal handler,•••just to be extra paranoidly safe svn:r3050 Roger Dingledine2004-12-01
* Suggestion from weasel: Make tor --version --version dump the cvs Id of every...•••svn:r3019 Nick Mathewson2004-11-29