bug24031 930 B

12345678910111213
  1. o Major bugfixes (protover, voting):
  2. - Revise Rust implementation of protover to use a more memory-efficient
  3. voting algorithm and corresponding data structures, thus avoiding a
  4. potential (but small impact) DoS attack where specially crafted protocol
  5. strings would expand to several potential megabytes in memory. In the
  6. process, several portions of code were revised to be methods on new,
  7. custom types, rather than functions taking interchangeable types, thus
  8. increasing type safety of the module. Custom error types and handling
  9. were added as well, in order to facilitate better error dismissal/handling
  10. in outside crates and avoid mistakenly passing an internal error string to
  11. C over the FFI boundary. Many tests were added, and some previous
  12. differences between the C and Rust implementations have been
  13. remedied. Fixes 24031; bugfix on 0.3.3.1-alpha.