naksheap: reconstruct heap object graphs from core dumps

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
This commit is contained in:
lakshit verma 2026-08-15 04:21:59 +05:30
commit a48b163683
No known key found for this signature in database
59 changed files with 10518 additions and 0 deletions

View file

@ -0,0 +1,13 @@
[package]
name = "naksheap-pointer-scan"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
description = "Pointer scanning of carved heap objects and roots into a reference edge set"
[dependencies]
naksheap-core-parse = { path = "../naksheap-core-parse" }
naksheap-allocator-heuristics = { path = "../naksheap-allocator-heuristics" }
rayon.workspace = true
serde.workspace = true