2018-04-03 21:19:40 +02:00
|
|
|
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
|
2018-04-03 21:31:30 +02:00
|
|
|
remedied. Fixes bug 24031; bugfix on 0.3.3.1-alpha.
|