summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | | | | | | Merge branch 'bug3577' into maint-0.2.2Nick Mathewson2011-07-14
| |\ \ \ \ \ \ \
| | * | | | | | | Improve error msg on failed getinfo fingerprintNick Mathewson2011-07-14
| | | | | | | | |
| | * | | | | | | Change GETINFO fingerprint to look at server_mode, not my_descriptorNick Mathewson2011-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's possible for us to be a server and have a fingerprint without having yet generated a descriptor. Fixes bug 3577; bugfix on 0.2.0.1-alpha
* | | | | | | | | Only download microdesc consensus from caches that support itNick Mathewson2011-07-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bugfix on 0.2.3.1-alpha; found by arma; never got a bug number.
* | | | | | | | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2011-07-14
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / /
| * | | | | | | | Update HACKING with some more release instructionsSebastian Hahn2011-07-14
| | | | | | | | |
* | | | | | | | | Resolve a warning from the bug1666 branchNick Mathewson2011-07-13
| | | | | | | | |
* | | | | | | | | Merge remote-tracking branch 'public/bug1666'Nick Mathewson2011-07-13
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/spec/socks-extensions.txt src/or/buffers.c src/or/config.c src/or/connection_edge.c
| * | | | | | | | | Add more error checks to socks parsing codeNick Mathewson2011-07-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Linus to avoid uninitialized reads or infinite loops if it turns out our code is buggier than we had thought.
| * | | | | | | | | Fix cut'n'paste bug in comment.Linus Nordberg2011-07-11
| | | | | | | | | |
| * | | | | | | | | Refactor fetch_from_buf_socks() to be greedyNick Mathewson2011-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, fetch_from_buf_socks() might return 0 if there was still data on the buffer and a subsequent call to fetch_from_buf_socks() would return 1. This was making some of the socks5 unit tests harder to write, and could potentially have caused misbehavior with some overly verbose SOCKS implementations. Now, fetch_from_buf_socks() does as much processing as it can, and returns 0 only if it really needs more data. This brings it into line with the evbuffer socks implementation.
| * | | | | | | | | Refactor socks unit tests into a suite of their ownNick Mathewson2011-06-29
| | | | | | | | | |
| * | | | | | | | | Don't drain extra data when parsing socks auth methodsNick Mathewson2011-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We added this back in 0649fa14 in 2006, to deal with the case where the client unconditionally sent us authentication data. Hopefully, that's not needed any longer, since we now can actually parse authentication data.
| * | | | | | | | | Record username/password data in socks_request_tNick Mathewson2011-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change also requires us to add and use a pair of allocator/deallocator functions for socks_request_t, instead of using tor_malloc_zero/tor_free directly.
| * | | | | | | | | If we negotiate authentication, require it.Nick Mathewson2011-06-29
| | | | | | | | | |
| * | | | | | | | | Be more strict about when to accept socks auth messageNick Mathewson2011-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the code as it stood, we would accept any number of socks5 username/password authentication messages, regardless of whether we had actually negotiated username/password authentication. Instead, we should only accept one, and only if we have really negotiated username/password authentication. This patch also makes some fields of socks_request_t into uint8_t, for safety.
| * | | | | | | | | Fix 'make check-spaces'Nick Mathewson2011-06-29
| | | | | | | | | |
| * | | | | | | | | Correct byte-counting in socks auth parsing codeNick Mathewson2011-06-29
| | | | | | | | | |
| * | | | | | | | | bug1666 - Pass-through support for SOCKS5 authentication(4)Robert Hogan2010-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement nickm's suggestion that we tolerate SOCKS5 clients that send authentication credentials and SOCKS commands all in one go.
| * | | | | | | | | bug1666 - Pass-through support for SOCKS5 authentication(3)Robert Hogan2010-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add changes file.
| * | | | | | | | | bug1666 - Pass-through support for SOCKS5 authentication (2)Robert Hogan2010-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Address Nick's comments: - Refactor against changes in buffers.c - Ensure we have negotiated a method before accepting authentication credentials
| * | | | | | | | | bug1666 - Pass-through support for SOCKS5 authenticationRobert Hogan2010-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a SOCKS5 client insists on authentication, allow it to negotiate a connection with Tor's SOCKS server successfully. Any credentials the client provides are ignored. This allows Tor to work with SOCKS5 clients that can only support 'authenticated' connections. Also add a bunch of basic unit tests for SOCKS4/4a/5 support in buffers.c.
* | | | | | | | | | Avoid warning in broken_state_count_compareNick Mathewson2011-07-12
| | | | | | | | | |
* | | | | | | | | | Merge branch 'bug2798'Nick Mathewson2011-07-11
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / / |/| | | | | | | | |
| * | | | | | | | | Tweaks to bug2798 based on comments by armaNick Mathewson2011-07-11
| | | | | | | | | |
| * | | | | | | | | Revise code for adding EntryNodes to guards.Nick Mathewson2011-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we'd just take all the nodes in EntryNodes, see which ones were already in the guard list, and add the ones that weren't. There were some problems there, though: * We'd add _every_ entry in EntryNodes, and add them in the order they appeared in the routerlist. This wasn't a problem until we added the ability to give country-code or IP-range entries in the EntryNodes set, but now that we did, it is. (Fix: We now shuffle the entry nodes before adding them; only add up to 10*NumEntryGuards) * We didn't screen EntryNodes for the Guard flag. That's okay if the user has specified two or three entry nodes manually, but if they have listed a whole subcontinent, we should restrict ourselves to the entries that are currently guards. (Fix: separate out the new guard from the new non-guard nodes, and add the Guards first.) * We'd prepend new EntryNodes _before_ the already configured EntryNodes. This could lead to churn. (Fix: don't prepend these.) This patch also pre-screens EntryNodes entries for reachableaddresses/excludenodes, even though we check for that later. This is important now, since we cap the number of entries we'll add.
* | | | | | | | | | Merge remote-tracking branch 'rransom-tor/bug3427'Nick Mathewson2011-07-11
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | Put hashes of all tor source files into or_sha1.iRobert Ransom2011-06-18
| | | | | | | | | | |
* | | | | | | | | | | Merge branch 'bug2616'Nick Mathewson2011-07-11
|\ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | Rename and tweak nodelist_add_node_family() to add nodeNick Mathewson2011-07-11
| | |/ / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's very easy for nodelist_add_node_family(sl,node) to accidentally add 'node', and kind of hard to make sure that it omits it. Instead of taking pains to leave 'node' out, let's instead make sure that we always include it. I also rename the function to nodelist_add_node_and_family, and audit its users so that they don't add the node itself any longer, since the function will take care of that for them. Resolves bug 2616, which was not actually a bug.
* | | | | | | | | | | Merge branch 'feature3116_squashed'Nick Mathewson2011-07-11
|\ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | Disable recording new broken conns when we have bootstrappedNick Mathewson2011-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rationale: right now there seems to be no way for our bootstrap status to dip under 100% once it has reached 100%. Thus, recording broken connections after that point is useless, and wastes memory. If at some point in the future we allow our bootstrap level to go backwards, then we should change this rule so that we disable recording broken connection states _as long as_ the bootstrap status is 100%.
| * | | | | | | | | | | Clear broken connection map on successful bootstrapNick Mathewson2011-07-11
| | | | | | | | | | | |
| * | | | | | | | | | | Document feature3116 fns and improve outputNick Mathewson2011-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - We were reporting the _bottom_ N failing states, not the top N. - With bufferevents enabled, we logged all TLS states as being "in bufferevent", which isn't actually informative. - When we had nothing to report, we reported nothing too loudly. - Also, we needed documentation.
| * | | | | | | | | | | Report the states of failed TLS connections from bootstrap_problemNick Mathewson2011-07-11
| | | | | | | | | | | |
| * | | | | | | | | | | Limit the number of different handshake reasons to reportNick Mathewson2011-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If connections failed in more than 10 different states, let's just report the top ten states.
| * | | | | | | | | | | Record the states of failing OR connectionsNick Mathewson2011-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code lets us record the state of any outgoing OR connection that fails before it becomes open, so we can notice if they're all dying in the same SSL state or the same OR handshake state. More work is still needed: - We need documentation - We need to actually call the code that reports the failure when we realize that we're having a hard time connecting out or making circuits. - We need to periodically clear out all this data -- perhaps, whenever we build a circuit successfully? - We'll eventually want to expose it to controllers, perhaps. Partial implementation of feature 3116.
| * | | | | | | | | | | Make a function staticNick Mathewson2011-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that connection_dir_about_to_close() is in directory.c, there's no reason to expose connection_dir_request_failed().
| * | | | | | | | | | | Split connection_about_to_close_connection into separate functionsNick Mathewson2011-07-11
|/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch does NOTHING but: - move code - add declarations and includes as needed to make the new code work - declare the new functions.
* | | | | | | | | | | typo in feature2841; spotted by asnNick Mathewson2011-07-11
| | | | | | | | | | |
* | | | | | | | | | | Changes file for feature2841.Nick Mathewson2011-07-11
| | | | | | | | | | |
* | | | | | | | | | | Fix compilation from 2841 branchNick Mathewson2011-07-11
| | | | | | | | | | |
* | | | | | | | | | | Merge remote-tracking branch 'public/bug2841'Nick Mathewson2011-07-11
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | / / / | | |_|_|_|_|_|/ / / | |/| | | | | | | | Conflicts: src/or/config.c
| * | | | | | | | | Refactor the interfaces of transport/proxy lookup fnsNick Mathewson2011-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Returning a tristate is needless here; we can just use the yielded transport/proxy_type field to tell whether there's a proxy, and have the return indicate success/failure. Also, store the proxy_type in the or_connection_t rather than letting it get out of sync if a configuration reload happens between launching the or_connection and deciding what to say with it.
| * | | | | | | | | Future-proof and user-proof parse_bridge_lineNick Mathewson2011-07-03
| | | | | | | | | |
| * | | | | | | | | Simplify parse_client_transport_lineNick Mathewson2011-07-02
| | | | | | | | | |
| * | | | | | | | | Style and grammar tweaks on 2841 branchNick Mathewson2011-07-02
| | | | | | | | | |
| * | | | | | | | | Small tweaks to 2841 codeNick Mathewson2011-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - const-ify some transport_t pointers - Remove a vestigial argument to parse_bridge_line - Make it compile without warnings on my laptop with --enable-gcc-warnings
| * | | | | | | | | Trivial code tweaks and documentation updates.George Kadianakis2011-06-28
| | | | | | | | | |
| * | | | | | | | | Revised how we handle ClientTransportPlugin and Bridge lines.George Kadianakis2011-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Multiple Bridge lines can point to the same one ClientTransportPlugin line, and we can have multiple ClientTransportPlugin lines in our configuration file that don't match with a bridge. We also issue a warning when we have a Bridge line with a pluggable transport but we can't match it to a ClientTransportPlugin line.