aboutsummaryrefslogtreecommitdiff
path: root/src/or/dirvote.c
Commit message (Expand)AuthorAge
* Merge remote-tracking branch 'origin/maint-0.2.2' into maint-0.2.3•••Conflicts: src/test/test_util.c Nick Mathewson2012-09-11
|\
| * Fix assertion failure in tor_timegm.•••Fixes bug 6811. Nick Mathewson2012-09-11
* | Merge remote-tracking branch 'public/bug6404' into maint-0.2.3Nick Mathewson2012-08-21
|\ \
| * | Fix memory leak in dirvote_create_microdescriptor•••Found by George, who gets a cookie. Nick Mathewson2012-08-14
| * | Remove the upper limit on the size of MD we can generate.Nick Mathewson2012-07-31
| * | Don't include a router in an md consensus if we can't find a md for it.•••The spec requires that every router in a microdesc consensus have an m line; we weren't obeying that spec. This creates a new consensus method (13) to allow voting to continue to work right. Partial fix for bug 6404; fix on 0.2.2.6-alpha. Nick Mathewson2012-07-31
| * | Allow microdescs to be up to 2k. Partial fix for 6404.Nick Mathewson2012-07-31
* | | Defensive programming: clear rs_out between iterations.•••I can't currently find a bug here, but there are a couple of near-misses. Addresses ticket 6514; reported pseudonymously on IRC. Nick Mathewson2012-08-01
|/ /
* | Change all SMARTLIST_FOREACH loops of >=10 lines to use BEGIN/END•••The SMARTLIST_FOREACH macro is more convenient than BEGIN/END when you have a nice short loop body, but using it for long bodies makes your preprocessor tell the compiler that all the code is on the same line. That causes grief, since compiler warnings and debugger lines will all refer to that one line. So, here's a new style rule: SMARTLIST_FOREACH blocks need to be short. Nick Mathewson2012-07-17
* | Update copyright dates to 2012; add a few missing copyright statementsNick Mathewson2012-06-04
* | Add about 60 more DOCDOC comments to 0.2.3•••Also, try to resolve some doxygen issues. First, define a magic "This is doxygen!" macro so that we take the correct branch in various #if/#else/#endifs in order to get the right documentation. Second, add in a few grouping @{ and @} entries in order to get some variables and fields to get grouped together. Nick Mathewson2012-06-04
* | Detect out-of-bounds bwweightscale values early in the voting process•••If the authorities agreed on a sufficiently bad bwweightscale value (<=0 or == INT32_MAX), the bandwidth algorithm could make the voters assert while computing the consensus. Fix for bug5786; bugfix on 0.2.2.17-alpha Nick Mathewson2012-05-07
* | Check more thoroughly for dups when parsing networkstatus parameters•••See changes file for details. Partial fix for bug 5786; fix on 0.2.2.2-alpha. Nick Mathewson2012-05-07
* | Rename nonconformant identifiers.•••Fixes bug 4893. These changes are pure mechanical, and were generated with this perl script: /usr/bin/perl -w -i.bak -p s/crypto_pk_env_t/crypto_pk_t/g; s/crypto_dh_env_t/crypto_dh_t/g; s/crypto_cipher_env_t/crypto_cipher_t/g; s/crypto_digest_env_t/crypto_digest_t/g; s/aes_free_cipher/aes_cipher_free/g; s/crypto_free_cipher_env/crypto_cipher_free/g; s/crypto_free_digest_env/crypto_digest_free/g; s/crypto_free_pk_env/crypto_pk_free/g; s/_crypto_dh_env_get_dh/_crypto_dh_get_dh/g; s/_crypto_new_pk_env_rsa/_crypto_new_pk_from_rsa/g; s/_crypto_pk_env_get_evp_pkey/_crypto_pk_get_evp_pkey/g; s/_crypto_pk_env_get_rsa/_crypto_pk_get_rsa/g; s/crypto_new_cipher_env/crypto_cipher_new/g; s/crypto_new_digest_env/crypto_digest_new/g; s/crypto_new_digest256_env/crypto_digest256_new/g; s/crypto_new_pk_env/crypto_pk_new/g; s/crypto_create_crypto_env/crypto_cipher_new/g; s/connection_create_listener/connection_listener_new/g; s/smartlist_create/smartlist_new/g; s/transport_create/transport_new/g; Nick Mathewson2012-01-18
* | Convert instances of tor_snprintf+strdup into tor_asprintf•••These were found by looking for tor_snprintf() instances that were followed closely by tor_strdup(), though I probably converted some other snprintfs as well. Nick Mathewson2012-01-16
* | Try to use smartlist_add_asprintf consistently•••(To ensure correctness, in every case, make sure that the temporary variable is deleted, renamed, or lowered in scope, so we can't have any bugs related to accidentally relying on the no-longer-filled variable.) Nick Mathewson2012-01-16
* | Log which votes we still need to fetch•••This might help us see which authorities are problematic in getting their vote published the first time. Sebastian Hahn2012-01-10
* | Merge branch 'maint-0.2.2'Roger Dingledine2012-01-08
|\|
| * nickname, not identity fingerprint, will help moreRoger Dingledine2012-01-08
| * tell me who votes are actually for, not just where they're fromRoger Dingledine2012-01-08
* | Implement consensus method 12 (proposal 178)Sebastian Hahn2011-11-27
* | Make the get_options() return const•••This lets us make a lot of other stuff const, allows the compiler to generate (slightly) better code, and will make me get slightly fewer patches from folks who stick mutable stuff into or_options_t. const: because not every input is an output! Nick Mathewson2011-06-14
* | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-05-28
|\|
| * Fix GCC 4.6's new -Wunused-but-set-variable warnings.•••Most instances were dead code; for those, I removed the assignments. Some were pieces of info we don't currently plan to use, but which we might in the future. For those, I added an explicit cast-to-void to indicate that we know that the thing's unused. Finally, one was a case where we were testing the wrong variable in a unit test. That one I fixed. This resolves bug 3208. Nick Mathewson2011-05-23
* | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-05-15
|\|
| * Fixup whitespace issues from 3122 commitNick Mathewson2011-05-15
| * Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2•••Conflicts: src/or/networkstatus.c Nick Mathewson2011-05-15
| |\
| | * Fixup whitespace issues from 3122 commitNick Mathewson2011-05-15
* | | Merge remote-tracking branch 'public/bug3122_memcmp_022' into bug3122_memcmp_023•••Conflicts in various places, mainly node-related. Resolved them in favor of HEAD, with copying of tor_mem* operations from bug3122_memcmp_022. src/common/Makefile.am src/or/circuitlist.c src/or/connection_edge.c src/or/directory.c src/or/microdesc.c src/or/networkstatus.c src/or/router.c src/or/routerlist.c src/test/test_util.c Nick Mathewson2011-05-11
|\| |
| * | Hand-tune the new tor_memcmp instances in 0.2.2Nick Mathewson2011-05-11
| * | Re-apply the automated conversion to 0.2.2 to make handle any memcmps that sn...Nick Mathewson2011-05-11
| * | Merge remote-tracking branch 'public/3122_memcmp_squashed' into bug3122_memcm...•••Conflicts throughout. All resolved in favor of taking HEAD and adding tor_mem* or fast_mem* ops as appropriate. src/common/Makefile.am src/or/circuitbuild.c src/or/directory.c src/or/dirserv.c src/or/dirvote.c src/or/networkstatus.c src/or/rendclient.c src/or/rendservice.c src/or/router.c src/or/routerlist.c src/or/routerparse.c src/or/test.c Nick Mathewson2011-05-11
| |\|
| | * Hand-conversion and audit phase of memcmp transition•••Here I looked at the results of the automated conversion and cleaned them up as follows: If there was a tor_memcmp or tor_memeq that was in fact "safe"[*] I changed it to a fast_memcmp or fast_memeq. Otherwise if there was a tor_memcmp that could turn into a tor_memneq or tor_memeq, I converted it. This wants close attention. [*] I'm erring on the side of caution here, and leaving some things as tor_memcmp that could in my opinion use the data-dependent fast_memcmp variant. Nick Mathewson2011-05-11
| | * Automated conversion of memcmp to tor_memcmp/tor_mem[n]eq•••This commit is _exactly_ the result of perl -i -pe 's/\bmemcmp\(/tor_memcmp\(/g' src/*/*.[ch] perl -i -pe 's/\!\s*tor_memcmp\(/tor_memeq\(/g' src/*/*.[ch] perl -i -pe 's/0\s*==\s*tor_memcmp\(/tor_memeq\(/g' src/*/*.[ch] perl -i -pe 's/0\s*!=\s*tor_memcmp\(/tor_memneq\(/g' src/*/*.[ch] git checkout src/common/di_ops.[ch] git checkout src/or/test.c git checkout src/common/test.h Nick Mathewson2011-05-11
* | | Merge remote-tracking branch 'origin/maint-0.2.2'•••Conflicts: src/or/connection.c Nick Mathewson2011-05-09
|\| |
| * | Fix potential null pointer deref during dirvote•••Found by using clang's analyzer. Sebastian Hahn2011-05-09
* | | Replace _AUTHORITY enum values with _DIRINFO values (automted)Nick Mathewson2011-05-05
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-05-04
|\| |
| * | Handle crypto_pk_get_digest failures semi-sensibly•••Fixes bug 3106. Robert Ransom2011-05-04
* | | Merge remote branch 'origin/maint-0.2.2'Nick Mathewson2011-03-11
|\| |
| * | Fix log message when we have too few dirauths•••The calculation of when to send the logmessage was correct, but we didn't give the correct number of relays required: We want more than half of all authorities we know about. Fixes bug 2663. Sebastian Hahn2011-03-07
* | | Merge remote branch 'origin/maint-0.2.2' for bug2203_rebased•••There was a merge conflict in routerlist.c due to the new node_t logic. Conflicts: src/or/routerlist.c Nick Mathewson2011-02-04
|\| |
| * | Fix authority side of 2203.•••Do not add Exit bandwidth to E if BadExit is set. Mike Perry2011-01-25
* | | Merge remote branch 'origin/maint-0.2.2'Nick Mathewson2011-01-03
|\| |
| * | Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2•••Conflicts: src/common/test.h src/or/test.c Nick Mathewson2011-01-03
| |\|
| | * Bump copyright statements to 2011Nick Mathewson2011-01-03
* | | refactor all these tor_inet_ntoa idioms•••but don't refactor the ones that look messy Roger Dingledine2010-10-01
|/ /
* | Implement new Wxx constraints.•••Cases 1 and 3b are provably correct. Case 2b has a fallback to first try to maximize entropy. Mike Perry2010-09-27
* | Fix misplaced labelsSebastian Hahn2010-08-16
* | Fix a memory leak in dirvote_compute_consensuses()Sebastian Hahn2010-08-16