aboutsummaryrefslogtreecommitdiff
path: root/changes
Commit message (Collapse)AuthorAge
* Never allow OpenSSL engines to replace the RAND_SSLeay methodNick Mathewson2013-12-18
| | | | | | | | | | | This fixes bug 10402, where the rdrand engine would use the rdrand instruction, not as an additional entropy source, but as a replacement for the entire userspace PRNG. That's obviously stupid: even if you don't think that RDRAND is a likely security risk, the right response to an alleged new alleged entropy source is never to throw away all previously used entropy sources. Thanks to coderman and rl1987 for diagnosing and tracking this down.
* Merge branch 'bug10423' into maint-0.2.4Nick Mathewson2013-12-17
|\
| * Avoid double-free on failure to dump_descriptor() a cached mdNick Mathewson2013-12-17
| | | | | | | | | | | | This is a fix for 10423, which was introducd in caa0d15c in 0.2.4.13-alpha. Spotted by bobnomnom.
* | Merge remote-tracking branch 'public/bug10409_023' into maint-0.2.4Nick Mathewson2013-12-17
|\ \ | |/ |/|
| * Avoid free()ing from an mmap on corrupted microdesc cacheNick Mathewson2013-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'body' field of a microdesc_t holds a strdup()'d value if the microdesc's saved_location field is SAVED_IN_JOURNAL or SAVED_NOWHERE, and holds a pointer to the middle of an mmap if the microdesc is SAVED_IN_CACHE. But we weren't setting that field until a while after we parsed the microdescriptor, which left an interval where microdesc_free() would try to free() the middle of the mmap(). This patch also includes a regression test. This is a fix for #10409; bugfix on 0.2.2.6-alpha.
* | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-11-15
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/or/or.h src/or/relay.c Conflicts were simple to resolve. More fixes were needed for compilation, including: reinstating the tv_to_msec function, and renaming *_conn_cells to *_chan_cells.
| * Improved circuit queue out-of-memory handlerNick Mathewson2013-11-07
| | | | | | | | | | | | | | | | | | | | | | Previously, when we ran low on memory, we'd close whichever circuits had the most queued cells. Now, we close those that have the *oldest* queued cells, on the theory that those are most responsible for us running low on memory, and that those are the least likely to actually drain on their own if we wait a little longer. Based on analysis from a forthcoming paper by Jansen, Tschorsch, Johnson, and Scheuermann. Fixes bug 9093.
* | missing changes file for #10124Nick Mathewson2013-11-11
| |
* | Merge remote-tracking branch 'public/bug9645' into maint-0.2.4Nick Mathewson2013-10-31
|\ \
| * | Fix bug 9645: don't forget an md just because we can't save it.Nick Mathewson2013-09-03
| | |
* | | Merge remote-tracking branch 'public/bug9731b' into maint-0.2.4Nick Mathewson2013-10-31
|\ \ \
| * | | Don't apply read/write buckets to cpuworker connectionsNick Mathewson2013-09-13
| | | | | | | | | | | | | | | | Fixes bug 9731
* | | | Merge remote-tracking branch 'public/bug9780_024_v2' into maint-0.2.4Nick Mathewson2013-10-31
|\ \ \ \
| * | | | Switch ECDHE group default logic for bridge/relay TLSNick Mathewson2013-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to the manpage, bridges use P256 for conformity and relays use P224 for speed. But skruffy points out that we've gotten it backwards in the code. In this patch, we make the default P256 for everybody. Fixes bug 9780; bugfix on 0.2.4.8-alpha.
* | | | | Merge remote-tracking branch 'public/bug6055_v2_024' into maint-0.2.4Nick Mathewson2013-10-31
|\ \ \ \ \
| * | | | | Re-enable TLS 1.[12] when building with OpenSSL >= 1.0.1eNick Mathewson2013-09-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To fix #6033, we disabled TLS 1.1 and 1.2. Eventually, OpenSSL fixed the bug behind #6033. I've considered alternate implementations that do more testing to see if there's secretly an OpenSSL 1.0.1c or something that secretly has a backport of the OpenSSL 1.0.1e fix, and decided against it on the grounds of complexity.
* | | | | | be willing to bootstrap from all three of our directory guardsRoger Dingledine2013-10-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also fix a bug where if the guard we choose first doesn't answer, we would try the second guard, but once we connected to the second guard we would abandon it and retry the first one, slowing down bootstrapping. The fix in both cases is to treat all our initially chosen guards as acceptable to use. Fixes bug 9946.
* | | | | | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-10-11
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | |
| * | | | | Merge remote-tracking branch 'origin/maint-0.2.2' into maint-0.2.3Nick Mathewson2013-10-11
| |\ \ \ \ \
| | * | | | | Update to the October 2013 GeoIP database.Karsten Loesing2013-10-11
| | | | | | |
* | | | | | | Merge branch 'bug9644_024' into maint-0.2.4Nick Mathewson2013-10-10
|\ \ \ \ \ \ \
| * | | | | | | When freeing a cert_list_t, avoid memory leak.Nick Mathewson2013-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were freeing these on exit, but when we added the dl_status_map field to them in fddb814f, we forgot to arrange for it to be freed. I've moved the cert_list_free() code into its own function, and added an appropriate dsmap_free() call. Fixes bug 9644; bugfix on 0.2.4.13-alpha.
* | | | | | | | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-10-10
|\ \ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | |
| * | | | | | | Merge remote-tracking branch 'public/bug9928' into maint-0.2.3Nick Mathewson2013-10-10
| |\ \ \ \ \ \ \
| | * | | | | | | Give credit to bug reporter for 9928Nick Mathewson2013-10-08
| | | | | | | | |
| | * | | | | | | Raise buffer size, fix checks for format_exit_helper_status.Nick Mathewson2013-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is probably not an exploitable bug, since you would need to have errno be a large negative value in the unix pluggable-transport launcher case. Still, best avoided. Fixes bug 9928; bugfix on 0.2.3.18-rc.
* | | | | | | | | Changes file for 9854Nick Mathewson2013-10-09
| | | | | | | | |
* | | | | | | | | When examining interfaces to find an address, discard non-up ones.Nick Mathewson2013-10-08
| |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch from "hantwister" on trac. Fixes bug #9904; bugfix on 0.2.3.11-alpha.
* | | | | | | | Changes file for 9866Nick Mathewson2013-10-08
| | | | | | | |
* | | | | | | | Merge remote-tracking branch 'public/bug9927' into maint-0.2.4Nick Mathewson2013-10-08
|\ \ \ \ \ \ \ \
| * | | | | | | | Generate bootstrapping status messages for microdescs tooNick Mathewson2013-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for 9927.
* | | | | | | | | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-10-08
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | | |
| * | | | | | | | Fix an assert when disabling ORPort with accounting disabled.Nick Mathewson2013-09-18
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that the server_identity_key_is_set() function could return true under conditions where we don't really have an identity key -- specifically, where we used to have one, but we stopped being a server. This is a fix for 6979; bugfix on 0.2.2.18-alpha where we added that assertion to get_server_identity_key().
* | | | | | | | Merge remote-tracking branch 'public/bug9596' into maint-0.2.4Nick Mathewson2013-10-08
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | |
| * | | | | | | Increase POLICY_BUF_LEN to 72 to accomodate IPv6 exit policy items.Nick Mathewson2013-08-26
| | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | Fixes bug 9596; bugfix on 0.2.4.7-alpha.
* | | | | | | Fix a bug in our bug 9776 fix.Nick Mathewson2013-10-02
| |_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By calling circuit_n_chan_done() unconditionally on close, we were closing pending connections that might not have been pending quite for the connection we were closing. Fix for bug 9880. Thanks to skruffy for finding this and explaining it patiently until we understood.
* | | | | | Always call circuit_n_chan_done(chan, 0) from channel_closed()Andrea Shepard2013-09-24
| | | | | |
* | | | | | Avoid error by not saying which intro cell type I meanNick Mathewson2013-09-20
| | | | | |
* | | | | | Round down hidden service descriptor publication times to nearest hourNick Mathewson2013-09-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implements part of proposal 222. We can do this safely, since REND_CACHE_MAX_SKEW is 24 hours.
* | | | | | Remove the timestamp from AUTHENTICATE cells; replace with random bytesNick Mathewson2013-09-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't actually much of an issue, since only relays send AUTHENTICATE cells, but while we're removing timestamps, we might as well do this too. Part of proposal 222. I didn't take the approach in the proposal of using a time-based HMAC, since that was a bad-prng-mitigation hack from SSL3, and in real life, if you don't have a good RNG, you're hopeless as a Tor server.
* | | | | | Get ready to stop sending timestamps in INTRODUCE cellsNick Mathewson2013-09-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For now, round down to the nearest 10 minutes. Later, eliminate entirely by setting a consensus parameter. (This rounding is safe because, in 0.2.2, where the timestamp mattered, REND_REPLAY_TIME_INTERVAL was a nice generous 60 minutes.)
* | | | | | Stop sending the current time in client NETINFO handshakes.Nick Mathewson2013-09-20
| |_|/ / / |/| | | | | | | | | | | | | | Implements part of proposal 222.
* | | | | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-09-16
|\ \ \ \ \ | | |/ / / | |/| | / | |_|_|/ |/| | |
| * | | Merge remote-tracking branch 'origin/maint-0.2.2' into maint-0.2.3Nick Mathewson2013-09-16
| |\ \ \ | | | |/ | | |/|
| | * | Update to the September 2013 GeoIP database.Karsten Loesing2013-09-10
| | | |
* | | | collect and log statistics about onionskins received/processedRoger Dingledine2013-09-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | we skip onionskins that came from non-relays, so we're less likely to run into privacy troubles. starts to implement ticket 9658.
* | | | add a changes entry for ticket 9574Roger Dingledine2013-09-04
| | | |
* | | | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-09-04
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/or/circuitbuild.c
| * | | use !cbt_disabled in place of LearnCBT to avoid needless circsNick Mathewson2013-09-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This would make us do testing circuits "even when cbt is disabled by consensus, or when we're a directory authority, or when we've failed to write cbt history to our state file lately." (Roger's words.) This is a fix for 9671 and an improvement in our fix for 5049. The original misbehavior was in 0.2.2.14-alpha; the incomplete fix was in 0.2.3.17-beta.
| * | | Merge remote-tracking branch 'public/bug9546_023_v2' into maint-0.2.3Nick Mathewson2013-08-25
| |\ \ \