summaryrefslogtreecommitdiff
path: root/changes/bug24031
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-04-03 15:33:50 -0400
committerNick Mathewson <nickm@torproject.org>2018-04-03 15:33:50 -0400
commit29b3b485b9722ceead4b931af521b999d3c2aeb3 (patch)
treec3374a1a8173f58d8db9c4156ccfb5a39c72e563 /changes/bug24031
parentc2c616eb1958e32995577bdaa5f2c9507fd09c22 (diff)
parent5a8cdec3f8617920f19e3ab7707233ad3f02424f (diff)
downloadtor-29b3b485b9722ceead4b931af521b999d3c2aeb3.tar.gz
tor-29b3b485b9722ceead4b931af521b999d3c2aeb3.zip
Merge remote-tracking branch 'isis-github/bug24031_r5_squashed'
Diffstat (limited to 'changes/bug24031')
-rw-r--r--changes/bug2403113
1 files changed, 13 insertions, 0 deletions
diff --git a/changes/bug24031 b/changes/bug24031
new file mode 100644
index 0000000000..adffa46d8a
--- /dev/null
+++ b/changes/bug24031
@@ -0,0 +1,13 @@
+ o Major bugfixes (protover, voting):
+ - Revise Rust implementation of protover to use a more memory-efficient
+ voting algorithm and corresponding data structures, thus avoiding a
+ potential (but small impact) DoS attack where specially crafted protocol
+ strings would expand to several potential megabytes in memory. In the
+ process, several portions of code were revised to be methods on new,
+ custom types, rather than functions taking interchangeable types, thus
+ increasing type safety of the module. Custom error types and handling
+ were added as well, in order to facilitate better error dismissal/handling
+ in outside crates and avoid mistakenly passing an internal error string to
+ C over the FFI boundary. Many tests were added, and some previous
+ differences between the C and Rust implementations have been
+ remedied. Fixes 24031; bugfix on 0.3.3.1-alpha.