aboutsummaryrefslogtreecommitdiff
path: root/changes/bug24031
blob: 2bb0e83091e670da5464ea012fc6cab4f2ec82a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
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 bug 24031; bugfix on 0.3.3.1-alpha.