4 releases

0.1.3 Oct 24, 2022
0.1.2 Nov 18, 2021
0.1.1 Nov 15, 2021
0.1.0 Nov 9, 2021

#102 in Memory management

Download history 687/week @ 2023-06-06 722/week @ 2023-06-13 715/week @ 2023-06-20 680/week @ 2023-06-27 576/week @ 2023-07-04 773/week @ 2023-07-11 915/week @ 2023-07-18 717/week @ 2023-07-25 790/week @ 2023-08-01 906/week @ 2023-08-08 829/week @ 2023-08-15 798/week @ 2023-08-22 743/week @ 2023-08-29 884/week @ 2023-09-05 983/week @ 2023-09-12 680/week @ 2023-09-19

3,508 downloads per month

Apache-2.0

220KB
5K SLoC

C++ 4.5K SLoC // 0.1% comments Rust 238 SLoC // 0.3% comments

Idiomatic Rust bindings for the Scudo Hardened Allocator.

Scudo is a user space heap allocator designed to be reistent to heap exploitation. It is useful to you if your program allocates memory and you depend on unsafe code or you want defense-in-depth against heap exploitation. In addition to security, it achieves competitive performance against jemalloc, tcmalloc and others.

To use Scudo in your crate:

$ cargo add scudo
use scudo::GlobalScudoAllocator;
#[global_allocator]
static SCUDO_ALLOCATOR: GlobalScudoAllocator = GlobalScudoAllocator;

If you want to use the unstable std::alloc::Allocator trait, use the allocator_api feature.

Dependencies

~0.9–1.4MB
~33K SLoC