1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
//! sys-rs — a small ptrace-based binary inspection and tracing toolkit.
//!
//! The crate provides a tracer framework and utilities to inspect running
//! processes: disassembly helpers, breakpoint management, syscall
//! formatting, REPL and progress helpers. The public modules are organized
//! to allow small, targeted tools (for example the `addr2line` and `strace`
//! binaries in `bin/`) to reuse the core tracing logic.
//!
//! See the `bin/` examples in the repository for small command-line front-ends.
//!
//! # Requirements
//!
//! Requires **nightly Rust** (`#![feature(trait_alias)]`) and targets
//! **Linux x86\_64** only.
//!
//! # Library stability
//!
//! The public API of this library crate is an internal implementation detail
//! of the bundled binaries and is **not subject to semver guarantees**.
/// Disassembly helpers using capstone.
/// Software breakpoint installation and management.
/// Command registry, dispatch, and REPL tab-completion.
/// Coverage data collection and source annotation.
/// DWARF debug-info parsing (addr-to-source-line resolution).
/// Error and Result types used throughout the crate.
/// ptrace-based command handler functions for the debugger REPL.
/// Hardware register access via ptrace.
/// CLI argument and environment-variable helpers.
/// Command parameter types and parsed value representation.
/// Instruction printing callbacks and layout selection.
/// ELF binary metadata and address-space inspection.
/// Instruction-level profiling tracer.
/// Tracer loop state, execution/mode enums, and progress callback.
/// Readline-based REPL runner.
/// Syscall metadata, argument formatting, and pretty-printing.
/// Core Tracer trait and fork/exec/ptrace entry-point.