aboutsummaryrefslogtreecommitdiff
path: root/src/or/routerparse.c
Commit message (Collapse)AuthorAge
* remove some functions that are not used; #if0 out some files that are not ↵Nick Mathewson2005-11-30
| | | | | | likely to be used. svn:r5471
* Verify that router fingerprint lines match identity keys. (We dont use them, ↵Nick Mathewson2005-11-15
| | | | | | but others might.) svn:r5389
* On directory servers, old_routers was wasting hundreds of bytes per ↵Nick Mathewson2005-11-05
| | | | | | superseded router descriptor. Roll the signed descriptor info and identifying info into a cache_info struct, and use only that for old_routers. svn:r5349
* Fix bug when parsing list of router descriptors containing a truncated ↵Nick Mathewson2005-10-28
| | | | | | entry. (Found by Lasse) svn:r5327
* Remove last vestiges of old logging interface.Nick Mathewson2005-10-25
| | | | svn:r5317
* Efficiency hack: call tor_fix_source_file late, not early. Add "BUG" ↵Nick Mathewson2005-10-25
| | | | | | domain. Domains are now bitmasks... just in case. Make some err msgs non-general. svn:r5309
* Use LD_BUG as appropriate; convert rend* and router* to new logging ↵Nick Mathewson2005-10-24
| | | | | | interface; use new circ_log_path interface svn:r5302
* fix some typosRoger Dingledine2005-10-18
| | | | svn:r5283
* Try to extract as many descriptors as possible from truncated http ↵Nick Mathewson2005-10-14
| | | | | | responses. (when DIR_PURPOSE_FETCH_ROUTERDESC) svn:r5249
* Strip extra trailing newlines when parsing router descriptors.Nick Mathewson2005-10-07
| | | | svn:r5212
* Try to hunt down a few more leaksNick Mathewson2005-09-30
| | | | svn:r5172
* Resolve several DOCDOCs. Make non-mirrors only launch routerdesc downloads ↵Nick Mathewson2005-09-30
| | | | | | when they have more than 16 router descriptors to download, or when 10 minutes have passed since the last download. svn:r5166
* clean up some doxygen stuffRoger Dingledine2005-09-29
| | | | svn:r5147
* Only check versions from versioning authdirs.Nick Mathewson2005-09-21
| | | | svn:r5101
* Implement new version handling code.Nick Mathewson2005-09-21
| | | | svn:r5100
* clean up a bit more codeRoger Dingledine2005-09-20
| | | | svn:r5098
* Prevent a "try forever to download an unobtainable descriptor" bug. Still ↵Nick Mathewson2005-09-18
| | | | | | remaining: the "give up forever" bug. svn:r5090
* Move to new base64 digest functions. Switch to new router digest ↵Nick Mathewson2005-09-18
| | | | | | calculation. Make sure there are no duplicates in router status lists. svn:r5088
* Remove a bunch of #if0d code that I no longer need to look at.Nick Mathewson2005-09-16
| | | | svn:r5083
* Resolve/expand some XXXXs and improve a log message or twoNick Mathewson2005-09-16
| | | | svn:r5082
* Stop downloading directories and download routers instead. This still needs ↵Nick Mathewson2005-09-15
| | | | | | some work, but at last clients are finally on the new architecture. Next comes the tuning and bugfixing. svn:r5070
* Fix a bunch of log messages. Deprecate some routerlist fields; remove ↵Nick Mathewson2005-09-14
| | | | | | others, and status_set_at from routerinfo_t. Compress routerlist.c cleanup functions. Update cached networkstatus mtime when we download the same one twice. Change some interfaces. svn:r5068
* Would you believe that the software_versions field of routerlist_t was never ↵Nick Mathewson2005-09-14
| | | | | | actually used for anything? svn:r5064
* Big commit: clients start downloading and using network-statuses.Nick Mathewson2005-09-14
| | | | | | | | | | | | | | | | | | | | | Only caches need to get running-routers; nobody needs to parse, store, or use it. Same for the router-status line in the directories. Add many #if 0's that can get removed once I'm convinced they don't contain anything I'm forgetting. Start all newly-parsed routers as non-running and non-valid; update them from the list of network statuses. Update all routers when a new networkstatus comes in. After 3 tries for a networkstatus, clients give up until they're told to try again. "Let's get those missles ready to **DESTROY THE UNIVERSE**!" -TMBG svn:r5063
* add docs, fix whitespace, and make ANY rule in routerparse a little tighter.Nick Mathewson2005-09-13
| | | | svn:r5031
* Numerous changes to move towards client-side v2 directories.Nick Mathewson2005-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | connection.c: - Add some more connection accessor functions to make directory download redundancy checking work. directory.c, or.h, router.c, routerlist.c: - Start on logic to note when networkstatus downloads fail. dirserv.c, routerlist.c, routerparse.c: - Start maintaining an is_named field in routerstatus_t. Don't actually look at it yet. dirserv.c, routerlist.c: - Remove expired networkstatus objects. or.h: - Make some booleans into bitfields - Add prototypes routerlist.c: - Sort networkstatus list by publication time - Function to remove old (older than 10 days) networkstatus objects. - Function to set a list of routerinfo_ts' status info from the current set of networkstatus objects. - Function to tell which routerinfos we need to download based no the current set of networkstatus objects. - Do not launch a networkstatus download if a redundant one is in progress. routerparse.c: - Keep router entries in networkstatus sorted by digest. svn:r5012
* remove temporary network-status keywordRoger Dingledine2005-09-12
| | | | svn:r5007
* fix comment and return value for check_software_version_against_directory()Roger Dingledine2005-09-11
| | | | svn:r4996
* Resolve some XXXs. Add some others.Nick Mathewson2005-09-08
| | | | svn:r4947
* oops -- that log should have been removedNick Mathewson2005-09-08
| | | | svn:r4939
* Fix network-status parsing.Nick Mathewson2005-09-08
| | | | svn:r4938
* Fix another reversed inet_atonNick Mathewson2005-09-08
| | | | svn:r4937
* Fix some more bugs; add a temporary log.Nick Mathewson2005-09-08
| | | | svn:r4936
* Stop dying when we get a directory from tor26; workaround for change in ↵Nick Mathewson2005-09-08
| | | | | | networkstatus format svn:r4933
* clean whitespace.Nick Mathewson2005-09-07
| | | | svn:r4912
* More stuff for new directories.Nick Mathewson2005-09-07
| | | | | | | | | | | | | | | | | | | | | | - Distinguish v1 authorities (all currently trusted directories) from v2 authorities (all trusted directories). - Add configuration option for which dirs are v1 authories. - Add configuration option for whether to be a v1 authority. - Make trusted dirserver selection functions take options to choose which functionality we need. - Remove option when getting directory cache to see whether they support running-routers; they all do now. Replace it with one to see whether caches support v2 stuff. - Parse, cache, and serve network-status objects properly. - Serve compressed groups of router descriptors. The compression logic here could be more memory-efficient. - svn:r4911
* Comment structs, reload a field, start making network status caches workNick Mathewson2005-09-04
| | | | svn:r4908
* Make structs for (v2) network-status and its per-router components. Add ↵Nick Mathewson2005-09-02
| | | | | | functions to parse them. Re-do the parsing logic a litt.e. Change signatures in or.h to support new DNS TTL logic. svn:r4898
* Actually set is_hibernating when parsing router descriptors.Nick Mathewson2005-08-30
| | | | svn:r4888
* Add some documentation; move the signature generation logic into ↵Nick Mathewson2005-08-26
| | | | | | routerparse.c along with the hash generation logic; make router signing use it as well. svn:r4840
* Start implementing the server side of the new directory protocol.Nick Mathewson2005-08-25
| | | | | | | | | | | | | | | | | | | | | | | Probably very buggy, since I can't actually run an authdir. Features - Generate and publish new network-status format - Code to cache and re-serve network-status objects generated by others. - Publish individual descriptors (by fingerprint, by "all", and by "tell me yours.") [Still needs compression logic] - Publish client and server recommended versions seprately. - Add digest of descriptor to routerinfo_t, so we can track them better, and length, so we can server them more easily. Cleanups - Unify code to sign directory-like things - Make resolve_my_address() able to tell you which name it wound up resolving. - Unify code to store and serve directory-like things so it all uses cached_dir_t. - Unify code to set the value of cached_dir_t objects. svn:r4835
* Dirservers now do their own external reachability testing of eachRoger Dingledine2005-08-24
| | | | | | | | | | | | | Tor server, and only list them as running if they've been found to be reachable. Dirservers also log trouble servers, but only start complaining loudly after they've been up for an hour, to reduce false positives. We still need to do something about the fact that it is quite loud when there are many trouble servers. svn:r4829
* the tor-spec says router->address must be an IP address. so refuseRoger Dingledine2005-08-16
| | | | | | | | | | it if it's not. (this also fixes some potential security problems with people providing hostnames as their address and then preferentially resolving them and partitioning users.) svn:r4790
* check_software_version_against_directory needs a return value.Nick Mathewson2005-08-09
| | | | svn:r4755
* Replace (Fascist)Firewall* with a new ReachableAddresses option that ↵Nick Mathewson2005-08-08
| | | | | | understands address policies. svn:r4751
* get rid of IgnoreVersion and the forced auto-exit mis-featureRoger Dingledine2005-08-08
| | | | svn:r4746
* It is not the end of the world when a router descriptor has an unrecognized kwdNick Mathewson2005-06-24
| | | | svn:r4480
* Remove code that has been #if-0ed for a long time.Nick Mathewson2005-06-15
| | | | svn:r4435
* Docment or add DOCDOC comments to undocumented functions in src/or. Make ↵Nick Mathewson2005-06-11
| | | | | | function definition format uniform. svn:r4411
* flesh out the source file descriptions for doxygenRoger Dingledine2005-06-11
| | | | svn:r4404