aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-05-11Fix out-of-bounds write during voting with duplicate ed25519 keysJohn Brooks
In dirserv_compute_performance_thresholds, we allocate arrays based on the length of 'routers', a list of routerinfo_t, but loop over the nodelist. The 'routers' list may be shorter when relays were filtered by routers_make_ed_keys_unique, leading to an out-of-bounds write on directory authorities. This bug was originally introduced in 26e89742, but it doesn't look possible to trigger until routers_make_ed_keys_unique was introduced in 13a31e72. Fixes bug 19032; bugfix on tor 0.2.8.2-alpha.
2016-05-09Merge branch 'bug19008_027' into maint-0.2.7Nick Mathewson
2016-05-09Add "-c 1" to ping6 in test-network-allNick Mathewson
Fixes bug 19008. bugfix on 0.2.7.3-rc
2016-05-09Merge branch 'maint-0.2.6' into maint-0.2.7Nick Mathewson
2016-05-09Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2016-05-09Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2016-05-09Update geoip and geoip6 to the May 4 2016 database.Karsten Loesing
2016-04-12Do not link tests against both libor.a and libor-testing.aNick Mathewson
Also, put libor-testing.a at a better position in the list of libraries, to avoid linker errors. This is a fix, or part of a fix, for 18490. Conflicts: src/test/include.am
2016-04-07Merge branch 'maint-0.2.6' into maint-0.2.7Nick Mathewson
2016-04-07Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2016-04-07Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2016-04-07Update geoip and geoip6 to the April 5 2016 database.Karsten Loesing
2016-03-30Merge branch 'bug15221_027' into maint-0.2.7Andrea Shepard
2016-03-29Merge branch 'bug18570_027' into maint-0.2.7Andrea Shepard
2016-03-29Merge branch 'bug16248_027' into maint-0.2.7Andrea Shepard
2016-03-21Merge branch 'ed25519_voting_fixes_squashed' into maint-0.2.7Nick 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-21a couple more changes files issues.Nick Mathewson
2016-03-21Fix some warnings from lintchanges.Nick Mathewson
2016-03-21changes file for bug18570Nick Mathewson
2016-03-21Make sure channel_t queues its own copy of incoming cellsAndrea Shepard
2016-03-21Add new channel/queue_incoming unit tests; modify channel unit tests for new ↵Andrea Shepard
clarified handling of alloc/free responsibility for queued incoming cells
2016-03-14Permit setrlimit, prlimit, prlimit64 calls.Nick Mathewson
We call setrlimit under some circumstances, and it can call prlimit and prlimit64 under the hood. Fixes bug 15221.
2016-03-14Add comments to connection_check_event().Nick Mathewson
2016-03-11Change behavior on missing/present event to warn instead of asserting.Nick Mathewson
Add a changes file.
2016-03-11If we start/stop reading on a dnsserv connection, don't assert.Nick Mathewson
Fixes bug 16248. Patch from cypherpunks. Bugfix on 0.2.0.1-alpha.
2016-03-09Merge branch 'maint-0.2.6' into maint-0.2.7Nick Mathewson
2016-03-09Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2016-03-09Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2016-03-04Update geoip and geoip6 to the March 3 2016 database.Karsten Loesing
2016-02-23Make clang asan work with FORTIFIED_SOURCE again.Nick Mathewson
Short version: clang asan hates the glibc strcmp macro in bits/string2.h if you are passing it a constant string argument of length two or less. (I could be off by one here, but that's the basic idea.) Closes issue 14821.
2016-02-22Enable ed25519 collator in voting.Nick Mathewson
Previously, I had left in some debugging code with /*XXX*/ after it, which nobody noticed. Live and learn! Next time I will use /*XXX DO NOT COMMIT*/ or something. We need to define a new consensus method for this; consensus method 21 shouldn't actually be used. Fixes bug 17702; bugfix on 0.2.7.2-alpha.
2016-02-11Merge branch 'maint-0.2.6' into maint-0.2.7Nick Mathewson
2016-02-11Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2016-02-11Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2016-02-11Merge branch 'bug18162_024' into maint-0.2.4Nick Mathewson
2016-02-11Make ensure_capacity a bit more pedantically correctNick Mathewson
Issues noted by cypherpunks on #18162
2016-02-05Merge branch 'maint-0.2.6' into maint-0.2.7Nick Mathewson
2016-02-05Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2016-02-05Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2016-02-04Update geoip and geoip6 to the February 2 2016 database.Karsten Loesing
2016-02-01Try to fix address tests on FreeBSDNick Mathewson
In jails, there is not always a localhost. Bugfix not on any released Tor.