Nick Mathewson
a546487287
Merge branch 'maint-0.3.0'
2017-05-15 18:24:38 -04:00
Nick Mathewson
0f718a85ea
Merge branch 'bug22246_030' into maint-0.3.0
2017-05-15 18:24:24 -04:00
Nick Mathewson
294d80044d
remove a variable I missed
2017-05-15 18:16:58 -04:00
Nick Mathewson
d3279d4304
Do not try to uncompress an empty spool
2017-05-15 18:13:38 -04:00
Nick Mathewson
460b923026
fix a memory leak
2017-05-15 18:13:20 -04:00
Nick Mathewson
6e2eb0afdb
Merge branch 'prop140_aftermath_url_v3'
2017-05-15 18:05:32 -04:00
Nick Mathewson
e1b3c1bbec
Test fix: always set address in new_dir_conn()
2017-05-15 18:00:38 -04:00
Nick Mathewson
f9d8ade912
Dircache protocol version 2 adds support for diffs
2017-05-15 17:53:36 -04:00
Nick Mathewson
da6b00443c
Try not to mess up caches with the X-Or-Diff-From-Consensus header
2017-05-15 17:53:15 -04:00
Nick Mathewson
4531fdbbff
Split consensus-request parsing into a separate function
...
This ought to make the control flow a tiny bit more readable.
2017-05-15 17:51:53 -04:00
Nick Mathewson
eb3c8d376d
Prop140, continued: accept "diff/<HASH>" in URLs, per proposal.
2017-05-15 17:42:17 -04:00
Nick Mathewson
afef059795
Merge remote-tracking branch 'public/prop140_aftermath_cfg'
2017-05-15 17:26:47 -04:00
Nick Mathewson
dae1242532
Merge branch 'ahf_bugs_21667_2_squashed'
2017-05-15 17:22:12 -04:00
Alexander Færøy
9e3f304113
Fix dir_handle_get/... test-cases for prop#278 support.
...
See: https://bugs.torproject.org/21667
2017-05-15 17:21:55 -04:00
Nick Mathewson
65d9408448
dir_handle_get: repair two test cases, note the fixes for 3 others
2017-05-15 17:21:55 -04:00
Alexander Færøy
008194035f
Handle non-compressed requests gracefully.
...
This patch makes us use FALLBACK_COMPRESS_METHOD to try to fetch an
object from the consensus diff manager in case no mutually supported
result was found. This object, if found, is then decompressed using the
spooling system to the client.
See: https://bugs.torproject.org/21667
2017-05-15 17:21:55 -04:00
Alexander Færøy
8d730af0f7
Remove old consensus fetching code from handle_get_current_consensus().
...
This patch removes the calls to spooled_resource_new() when trying to
download the consensus. All calls should now be going through the
consdiff manager.
See: https://bugs.torproject.org/21667
2017-05-15 17:21:55 -04:00
Alexander Færøy
fade313ba3
Fix too wide line from make check-spaces
.
...
See: https://bugs.torproject.org/21667
2017-05-15 17:21:55 -04:00
Alexander Færøy
ae33deb91d
Check for best consensus when no consensusdiff was found.
...
This patch ensures that we use the current consensus in the case where
no consensus diff was found or a consensus diff wasn't requested.
See: https://bugs.torproject.org/21667
2017-05-15 17:21:55 -04:00
Nick Mathewson
7591518d16
Copy valid/fresh-until and signatories values into diffs.
2017-05-15 17:21:55 -04:00
Nick Mathewson
fd1190581d
Store fresh/valid-until and signatories values on all consensus objects.
2017-05-15 17:21:55 -04:00
Nick Mathewson
dcc533fb13
Implement functions to expose valid/fresh-until and voters
...
These still won't do anything till I get the values to be filled in.
Also, I changed the API a little (with corresponding changes in
directory.c) to match things that it's easier to store.
2017-05-15 17:21:55 -04:00
Nick Mathewson
2f06345db3
Move stub accessor functions a level higher, to consdiffmgr
2017-05-15 17:21:55 -04:00
Alexander Færøy
ef2a62b2ff
Fetch the current consensus from the conscache subsystem.
...
This patch changes handle_get_current_consensus() to make it read the
current consensus document from the consensus caching subsystem.
See: https://bugs.torproject.org/21667
2017-05-15 17:21:55 -04:00
Nick Mathewson
ec6b2bbf9b
bugfix-on version for 21329. thanks, meejah!
2017-05-15 15:45:15 -04:00
Nick Mathewson
c88e913b09
Fix another lintchanges issue
2017-05-15 15:32:33 -04:00
Nick Mathewson
f98f5ca40b
fix a bunch of lintchanges complaints
2017-05-15 15:27:13 -04:00
Nick Mathewson
480f966a74
Remove changes files for issues resolved in 0.3.0.7.
2017-05-15 14:32:10 -04:00
Nick Mathewson
3b8888c544
Initialize the HS cache at startup
...
Failure to do this caused an assertion failure with #22246 . This
assertion failure can be triggered remotely, so we're tracking it as
medium-severity TROVE-2017-002.
2017-05-15 13:49:29 -04:00
Nick Mathewson
71a21256b0
Merge branch 'bug22245_024'
2017-05-15 11:46:55 -04:00
Nick Mathewson
85f75d617c
Add hs_test_helpers.h to noinst_HEADERS
2017-05-15 11:45:20 -04:00
Nick Mathewson
a6514b8a20
Fix a logic error in hibernate.c
...
Closes bug 22245; bugfix on 0.0.9rc1, when bandwidth accounting was
first introduced.
Found by Andrey Karpov and reported at https://www.viva64.com/en/b/0507/
2017-05-15 11:43:18 -04:00
Nick Mathewson
0e348720fc
Fix assertion to actually have a chance of failing
...
This assertion can only fail if we mess up some of our other code,
but let's try to get it right.
Closes 22244.
2017-05-15 11:27:12 -04:00
Nick Mathewson
1ec45bb546
Merge branch 'bug18100_029'
2017-05-15 11:19:44 -04:00
Nick Mathewson
4473271c66
Fix the TRPOXY typo in connection_edge.c
...
Also add a get_options() call so it compiles.
Fixes bug 18100; bugfix on 0.2.6.3-alpha. Patch from "d4fq0fQAgoJ".
2017-05-15 11:16:50 -04:00
Nick Mathewson
d3a39cf8d0
Merge remote-tracking branch 'public/bug20270_029'
2017-05-15 10:45:20 -04:00
Nick Mathewson
c83657c687
Remove two obsoleted options.
...
Spotted by atagar
Closes #22257
2017-05-14 19:06:15 -04:00
Roger Dingledine
1474aaa456
fmt two man page entries
...
whoever made the patch for #17975 wasn't using a proper green-screen
vt100. :)
2017-05-14 19:04:00 -04:00
Roger Dingledine
2cf8f6772b
remove stray equals sign
...
resolves ticket 22256. this typo crept in during bug 21715's commit
fd8284c8
.
2017-05-14 19:00:36 -04:00
Alexander Færøy
363f4b8db5
Add stub functions for querying metadata about the consensus.
2017-05-13 01:05:15 +02:00
Alexander Færøy
64116ab97f
Fix tautological constant out-of-range comparison warnings.
2017-05-12 17:59:29 +02:00
Alexander Færøy
a1e8ef0076
Fix DoubleNL warning from make check-spaces
.
2017-05-12 17:57:11 +02:00
Nick Mathewson
077d3085ec
actually enable background compresion for consensuses
2017-05-12 17:45:55 +02:00
Nick Mathewson
db370bb8a8
Test fix: expect old consensuses to be deleted if not deflate-compressed
2017-05-12 17:45:44 +02:00
Nick Mathewson
30dfb36148
consdiffmgr: Reload latest consensus entries on start.
2017-05-12 17:45:33 +02:00
Nick Mathewson
8100305e71
consdiffmgr: expose cached consensuses
2017-05-12 17:45:24 +02:00
Nick Mathewson
7b0dcf5c4a
Cleanup logic: only retain zlib-compressed consensuses
...
Now that we're making a bunch of these with consdiffmgr, we should
throw out all but one when we get a newer consensus.
2017-05-12 17:45:15 +02:00
Nick Mathewson
151cd121a2
consdiffmgr: compress incoming consensuses in the background
...
Also, compress them in several ways.
This breaks the unit tests; subsequent commits will make them pass
again.
2017-05-12 17:45:07 +02:00
Nick Mathewson
6da31ec484
consdiffmgr: Extract the code for compressing and storing
...
We're going to use this for consensuses too.
2017-05-12 17:44:55 +02:00
Alexander Færøy
7a3efe25d9
Use different preferences for compression methods when streaming.
...
See: https://bugs.torproject.org/21667
2017-05-12 17:18:45 +02:00