summaryrefslogtreecommitdiff
path: root/src/or/routerparse.c
AgeCommit message (Collapse)Author
2011-06-14Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-06-08Remove a few dead assignments during router parsingSebastian Hahn
2011-06-03Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-06-03Reject 128-byte keys that are not 1024-bitNick Mathewson
When we added the check for key size, we required that the keys be 128 bytes. But RSA_size (which defers to BN_num_bytes) will return 128 for keys of length 1017..1024. This patch adds a new crypto_pk_num_bits() that returns the actual number of significant bits in the modulus, and uses that to enforce key sizes. Also, credit the original bug3318 in the changes file.
2011-06-01Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-06-01Report wrong key sizes correctlyNick Mathewson
When we introduced NEED_KEY_1024 in routerparse.c back in 0.2.0.1-alpha, I forgot to add a *8 when logging the length of a bad-length key. Bugfix for 3318 on 0.2.0.1-alpha.
2011-05-30Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
The conflicts were mainly caused by the routerinfo->node transition. Conflicts: src/or/circuitbuild.c src/or/command.c src/or/connection_edge.c src/or/directory.c src/or/dirserv.c src/or/relay.c src/or/rendservice.c src/or/routerlist.c
2011-05-30Merge branch 'bug3045' into maint-0.2.2Nick Mathewson
Conflicts: src/or/circuitbuild.c
2011-05-17Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-05-17Oops; that function got renamed.Nick Mathewson
2011-05-17Check onion keys in microdescriptors, tooRobert Ransom
2011-05-16Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-05-16Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson
Fixed trivial conflict due to headers moving into their own .h files from or.h. Conflicts: src/or/or.h
2011-05-16squash! Add crypto_pk_check_key_public_exponent functionNick Mathewson
Rename crypto_pk_check_key_public_exponent to crypto_pk_public_exponent_ok: it's nice to name predicates s.t. you can tell how to interpret true and false.
2011-05-16Require that certain public keys have public exponent 65537Robert Ransom
2011-05-15Log descriptions of nodes, not just nicknames.Nick Mathewson
This patch introduces a few new functions in router.c to produce a more helpful description of a node than its nickame, and then tweaks nearly all log messages taking a nickname as an argument to call these functions instead. There are a few cases where I left the old log messages alone: in these cases, the nickname was that of an authority (whose nicknames are useful and unique), or the message already included an identity and/or an address. I might have missed a couple more too. This is a fix for bug 3045.
2011-05-11Merge remote-tracking branch 'public/bug3122_memcmp_022' into bug3122_memcmp_023Nick Mathewson
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
2011-05-11Hand-tune the new tor_memcmp instances in 0.2.2Nick Mathewson
2011-05-11Re-apply the automated conversion to 0.2.2 to make handle any memcmps that ↵Nick Mathewson
snuck in
2011-05-11Merge remote-tracking branch 'public/3122_memcmp_squashed' into ↵Nick Mathewson
bug3122_memcmp_022 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
2011-05-11Hand-conversion and audit phase of memcmp transitionNick Mathewson
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.
2011-05-11Automated conversion of memcmp to tor_memcmp/tor_mem[n]eqNick Mathewson
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
2011-05-05Now that 0.2.3.1-alpha is out, require it for microdesc fetchesNick Mathewson
2011-05-05Code to make clients fetch and use microdescriptors for circuit buildingNick Mathewson
To turn this on, set UseMicrodescriptors to "1" (or "auto" if you want it on-if-you're-a-client). It should go auto-by-default once 0.2.3.1-alpha is released. Because of our node logic, directory caches will never use microdescriptors when they have the right routerinfo available.
2011-04-27Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
Conflicts: doc/tor.1.txt
2011-04-27Fix double-free bug in microdesc parsercypherpunks
2011-04-19Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-04-19Standardize our printf code on %d, not %i.Nick Mathewson
2011-04-19Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-04-19Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
2011-04-19Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson
2011-04-18Correct HS descriptor length checkNick Mathewson
Fixes bug 2948.
2011-04-18Merge branch 'bug2750-v3' into bug2948Robert Ransom
2011-04-18Add an XXXRobert Ransom
2011-04-18Correct the warning emitted when rejecting an oversized HS descRobert Ransom
2011-04-07Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson
Conflicts: src/common/address.c src/common/compat_libevent.c src/common/memarea.c src/common/util.h src/or/buffers.c src/or/circuitbuild.c src/or/circuituse.c src/or/connection.c src/or/directory.c src/or/networkstatus.c src/or/or.h src/or/routerlist.c
2011-03-25Triage the XXX022 and XXX021 comments remaining in the codeNick Mathewson
Remove some, postpone others, leave some alone. Now the only remaining XXX022s are ones that seem important to fix or investigate.
2011-03-15Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2011-03-15Fix a log message typoRobert Ransom
2011-03-06Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
Conflicts: src/or/routerparse.c
2011-03-06Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson
2011-03-06Oops, here's the *REAL* fix for the ipv6 issueNick Mathewson
We need to _REJECT_ descriptors with accept6/reject6 lines. If we let them onto the network , other un-upgraded tors will crash.
2011-03-06Revert "Disallow reject6 and accept6 lines in descriptors"Nick Mathewson
This reverts commit b3918b3bbbfa9097246d63746c8b540eff2ec8e8.
2011-03-06Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2011-03-06Merge branch 'maint-0.2.1' into maint-0.2.2Sebastian Hahn
2011-03-06Disallow reject6 and accept6 lines in descriptorsSebastian Hahn
This fixes a remotely triggerable assert on directory authorities, who don't handle descriptors with ipv6 contents well yet. We will want to revert this once we're ready to handle ipv6. Issue raised by lorth on #tor, who wasn't able to use Tor anymore. Analyzed with help from Christian Fromme. Fix suggested by arma. Bugfix on 0.2.1.3-alpha.
2011-01-26Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2011-01-25Fix bug in verifying directory signatures with short digestsNick Mathewson
If we got a signed digest that was shorter than the required digest length, but longer than 20 bytes, we would accept it as long enough.... and then immediately fail when we want to check it. Fixes bug 2409; bug in 0.2.2.20-alpha; found by piebeer.
2011-01-19Merge remote branch 'origin/maint-0.2.2'Nick Mathewson
2011-01-19Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson