aboutsummaryrefslogtreecommitdiff
path: root/src/or/or.h
Commit message (Collapse)AuthorAge
* Keep a deflated version of each directory so we can deliver it when requestedNick Mathewson2004-09-02
| | | | svn:r2328
* when picking unverified routers, skip those with bad uptime orRoger Dingledine2004-08-20
| | | | | | | bad bandwidth, depending on what properties you care about svn:r2302
* tolerate old 0.0.7 clients that demand a certain ip:port for a routerRoger Dingledine2004-08-18
| | | | | | | | | even though it's moved on to another one. also reduce some log verbosity. svn:r2288
* when we try to exclude our routerinfo from being picked in theRoger Dingledine2004-08-18
| | | | | | | | | path, it fails because we're using a pointer to the routerinfo we generate, not a pointer to the routerinfo in the routerlist. so look up the right one and use that. svn:r2286
* be more aggressive about trying to make circuits:Roger Dingledine2004-08-18
| | | | | | | | try once a second for 30 seconds, and only when the entire previous period has failed do we pause after MAX_CIRCUIT_FAILURES failures. svn:r2281
* choose exit nodes by bandwidth tooRoger Dingledine2004-08-18
| | | | svn:r2274
* Functions to test nickname validityNick Mathewson2004-08-18
| | | | svn:r2269
* use unverified routers in the desired positionsRoger Dingledine2004-08-17
| | | | svn:r2249
* Clean up last patch; implement (mostly) proper handling for ↵Nick Mathewson2004-08-17
| | | | | | verified/unverified name collisions. svn:r2248
* Implement AllowUnverifiedNodesNick Mathewson2004-08-17
| | | | svn:r2246
* Add a generic Comma-separated-value config type, and a FirewallPorts option ↵Nick Mathewson2004-08-16
| | | | | | to tell FascistFirewall which ports are open. (Defaults to 80,443) svn:r2244
* o Handle servers with dynamic IP addresses: don't replaceRoger Dingledine2004-08-16
| | | | | | | | | | | options->Address with the resolved one at startup. o detect our address right before we make a routerinfo each time. o external IP vs bind-IP. Already done, just use options->Address. o OutboundBindAddress config option, to bind to a specific IP address for outgoing connect()s. svn:r2241
* Implement strict{entry|exit}nodes config optionsNick Mathewson2004-08-15
| | | | svn:r2236
* o clients choose nodes proportional to advertised bandwidthRoger Dingledine2004-08-15
| | | | | | | | | | o and/or while avoiding unreliable nodes, depending on goals o 'fascistfirewall' option to pick dirservers on port 80 and ORs on port 443. o if a begin failed due to exit policy, but we believe the IP should have been allowed, switch that router to exitpolicy reject *:* until we get our next directory. svn:r2231
* fix a race condition in 008pre2: don't try to extend onto a connectionRoger Dingledine2004-08-08
| | | | | | | | | | that's still handshaking. for servers in clique mode, require the conn to be open before you'll choose it for your path. svn:r2198
* let children survive sigint, sigterm, etc.Roger Dingledine2004-08-08
| | | | | | | | this was biting us because ^c would get delivered to all of them, maybe because they were all still listening to stdin? svn:r2197
* Don't warn about being unverified if you're not in the running-routersRoger Dingledine2004-08-07
| | | | | | | list at all. svn:r2193
* rotate onion keys every 12 hours, not every 2 hoursRoger Dingledine2004-08-07
| | | | svn:r2184
* Refactor ISO-style (yyyy-mm-dd hh:mm:ss) time parsing into util.c; rename ↵Nick Mathewson2004-08-07
| | | | | | format/parse_rfc1123_time; make rephist remember used bandwidth; published used bandwidth in descriptors in 15-minute chunks. Breaks unittests. svn:r2182
* let purging routerinfos and descriptors take an age argumentRoger Dingledine2004-08-06
| | | | svn:r2171
* commit some odds and ends, so my tree is cleanRoger Dingledine2004-08-04
| | | | svn:r2137
* Fix all warnings on win32 buildNick Mathewson2004-08-03
| | | | svn:r2127
* stop using atexit() to remove our pid, since it's calledRoger Dingledine2004-07-22
| | | | | | | | | immediately when we daemonize. also drop our retry period for hidserv desc uploads from 10m to 5m svn:r2111
* Add notion of "longest nickname-or-hex-digest-with-$"Nick Mathewson2004-07-22
| | | | svn:r2108
* Never use time(NULL) as assumed publication time for a directory.Nick Mathewson2004-07-22
| | | | svn:r2105
* publish advertised_bandwidth in descriptorRoger Dingledine2004-07-22
| | | | svn:r2095
* Misc small code cleanups; remove exit_server_mode(); change tor_tls_verify ↵Nick Mathewson2004-07-21
| | | | | | behavior svn:r2073
* get the function prototype rightRoger Dingledine2004-07-21
| | | | svn:r2072
* add a new advertised_server_mode() to distinguish ORs thatRoger Dingledine2004-07-21
| | | | | | | are willing to become servers from ones that really are servers. svn:r2071
* Track bandwidth usage to estimate capacityNick Mathewson2004-07-20
| | | | svn:r2065
* Remember list of digests for trusted dirservers; use this list to tell ↵Nick Mathewson2004-07-20
| | | | | | whether you are a trusted dirserver svn:r2064
* also don't hang up on him if we're an OR and he's an authdirserverRoger Dingledine2004-07-20
| | | | | | | otherwise we keep getting taken out of the running-routers list svn:r2063
* a whole swath of fixesRoger Dingledine2004-07-20
| | | | | | | | | | | | | | | | | | | introduce an authdir_mode() macro to match the others. don't initialize uptime to the number of seconds since 1970. non-authoritative dirservers don't cache their directory on disk. make only authdirservers use clique_mode. only read approved-routers file if you're an authdirserver. even authdirservers fetch a new directory in do_hup. retry_all_connections() is now called retry_all_listeners(). router_parse_list_from_string() correctly reports the router number it's working on. only call dirserv_add_own_fingerprint() and dirserv_add_descriptor() on startup if we're an authdirserver. if AuthDir and !ORPort then fail. if AuthDir and ClientOnly then fail. svn:r2061
* clients can now pick non-authdirservers for fetching directories.Roger Dingledine2004-07-20
| | | | | | | | | servers still pick authdirservers, but they never pick themselves. but picking themselves for fetching rend descs is ok. svn:r2059
* abstract ORPort/SocksPort checks into server_mode(), proxy_mode(), ↵Nick Mathewson2004-07-18
| | | | | | clique_mode(), etc. Dont change underlying comments. svn:r2054
* Remove 1024-router limit in routerparse.c; unify handling of running-routers ↵Nick Mathewson2004-07-16
| | | | | | lines in running-routers requests and in directories; set is_verified field of routerinfo_ts correctly; use most-recent-info rule to decide whether to change router-is-running status. svn:r2051
* Resolve all DOCDOCs.Nick Mathewson2004-07-16
| | | | svn:r2050
* Code to parse tor version numbers so we can do an is-newer-than check.Nick Mathewson2004-07-13
| | | | svn:r2044
* checkpoint: start working on bandwidth tracking andRoger Dingledine2004-07-13
| | | | | | | letting clients evaluate whether they're suitable servers svn:r2037
* tor now tolerates down dirservers betterRoger Dingledine2004-07-12
| | | | svn:r2031
* add 'advertisedbandwidth' to router descriptorRoger Dingledine2004-07-12
| | | | svn:r2028
* More digest/nickname fixesNick Mathewson2004-07-02
| | | | svn:r2000
* some of the infrastructure to let ORs connect on demandRoger Dingledine2004-07-02
| | | | svn:r1998
* running-routers now lists down routers too (with a ! before their name)Roger Dingledine2004-07-01
| | | | svn:r1996
* Track routers by hash of identity key; use hex hash of identity key in place ↵Nick Mathewson2004-07-01
| | | | | | of nickname; accept (and use) hash of identity key in EXTEND cells. svn:r1994
* Remaining 008pre1 items done; deferred where more design is needed.Nick Mathewson2004-06-25
| | | | | | | | | | | | | More docs and (way more!) testing needed. Done: - Authdirservers down directories from others. - Generate and use running-routers lists - Cache directories; store across reboots. - Refactor directory parsing a bit; note potential trouble spots. svn:r1985
* Implement several 008pre1 items: needs more testingNick Mathewson2004-06-21
| | | | svn:r1981
* Implement RESOLVE/RESOLVED cells and socks resolve codeNick Mathewson2004-06-17
| | | | svn:r1978
* router->is_trusted_dir implies router->dir_port>0Roger Dingledine2004-06-16
| | | | | | | and add some infrastructure for fetching running-routers list svn:r1973
* include <inttypes.h> if we have itRoger Dingledine2004-06-16
| | | | | | | openbsd on a sparc64 needs this (apparently) svn:r1971