aboutsummaryrefslogtreecommitdiff
path: root/src/or/routerparse.c
Commit message (Collapse)AuthorAge
* Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-11-07
|\
| * Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2011-11-07
| |\
| | * Fix remotely triggerable assert during ip decryptionDan Rosenberg2011-11-06
| | | | | | | | | | | | Fixes bug 4410.
* | | Merge branch 'maint-0.2.2_secfix' into master_secfixSebastian Hahn2011-10-27
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/common/tortls.c src/or/connection_or.c src/or/dirserv.c src/or/or.h
| * | Make tor_version_same_series non-staticRobert Ransom2011-10-26
| | |
* | | Stop using addr_port_lookup as an address splitting functionNick Mathewson2011-10-11
| | | | | | | | | | | | | | | | | | It's too risky to have a function where if you leave one parameter NULL, it splits up address:port strings, but if you set it, it does hostname resolution.
* | | Fix names of functions that convert strings to addrsNick Mathewson2011-10-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now let's have "lookup" indicate that there can be a hostname resolution, and "parse" indicate that there wasn't. Previously, we had one "lookup" function that did resolution; four "parse" functions, half of which did resolution; and a "from_str()" function that didn't do resolution. That's confusing and error-prone! The code changes in this commit are exactly the result of this perl script, run under "perl -p -i.bak" : s/tor_addr_port_parse/tor_addr_port_lookup/g; s/parse_addr_port(?=[^_])/addr_port_lookup/g; s/tor_addr_from_str/tor_addr_parse/g; This patch leaves aton and pton alone: their naming convention and behavior is is determined by the sockets API. More renaming may be needed.
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-09-09
|\| | | | | | | | | | | | | | | | | Conflicts: configure.in src/or/circuitbuild.c
| * | Use %f with printf-style formatting, not %lfNick Mathewson2011-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For printf, %f and %lf are synonymous, since floats are promoted to doubles when passed as varargs. It's only for scanf that we need to say "%lf" for doubles and "%f" for floats. Apparenly, some older compilers think it's naughty to say %lf and like to spew warnings about it. Found by grarpamp.
* | | Only use optimistic data with exits that support itNick Mathewson2011-07-18
| | | | | | | | | | | | | | | | | | | | | This adds a little code complexity: we need to remember for each node whether it supports the right feature, and then check for each connection whether it's exiting at such a node. We store this in a flag in the edge_connection_t, and set that flag at link time.
* | | Don't shadow parameters with local variablesNick Mathewson2011-07-01
| | | | | | | | | | | | | | | | | | | | | | | | This is a little error-prone when the local has a different type from the parameter, and is very error-prone with both have the same type. Let's not do this. Fixes CID #437,438,439,440,441.
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-06-14
|\| |
| * | Remove a few dead assignments during router parsingSebastian Hahn2011-06-08
| | |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-06-03
|\| |
| * | Reject 128-byte keys that are not 1024-bitNick Mathewson2011-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-06-01
|\| |
| * | Report wrong key sizes correctlyNick Mathewson2011-06-01
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-05-30
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | Merge branch 'bug3045' into maint-0.2.2Nick Mathewson2011-05-30
| |\ \ | | | | | | | | | | | | | | | | Conflicts: src/or/circuitbuild.c
| | * | Log descriptions of nodes, not just nicknames.Nick Mathewson2011-05-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-05-17
|\| | |
| * | | Oops; that function got renamed.Nick Mathewson2011-05-17
| | | |
| * | | Check onion keys in microdescriptors, tooRobert Ransom2011-05-17
| | | |
* | | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-05-16
|\| | |
| * | | Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2011-05-16
| |\ \ \ | | |/ / | |/| / | | |/ | | | | | | | | | | | | Fixed trivial conflict due to headers moving into their own .h files from or.h. Conflicts: src/or/or.h
| | * squash! Add crypto_pk_check_key_public_exponent functionNick Mathewson2011-05-16
| | | | | | | | | | | | | | | | | | 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.
| | * Require that certain public keys have public exponent 65537Robert Ransom2011-05-16
| | |
* | | Merge remote-tracking branch 'public/bug3122_memcmp_022' into bug3122_memcmp_023Nick Mathewson2011-05-11
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | 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 ↵Nick Mathewson2011-05-11
| | | | | | | | | | | | snuck in
| * | Merge remote-tracking branch 'public/3122_memcmp_squashed' into ↵Nick Mathewson2011-05-11
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * Hand-conversion and audit phase of memcmp transitionNick Mathewson2011-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| | * Automated conversion of memcmp to tor_memcmp/tor_mem[n]eqNick Mathewson2011-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Now that 0.2.3.1-alpha is out, require it for microdesc fetchesNick Mathewson2011-05-05
| | |
* | | Code to make clients fetch and use microdescriptors for circuit buildingNick Mathewson2011-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-04-27
|\| | | | | | | | | | | | | | Conflicts: doc/tor.1.txt
| * | Fix double-free bug in microdesc parsercypherpunks2011-04-27
| | |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-04-19
|\| |
| * | Standardize our printf code on %d, not %i.Nick Mathewson2011-04-19
| | |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-04-19
|\| |
| * | Correct HS descriptor length checkNick Mathewson2011-04-18
| | | | | | | | | | | | Fixes bug 2948.
| * | Merge branch 'bug2750-v3' into bug2948Robert Ransom2011-04-18
| |\|
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-04-19
|\ \ \
| * \ \ Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2011-04-19
| |\ \ \ | | |/ / | |/| / | | |/
| | * Add an XXXRobert Ransom2011-04-18
| | |
| | * Correct the warning emitted when rejecting an oversized HS descRobert Ransom2011-04-18
| | |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-04-07
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | Triage the XXX022 and XXX021 comments remaining in the codeNick Mathewson2011-03-25
| | | | | | | | | | | | | | | Remove some, postpone others, leave some alone. Now the only remaining XXX022s are ones that seem important to fix or investigate.
* | | Merge remote branch 'origin/maint-0.2.2'Nick Mathewson2011-03-15
|\| |
| * | Fix a log message typoRobert Ransom2011-03-15
| | |