aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | | | | Resolve a resource leak in test_util_split_linesNick Mathewson2011-11-30
| | | | | | | | | | | | | | | | | | | | Fixes coverity CID # 488
* | | | | appease "make check-spaces"Nick Mathewson2011-11-30
| | | | |
* | | | | Merge branch 'ipv6_bridges_squashed'Nick Mathewson2011-11-30
|\ \ \ \ \
| * | | | | Rename one more recalcitrant function.Nick Mathewson2011-11-30
| | | | | |
| * | | | | Add changes file.Linus Nordberg2011-11-30
| | | | | |
| * | | | | Warn user about client ignoring non-preferred IP address for a bridge.Linus Nordberg2011-11-30
| | | | | |
| * | | | | Whitespace changes.Linus Nordberg2011-11-30
| | | | | |
| * | | | | Make the router_get_*_orport interface consistent with node_*.Linus Nordberg2011-11-30
| | | | | |
| * | | | | Make router_get_{prim,alt,pref}_addr_port take tor_addr_port_t *.Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | Rename to *_orport for consistency with node_*.
| * | | | | Merge node_get_{prim,pref,pref_ipv6}_addr with their _orport counterparts.Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This keeps the IP address and TCP for a given OR port together, reducing the risk of using an address for one address family with a port of another. Make node_get_addr() a wrapper function for compatibility.
| * | | | | Use correct address family where necessary for bridges on IPv6.Linus Nordberg2011-11-30
| | | | | |
| * | | | | Use the preferred address and port when initiating a connection.Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is not as conservative as we could do it, f.ex. by looking at the connection and only do this for connections to bridges. A non-bridge should never have anything else than its primary IPv4 address set though, so I think this is safe.
| * | | | | Take IPv6 into account when rewriting routerinfo for a bridge and maintain ↵Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ipv6_preferred. Don't touch the string representation in routerinfo_t->address. Also, set or clear the routerinfo_t->ipv6_preferred flag based on the address family of the bridge.
| * | | | | Use preferred address when looking for bridges by routerinfo_t.Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | This should be safe to do for all uses of get_configured_bridge_by_routerinfo().
| * | | | | Clarify function documentation.Linus Nordberg2011-11-30
| | | | | |
| * | | | | First chunk of support for bridges on IPv6Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Comments below focus on changes, see diff for added code. New type tor_addr_port_t holding an IP address and a TCP/UDP port. New flag in routerinfo_t, ipv6_preferred. This should go in the node_t instead but not now. Replace node_get_addr() with - node_get_prim_addr() for primary address, i.e. IPv4 for now - node_get_pref_addr() for preferred address, IPv4 or IPv6. Rename node_get_addr_ipv4h() node_get_prim_addr_ipv4h() for consistency. The primary address will not allways be an IPv4 address. Same for node_get_orport() -> node_get_prim_orport(). Rewrite node_is_a_configured_bridge() to take all OR ports into account. Extend argument list to extend_info_from_node and extend_info_from_router with a flag indicating if we want to use the routers primary address or the preferred address. Use the preferred address in as few situtations as possible for allowing clients to connect to bridges over IPv6.
| * | | | | Turn get_first_advertised_v4_port_by_type() into ↵Linus Nordberg2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | get_first_advertised_port_by_type_af().
| * | | | | Add some logging and comments.Linus Nordberg2011-11-30
| | | | | |
| * | | | | Bridges can advertise a single IPv6 address with orportNick Mathewson2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is deliberately more restrictive than we'd want to be. Needs testing!
| * | | | | Initial support for simplest use of prop186 or-address linesNick Mathewson2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lets a routerinfo_t have a single IPv6 or-address, and adds support for formatting and parsing those lines.
| * | | | | Initial hacking for proposal 186.Nick Mathewson2011-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code handles the new ORPort options, and incidentally makes all remaining port types use the new port configuration systems. There are some rough edges! It doesn't do well in the case where your Address says one thing but you say to Advertise another ORPort. It doesn't handle AllAddrs. It doesn't actually advertise anything besides the first listed advertised IPv4 ORPort and DirPort. It doesn't do port forwarding to them either. It's not tested either, it needs more documentation, and it probably forgets to put the milk back in the refrigerator.
* | | | | | Add an assert before dereferencing entry_conn->socks_requestRobert Ransom2011-11-29
|/ / / / / | | | | | | | | | | | | | | | This may turn a segfault which katmagic saw into an assertion failure.
* | | | | Merge remote-tracking branch 'rransom-tor/bug3460-v4'Nick Mathewson2011-11-29
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/or/rendservice.c
| * | | | | Correct documentation comments for fields formerly named accepted_introsRobert Ransom2011-11-27
| | | | | |
| * | | | | Rename accepted_intros fieldsRobert Ransom2011-11-27
| | | | | |
| * | | | | Reduce lifetime of DH public key replay-detection cache elementsRobert Ransom2011-10-31
| | | | | |
| * | | | | Ignore timestamps of INTRODUCE2 cellsRobert Ransom2011-10-31
| | | | | |
| * | | | | Move the real INTRODUCE2 replay-detection cache into rend_intro_point_tRobert Ransom2011-10-30
| | | | | |
| * | | | | Make introduction points expireRobert Ransom2011-10-30
| | | | | |
| * | | | | Allow intro points to expire somewhat gracefullyRobert Ransom2011-10-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Right Way to expire an intro point is to establish a new one to replace it, publish a new descriptor that doesn't list any expiring intro points, and *then*, once our upload attempts for the new descriptor have ended (whether in success or failure), close the expiring intro points. Unfortunately, we can't find out when the new descriptor has actually been uploaded, so we'll have to settle for a five-minute timer. There should be no significant behaviour changes due to this commit (only a log-message change or two), despite the rather massive overhaul, so this commit doesn't include a changes/ file. (The commit that teaches intro_point_should_expire_now to return non-zero gets a changes/ file, though.)
| * | | | | Use SMARTLIST_FOREACH_BEGIN and _END, not a for loopRobert Ransom2011-10-30
| | | | | |
| * | | | | Correct bogus commentsRobert Ransom2011-10-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The behaviour of rend_services_introduce here is likely as bogus as the comments were.
| * | | | | Use a more meaningful variable nameRobert Ransom2011-10-30
| | | | | |
| * | | | | Determine whether an intro point was in the last HS desc in a sane wayRobert Ransom2011-10-30
| | | | | |
| * | | | | Record which intro points were listed in the last HS descRobert Ransom2011-10-30
| | | | | |
| * | | | | Record the number of INTRODUCE2 cells each intro point has receivedRobert Ransom2011-10-30
| | | | | |
| * | | | | Correct a log messageRobert Ransom2011-10-30
| | | | | |
| * | | | | Record the time at which each intro point was first publishedRobert Ransom2011-10-30
| | | | | |
| * | | | | Improve a commentRobert Ransom2011-10-30
| | | | | |
| * | | | | Allow different HSes to maintain different numbers of intro pointsRobert Ransom2011-10-30
| | | | | |
* | | | | | Make unit tests run again. Fix bug 4606.Nick Mathewson2011-11-29
| | | | | |
* | | | | | Merge remote-tracking branch 'rransom-tor/bug4605'Nick Mathewson2011-11-29
|\ \ \ \ \ \
| * | | | | | Add 'config-defaults-file' to getinfo_items tableRobert Ransom2011-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bugfix on commit 230422b955e1708f27f42cdd25e8b21a33fdd3dd, not yet in any release; fixes bug #4605.
| * | | | | | Set torrc_fname in load_torrc_from_diskRobert Ransom2011-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bugfix on commit 230422b955e1708f27f42cdd25e8b21a33fdd3dd, not yet in any release. Fixes bug #4604; reported by koolfy.
* | | | | | | Merge branch 'bug4587_v2'Nick Mathewson2011-11-29
|\ \ \ \ \ \ \
| * | | | | | | Set renegotiation callbacks immediately on tls inititationNick Mathewson2011-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This way, we can't miss a renegotiation attempt in a v2 handshake, or miss excess renegotiation attempts. Partial fix for bug 4587.
* | | | | | | | Correct manpage entry for DynamicDHGroupsNick Mathewson2011-11-29
| | | | | | | |
* | | | | | | | Merge remote-tracking branch 'asn-mytor/bug4548_take2'Nick Mathewson2011-11-29
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | |
| * | | | | | | Write dynamic DH parameters to a file.George Kadianakis2011-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of only writing the dynamic DH prime modulus to a file, write the whole DH parameters set for forward compatibility. At the moment we only accept '2' as the group generator. The DH parameters gets stored in base64-ed DER format to the 'dynamic_dh_params' file.
| * | | | | | | Introduce write_bytes_to_new_file().George Kadianakis2011-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce write_bytes_to_new_file(), a function which writes bytes to a file only if that file did not exist.