aboutsummaryrefslogtreecommitdiff
path: root/changes
Commit message (Collapse)AuthorAge
* An attempt at bug3940 and making AllowDotExit 0 work with MapAddressNick Mathewson2012-05-11
| | | | | | | | | | | | | | | | This time, I follow grarpamp's suggestion and move the check for .exit+AllowDotExit 0 to the top of connection_ap_rewrite_and_attach, before any rewriting occurs. This way, .exit addresses are forbidden as they arrive from a socks connection or a DNSPort request, and not otherwise. It _is_ a little more complicated than that, though. We need to treat any .exit addresses whose source is TrackHostExits as meaning that we can retry without that exit. We also need to treat any .exit address that comes from an AutomapHostsOnResolve operation as user-provided (and thus forbidden if AllowDotExits==0), so that transitioning from AllowDotExits==1 to AllowDotExits==0 will actually turn off automapped .exit addresses.
* Merge remote-tracking branch 'asn/bug4865_take2'Nick Mathewson2012-05-11
|\
| * Add changes file for #4865.George Kadianakis2012-03-31
| |
* | Merge remote-tracking branch 'public/bug5091'Nick Mathewson2012-05-11
|\ \
| * | Fix tor_strtok_r_impl and test cases per bug #5091nils2012-03-30
| |/ | | | | | | | | | | | | | | | | | | == Nick here. I tweaked this patch a little to make it apply cleanly to master, to extract some common code into a function, and to replace snprintf with tor_snprintf. -- nickm
* | Fix O(n^2) performance when parsing a big pile of extrainfosNick Mathewson2012-05-10
| | | | | | | | | | | | | | | | | | We were doing an O(n) strlen in router_get_extrainfo_hash() for every one we tried to parse. Instead, have router_get_extrainfo_hash() take the length of the extrainfo as an argument, so that when it's called from extrainfo_parse_from_string(), it doesn't do a strlen() over the whole pile of extrainfos.
* | Merge remote-tracking branch 'public/bug4591'Nick Mathewson2012-05-10
|\ \
| * | Only disable cert chaining on the first TLS handshakeNick Mathewson2012-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the client uses a v2 cipherlist on the renegotiation handshake, it looks as if they could fail to get a good cert chain from the server, since they server would re-disable certificate chaining. This patch makes it so the code that make the server side of the first v2 handshake special can get called only once. Fix for 4591; bugfix on 0.2.0.20-rc.
* | | Merge branch 'bug5786'Nick Mathewson2012-05-10
|\ \ \
| * | | Detect out-of-bounds bwweightscale values early in the voting processNick Mathewson2012-05-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | Check more thoroughly for dups when parsing networkstatus parametersNick Mathewson2012-05-07
| | | | | | | | | | | | | | | | | | | | | | | | See changes file for details. Partial fix for bug 5786; fix on 0.2.2.2-alpha.
* | | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2012-05-10
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/common/util.c src/test/test_util.c
| * \ \ \ Merge branch 'bug5786_range_022' into maint-0.2.2Nick Mathewson2012-05-10
| |\ \ \ \
| | * | | | Handle out-of-range values in tor_parse_* integer functionsNick Mathewson2012-05-07
| | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The underlying strtoX functions handle overflow by saturating and setting errno to ERANGE. If the min/max arguments to the tor_parse_* functions are equal to the minimum/maximum of the underlying type, then with the old approach, we wouldn't treat a too-large value as genuinely broken. Found this while looking at bug 5786; bugfix on 19da1f36 (in Tor 0.0.9), which introduced these functions.
* | | | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2012-05-10
|\| | | | | |_|/ / |/| | |
| * | | Add changes/bug5760Ravi Chandra Padmala2012-05-10
| |/ /
* | | Merge branch 'bug5645_take2'Nick Mathewson2012-05-07
|\ \ \
| * | | Reorder rend_mid_rendezvous() to do protocol violation checks on top.George Kadianakis2012-05-07
| | | |
* | | | Merge branch 'bug5070_take2'Nick Mathewson2012-05-07
|\ \ \ \
| * | | | Changes file for bug 5070Nick Mathewson2012-05-07
| |/ / /
* / / / Fix bug 5762: detect missing accept4 that gives ENOSYSNick Mathewson2012-05-04
|/ / / | | | | | | | | | | | | | | | | | | We had been checking for EINVAL, but that means that SOCK_* isn't supported, not that the syscall itself is missing. Bugfix on 0.2.3.1-alpha, which started to use accept4.
* | | Add a missing ntohl to tell_controller_about_resolve_resultNick Mathewson2012-05-01
| | | | | | | | | | | | Fix for bug 5723; bugfix on 0.2.3.1-alpha (commit 22f723e4)
* | | fold in new changes entriesRoger Dingledine2012-04-30
| | |
* | | Fix headers in test for whether environ is declared in stdlib/unistdNick Mathewson2012-04-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | We'd had our configure.in test include unistd.h unconditionally, which would fail on Windows/mingw, even though environ _was_ declared there. Fix for 5704; bugfix on 0.2.3.13-alpha. Thanks to Erinn for finding this and rransom for figuring out the problem.
* | | Several mingw/msvc/cross-compilation fixesNick Mathewson2012-04-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They boil down to: - MS_WINDOWS is dead and replaced with _WIN32, but we let a few instances creep in when we merged Esteban's tests. - Capitalizing windows header names confuses mingw. - #ifdef 0 ain't C. - One unit test wasn't compiled on windows, but was being listed anyway. - One unit test was checking for the wrong value. Gisle Vanem found and fixed the latter 3 issues.
* | | Merge remote-tracking branch 'arma/bug5623'Nick Mathewson2012-04-24
|\ \ \
| * | | be willing to use nodes in excludeexitnodes as directory mirrorsRoger Dingledine2012-04-24
| | | | | | | | | | | | | | | | fixes bug 5623.
* | | | Merge remote-tracking branch 'nickm/bug2497'Roger Dingledine2012-04-24
|\ \ \ \
| * | | | Twiddle ROUTER_{MAX_COSMETIC_TIME_DIFFERENCE,MAX_AGE_TO_PUBLISH}Nick Mathewson2012-03-30
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is ticket 2479. Roger's original explanation was: We have a series of bugs where relays publish a descriptor within 12 hours of their last descriptor, but the authorities drop it because it's not different "enough" from the last one and it's too close to the last one. The original goal of this idea was to a) reduce the number of new descriptors authorities accept (and thus have to store) and b) reduce the total number of descriptors that clients and mirrors fetch. It's a defense against bugs where relays publish a new descriptor every minute. Now that we're putting out one consensus per hour, we're doing better at the total damage that can be caused by 'b'. There are broader-scale design changes that would help here, and we've had a trac entry open for years about how relays should recognize that they're not in the consensus, or recognize when their publish failed, and republish sooner. In the mean time, I think we should change some of the parameters to make the problem less painful.
* | | | Merge remote-tracking branch 'public/bug5103'Nick Mathewson2012-04-24
|\ \ \ \
| * | | | Fix --enable-static-tor on OpenBSDNick Mathewson2012-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we'd been using "we have clock_gettime()" as a proxy for "we need -lrt to link a static libevent". But that's not really accurate: we should only add -lrt if searching for clock_gettime function adds -lrt to our libraries.
* | | | | Merge remote-tracking branch 'public/bug4572'Nick Mathewson2012-04-24
|\ \ \ \ \
| * | | | | Obsolete GiveGuardFlagTo_CVE_2011_2768_VulnerableRelaysNick Mathewson2012-04-11
| | | | | | | | | | | | | | | | | | | | | | | | Closes ticket 4572.
* | | | | | Add a check_no_tls_errors() to read_to_buf_tlsArturo Filastò2012-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes bug #4528 "read_to_buf_tls(): Inconsistency in code". This check was added back in 0.1.0.3-rc, but somehow we forgot to leave it in when we refactored read_to_buf_tls in 0.1.0.5-rc. (patch by Arturo; commit message and changes file by nickm)
* | | | | | Merge branch 'bug4438-v2'Nick Mathewson2012-04-24
|\ \ \ \ \ \
| * | | | | | Say that bug4438 was a fix on 0.2.1.9-alpha.Nick Mathewson2012-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifically, it was a fix on 33e2053ebca5d, where we introduced the WRA_* and ROUTER_* codes for dirserv_add_descriptor. Previously, we had checked for a _negative_ return from dirserv_add_descriptor, which meant "rejected". An insufficiently new descriptor would give a 0-valued return. But when we switched from numbers to enums, we got this check wrong and had init_keys() give an error whenever the descriptor wasn't accepted.
| * | | | | | Don't exit on dirauths for some config transitionsSebastian Hahn2011-11-08
| | | | | | |
* | | | | | | Merge remote-tracking branch 'public/bug5112'Nick Mathewson2012-04-24
|\ \ \ \ \ \ \
| * | | | | | | If SOCK_CLOEXEC and friends fail, fall back to regular socket() callsNick Mathewson2012-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since 0.2.3.1-alpha, we've supported the Linux extensions to socket(), open(), socketpair(), and accept() that enable us to create an fd and make it close-on-exec with a single syscall. This not only saves us a syscall (big deal), but makes us less vulnerable to race conditions where we open a socket and then exec before we can make it close-on-exec. But these extensions are not supported on all Linuxes: They were added between 2.6.23 or so and 2.6.28 or so. If you were to build your Tor against a recent Linux's kernel headers, and then run it with a older kernel, you would find yourselve unable to open sockets. Ouch! The solution here is that, when one of these syscalls fails with EINVAL, we should try again in the portable way. This adds an extra syscall in the case where we built with new headers and are running with old ones, but it will at least allow Tor to work. Fixes bug 5112; bugfix on 0.2.3.1-alpha.
* | | | | | | | Merge remote-tracking branch 'public/bug5537'Nick Mathewson2012-04-24
|\ \ \ \ \ \ \ \
| * | | | | | | | We allow IPv6 connections, don't use sockaddr_in with getsocknameNick Mathewson2012-03-30
| | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes client_check_address_changed to work better with IPv6 Tor clients, and prevents them from spewing errors. Fix for ticket 5537.
* | | | | | | | Add changes file for miniupnpc 1.6 fixNick Mathewson2012-04-24
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | fold in remaining changesRoger Dingledine2012-04-23
| | | | | | |
* | | | | | | Merge remote-tracking branch 'nickm/bug5438'Roger Dingledine2012-04-23
|\ \ \ \ \ \ \
| * | | | | | | Remove the deprecated FooListenAddress options from torrc.sample.inNick Mathewson2012-03-30
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | Bug 5438.
* | | | | | | Don't reset intro-point creation rate-limiting timerRobert Ransom2012-04-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we would reset it at the drop of a hat -- every time a second passes without any of the intro-point circs already launched for the service failing. Fixes bug 4607.
* | | | | | | start to fold in changelog entriesRoger Dingledine2012-04-19
| | | | | | |
* | | | | | | Merge remote-tracking branch 'origin/maint-0.2.2'Nick Mathewson2012-04-19
|\ \ \ \ \ \ \ | | |_|_|_|_|/ | |/| | | | |
| * | | | | | Fix a log-uninitialized-buffer bug.Nick Mathewson2012-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for 5647; bugfix on 0.2.1.5-alpha.
* | | | | | | initial round of changelog stanza cleanupRoger Dingledine2012-04-19
| | | | | | |