aboutsummaryrefslogtreecommitdiff
path: root/src/or
AgeCommit message (Collapse)Author
2016-03-26Do not treat "DOCDOC" as doxygen.Nick Mathewson
2016-03-26Whitespace fixesNick Mathewson
2016-03-26Fix all doxygen warnings (other than missing docs)Nick Mathewson
2016-03-26Clarify excess consensus connection cleanup by adding commentsteor (Tim Wilson-Brown)
Comment-only change
2016-03-24use a clearer argument for connection_ap_make_link()Roger Dingledine
that function calls it argument "want_onehop", so it makes more sense to pass that boolean into it.
2016-03-24remove the extraneous dir_port variableRoger Dingledine
we already are using "port" to describe the place we're going to ask to connect to.
2016-03-24remove a redundant check about whether dirport is 0Roger Dingledine
2016-03-24revert the or_connection and dir_connection flagsRoger Dingledine
They incorrectly summarized what the function was planning to do, leading to wrong behavior like making an http request to an orport, or making a begindir request to a dirport. This change backs out some of the changes made in commit e72cbf7a, and most of the changes made in commit ba6509e9. This patch resolves bug 18625. There more changes I want to make after this one, for code clarity.
2016-03-24Fix broken directory request to the DirPortDavid Goulet
Commit e72cbf7a4 introduced a change to directory_initiate_command_rend() that made tor use the ORPort when making a directory request to the DirPort. The primary consequence was that a relay couldn't selftest its DirPort thus failing to work and join the network properly. The main issue was we were always considering an anonymized connection to be an OR connection which is not true. Fixes #18623 Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2016-03-24Merge branch 'bug18517_squashed'Nick Mathewson
2016-03-24Always allow OR connections to bridges on private addressesteor (Tim Wilson-Brown)
Regardless of the setting of ExtendAllowPrivateAddresses. This fixes a bug with pluggable transports that ignore the (potentially private) address in their bridge line. Fixes bug 18517; bugfix on 23b088907f in tor-0.2.8.1-alpha.
2016-03-24Merge remote-tracking branch 'teor/bug18351'Nick Mathewson
2016-03-24Merge remote-tracking branch 'teor/bug18489'Nick Mathewson
2016-03-24Check if fallbacks support extrainfo descriptors before requesting themteor (Tim Wilson-Brown)
When requesting extrainfo descriptors from a trusted directory server, check whether it is an authority or a fallback directory which supports extrainfo descriptors. Fixes bug 18489; bugfix on 90f6071d8d in tor-0.2.4.7-alpha. Reported by "atagar", patch by "teor".
2016-03-24Code indentation whitespace-only fixteor (Tim Wilson-Brown)
2016-03-24Clarify ReachableAddress log messagesteor (Tim Wilson-Brown)
Make it clearer that they are about outgoing connection attempts. Specify the options involved where they were missing from one log message. Clarify a comment.
2016-03-24Downgrade IP version warnings to avoid filling logsteor (Tim Wilson-Brown)
Downgrade logs and backtraces about IP versions to info-level. Only log backtraces once each time tor runs. Assists in diagnosing bug 18351; bugfix on c3cc8e16e in tor-0.2.8.1-alpha. Reported by "sysrqb" and "Christian", patch by "teor".
2016-03-22Merge remote-tracking branch 'public/bug18253'Nick Mathewson
2016-03-21remove extraneous breaksRoger Dingledine
commit edeba3d4 removed a switch, but left the "break" lines in from that switch. fortunately the resulting behavior was not wrong, since there was an outer switch that it was ok to break from.
2016-03-21fix indentation after #18332 patchesRoger Dingledine
no actual changes here -- but the new indenting makes it clear that the fixes in #18332 were not as good as they should have been. the next commit will deal with that.
2016-03-21Merge branch 'maint-0.2.7'Nick Mathewson
2016-03-21Use nth consistently in dircollate.h.Nick Mathewson
Documentation-only patch. Issue 17668.T6.
2016-03-21In routers_make_ed_keys_unique, break ties for published_onNick Mathewson
This ensures that if we can't use published_on to decide an ed,rsa mapping, we at least decide deterministically. Resolves 17668.T3
2016-03-21Assert that dircollator is collated when we're reading its output.Nick Mathewson
Fix for 17668.S2.
2016-03-21After we strip out duplicate entries from 'routers', don't use 'rl'.Nick Mathewson
We've got to make sure that every single subsequent calculation in dirserv_generate_networkstatus_vote_obj() are based on the list of routerinfo_t *after* we've removed possible duplicates, not before. Fortunately, none of the functions that were taking a routerlist_t as an argument were actually using any fields other than this list of routers. Resolves issue 18318.DG3.
2016-03-21Fix another case of 17668: Add NoEdConsensusNick Mathewson
I had a half-built mechanism to track, during the voting process, whether the Ed25519 value (or lack thereof) reflected a true consensus among the authorities. But we never actually inserted this field in the consensus. The key idea here is that we first attempt to match up votes by pairs of <Ed,RSA>, where <Ed> can be NULL if we're told that there is no Ed key. If this succeeds, then we can treat all those votes as 'a consensus for Ed'. And we can include all other votes with a matching RSA key and no statement about Ed keys as being "also about the same relay." After that, we look for RSA keys we haven't actually found an entry for yet, and see if there are enough votes for them, NOT considering Ed keys. If there are, we match them as before, but we treat them as "not a consensus about ed". When we include an entry in a consensus, if it does not reflect a consensus about ed keys, then we include a new NoEdConsensus flag on it. This is all only for consensus method 22 or later. Also see corresponding dir-spec patch.
2016-03-21Document has_ed25519_listingNick Mathewson
2016-03-21Never vote for an ed key twice.Nick Mathewson
When generating a vote, and we have two routerinfos with the same ed key, omit the one published earlier. This was supposed to have been solved by key pinning, but when I made key pinning optional, I didn't realize that this would jump up and bite us. It is part of bug 18318, and the root cause of 17668.
2016-03-21Fix log message subjects in networkstatus_parse_vote_from_string()Nick Mathewson
Some of these messages called the thing being parsed a "vote" whether it is a vote or a consensus. Fixes bug 18368.
2016-03-21Document dircollate.c (and remove an unused global)Nick Mathewson
2016-03-21Merge remote-tracking branch 'public/bug18548'Nick Mathewson
2016-03-21Merge remote-tracking branch 'arma/ticket18332-try3'Nick Mathewson
2016-03-21Merge remote-tracking branch 'special/bug18600'Nick Mathewson
2016-03-21Merge branch 'bug18570_027'Nick Mathewson
2016-03-21Make sure channel_t queues its own copy of incoming cellsAndrea Shepard
2016-03-21Scrub service name in introduction circuit warningJohn Brooks
Fixes bug 18600.
2016-03-16Bridges now refuse "rendezvous2" publish attemptsRoger Dingledine
Suggested during review of ticket 18332.
2016-03-15Sandbox: Don't preseed getaddrinfo(gethostname()) in client mode.Nick Mathewson
If we're a server with no address configured, resolve_my_hostname will need this. But not otherwise. And the preseeding itself can consume a few seconds if like tails we have no resolvers. Fixes bug 18548.
2016-03-15Fix whitespace.Nick Mathewson
2016-03-15Merge remote-tracking branch 'weasel/bug18458'Nick Mathewson
2016-03-14Fix log message: say RelaxDirModeCheck instead of StrictDirModesPeter Palfrader
2016-03-14Make unix sockets work with the linux seccomp2 sandbox againNick Mathewson
I didn't want to grant blanket permissions for chmod() and chown(), so here's what I had to do: * Grant open() on all parent directories of a unix socket * Write code to allow chmod() and chown() on a given file only. * Grant chmod() and chown() on the unix socket.
2016-03-14Don't chmod/chown unix sockets if their permissions are already okNick Mathewson
This is a part of a fix for 18253; bugfix on 0.2.8.1-alpha. Alternatively, we could permit chmod/chown in the sandbox, but I really don't like giving the sandbox permission to alter permissions.
2016-03-14Merge remote-tracking branch 'public/bug16248_027'Nick Mathewson
2016-03-14Add comments to connection_check_event().Nick Mathewson
2016-03-14hs: Do not close desc fetch conn. if we can't pick an HSDirDavid Goulet
Launching 7 descriptor fetches makes a connection to each HSDir that is 6 and the seventh one fails to pick an HSDir because they are all being used already so it was killing all pending connections at once. Fixes #15937 Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2016-03-11Merge remote-tracking branch 'teor/bug17153'Nick Mathewson
2016-03-11Merge remote-tracking branch 'teor/bug8976_01_028'Nick Mathewson
2016-03-11Change behavior on missing/present event to warn instead of asserting.Nick Mathewson
Add a changes file.
2016-03-11simplify rend_cache_store_status_t back to a booleanRoger Dingledine
it used to be a tri-state, but now it's just a bi-state, so we can take out all the machinery like the enum.