mirror of
https://github.com/vee1e/naksheap.git
synced 2026-09-01 10:18:37 +00:00
Rust workspace that turns a core dump of a stripped, optimized C/C++ binary into a typed heap object graph: objects, sizes, allocator state, references, and probable struct layouts, all without debug info. - glibc ptmalloc carving (main + thread arenas, tcache/fastbin freed state, mmap allocations), ELF core + memory-list minidump parsing - pointer scan, layout clustering, vtable/string/vector detection, confidence + evidence on every node - ASCII/JSON/Graphviz/HTML output, synthetic fixtures with ground truth, and real-dump validation harness (aarch64 glibc 2.39) in scripts/ - web deployment reference stack in deploy/ MIT OR Apache-2.0
35 lines
695 B
TOML
35 lines
695 B
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"crates/naksheap-core-parse",
|
|
"crates/naksheap-allocator-heuristics",
|
|
"crates/naksheap-pointer-scan",
|
|
"crates/naksheap-inference",
|
|
"crates/naksheap-viz",
|
|
"crates/naksheap-testkit",
|
|
"crates/naksheap-cli",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
rust-version = "1.95"
|
|
license = "MIT OR Apache-2.0"
|
|
authors = ["naksheap contributors"]
|
|
|
|
[workspace.dependencies]
|
|
object = "0.40"
|
|
memmap2 = "0.9"
|
|
rayon = "1.12"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
clap = { version = "4", features = ["derive"] }
|
|
anyhow = "1"
|
|
thiserror = "2"
|
|
tempfile = "3"
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
|
|
[profile.dev]
|
|
opt-level = 1
|