aboutsummaryrefslogtreecommitdiff
path: root/src/or/router.c
AgeCommit message (Collapse)Author
2013-05-10Merge bug5595-v2-squashed into maint-0.2.4Andrea Shepard
2013-05-09When downloading certificates, distinguish requesting by identity digest ↵Andrea Shepard
from requesting by ID digest, signing key pair; fixes bug 5595
2013-04-24Merge remote-tracking branch 'public/bug6026' into maint-0.2.4Nick Mathewson
2013-04-18Merge branch 'less_charbuf_rebased' into maint-0.2.4Nick Mathewson
Conflicts: src/or/dirserv.c src/or/dirserv.h src/test/test_dir.c
2013-04-18Re-enable test for parsing and generating descriptor with exit policyNick Mathewson
Looks like I turned this off in 6ac42f5e back in 2003 and never got around to making it work again. There has been no small amount of code drift.
2013-04-18Refactor dirobj signature generationNick Mathewson
Now we can compute the hash and signature of a dirobj before concatenating the smartlist, and we don't need to play silly games with sigbuf and realloc any more.
2013-04-18Use chunks, not buffers, for router descriptorsNick Mathewson
2013-03-15Merge remote-tracking branch 'public/unused_stuff' into maint-0.2.4Nick Mathewson
2013-03-11Treat a changed IPv6 ORPort like an IPv4 one in retry_all_listeners()Nick Mathewson
Fix for bug 6026
2013-03-10start part-way through the ssl cert lifetimeRoger Dingledine
also, snap the start time and end time to a day boundary, since most certs in the wild seem to do this.
2013-03-10randomize SSLKeyLifetime by defaultRoger Dingledine
resolves ticket 8443.
2013-03-10parameterize SSLKeyLifetimeRoger Dingledine
no actual changes in behavior yet
2013-02-23Remove some totally unused functionsNick Mathewson
2013-02-19touchups on 78582760Roger Dingledine
2013-02-19Revise some comments in router.cNick Mathewson
Avoid the phrase "legally valid" (as opposed to valid but not legal)? And document what functions really do. Fix for bug 6935.
2013-02-15Merge remote-tracking branch 'public/wide_circ_ids'Nick Mathewson
Conflicts: src/or/channel.h src/or/connection_or.c src/or/cpuworker.c
2013-02-12oops; add a missing semicolonNick Mathewson
(Cherry-picked from fc35ee4910326dc1ae718482b30e57666a71df85)
2013-02-12get rid of the new caching notion in resolve_my_address()Roger Dingledine
and replace it with the good old-fashioned two functions approach
2013-02-11Stop trying to resolve our hostname so oftenRoger Dingledine
For example, we were doing a resolve every time we think about doing a directory fetch. Now we reuse the cached answer in some cases. Fixes bugs 1992 (bugfix on 0.2.0.20-rc) and 2410 (bugfix on 0.1.2.2-alpha).
2013-02-11Teach resolve_my_address() to return a cached answerRoger Dingledine
I didn't make any of the callers use this feature yet.
2013-02-11oops; add a missing semicolonNick Mathewson
2013-02-11Merge remote-tracking branch 'public/bug8208'Nick Mathewson
2013-02-11Check whether ei is non-NULL before altering it.Nick Mathewson
This fixes a crash bug if we fail to generate an extrainfo descriptor. Fixes bug 8208; bugfix on 0.2.3.16-alpha.
2013-02-11Avoid generating extra spaces when explaining how we guessed our addressNick Mathewson
2013-02-11Refactor resolve_my_address() so logs are more accurate / helpfulRoger Dingledine
It returns the method by which we decided our public IP address (explicitly configured, resolved from explicit hostname, guessed from interfaces, learned by gethostname). Now we can provide more helpful log messages when a relay guesses its IP address incorrectly (e.g. due to unexpected lines in /etc/hosts). Resolves ticket 2267. While we're at it, stop sending a stray "(null)" in some cases for the server status "EXTERNAL_ADDRESS" controller event. Resolves bug 8200.
2013-02-11log the hostname that resolve_my_address() used to guess our IPRoger Dingledine
2013-02-07Merge remote-tracking branch 'public/easy_ratelim'Nick Mathewson
Conflicts: src/or/connection.c
2013-02-07Merge remote-tracking branch 'public/bug7816_024'Nick Mathewson
2013-02-01fix wide lines from tor_log renameNick Mathewson
2013-02-01Rename log() to tor_log() for loggingNick Mathewson
This is meant to avoid conflict with the built-in log() function in math.h. It resolves ticket 7599. First reported by dhill. This was generated with the following perl script: #!/usr/bin/perl -w -i -p s/\blog\(LOG_(ERR|WARN|NOTICE|INFO|DEBUG)\s*,\s*/log_\L$1\(/g; s/\blog\(/tor_log\(/g;
2013-01-16Rename *_isin to *_containsNick Mathewson
This is an automatically generated commit, from the following perl script, run with the options "-w -i -p". s/smartlist_string_num_isin/smartlist_contains_int_as_string/g; s/smartlist_string_isin((?:_case)?)/smartlist_contains_string$1/g; s/smartlist_digest_isin/smartlist_contains_digest/g; s/smartlist_isin/smartlist_contains/g; s/digestset_isin/digestset_contains/g;
2013-01-16Update the copyright date to 201.Nick Mathewson
2013-01-03Merge branch 'ntor-resquashed'Nick Mathewson
Conflicts: src/or/cpuworker.c src/or/or.h src/test/bench.c
2013-01-03Check all crypto_rand return values for ntor.Nick Mathewson
2013-01-03Complete all DOCDOC entries from the ntor branchNick Mathewson
2013-01-03Enable the ntor handshake on the client side.Nick Mathewson
"works for me"
2013-01-03Massive refactoring of the various handshake typesNick Mathewson
The three handshake types are now accessed from a unified interface; their state is abstracted from the rest of the cpath state, and so on.
2013-01-02Wrangle curve25519 onion keys: generate, store, load, publish, republishNick Mathewson
Here we try to handle curve25519 onion keys from generating them, loading and storing them, publishing them in our descriptors, putting them in microdescriptors, and so on. This commit is untested and probably buggy like whoa
2012-12-28Fix a leak-on-error case in 0.2.4 spotted by coverityNick Mathewson
This one hits if the snprintf() fails when we're writing our IPv6 exit policy. It's new in 0.2.4.7-alpha. Part of bug 7816.
2012-12-26Use log_fn_ratelim in a few places.Nick Mathewson
2012-12-25Make ECDHE group configurable: 224 for public, 256 for bridges (default)Nick Mathewson
2012-12-06New FallbackDir option to add extra directories for bootstrapingNick Mathewson
This replaces the old FallbackConsensus notion, and should provide a way -- assuming we pick reasonable nodes! -- to give clients suggestions of placs to go to get their first consensus.
2012-12-06Refactor add_trusted_dir_serverNick Mathewson
Now creating a dir_server_t and adding it are separate functions, and there are frontend functions for adding a trusted dirserver and a fallback dirserver.
2012-12-06Rename trusted_dir_server_t to dir_server_t. Automatic renaming.Nick Mathewson
2012-11-14Fix a bug in policy_is_reject_star() that was making IPv4 exits breakNick Mathewson
IPv4-only exits have an implicit "reject [::]/0", which was making policy_is_reject_star() return 1 for them, making us refuse to do hostname lookups. This fix chanes policy_is_reject_star() to ask about which family we meant.
2012-11-14Actually advertise IPv6 exit policies.Nick Mathewson
I have a theory that my tests will work better if the code I'm testing isn't disabled.
2012-11-14Change signature of router_compare_to_my_exit_policy so dns can use itNick Mathewson
Also, fix the function so it actually looks at our ipv6 exit policy.
2012-11-14Rename ipv{4,6}_only to bind_ipv{4,6}_onlyNick Mathewson
This is to avoid confusion with the ipv{4,6}_traffic flags.
2012-11-14Add an IPv6Exit configuration optionNick Mathewson
Don't advertise an IPv6 exit policy, or accept IPv6 exit requests, if IPv6Exit is not true.
2012-11-14Simplest version of server-side IPv6 support (no dns)Nick Mathewson
This is a relatively simple set of changes: we mostly need to remove a few "but not for IPv6" changes. We also needed to tweak the handling of DNS code to generate RESOLVED cells that could get an IPv6 answer in return.