mirror of
https://github.com/Momoko-Ayase/Senbei.git
synced 2026-09-19 03:57:59 -04:00
Adds the Android protection-scheme pipeline: hollowed ELF64/AArch64 libraries are restored statically (stage-1/stage-2 module extraction, container decode, dynamic-linker table rebuild), with app-package (.apk/.apks/.xapk) container handling, cross-source content dedup, and il2cpp metadata support for the Android variants (seeded RID permutation; embedded XOR-wrapped blob extraction). The single senbei CLI now routes single .so files, packages, and folders by content; outputs follow the existing .unpack-infix naming under <root>/unpack or --out. PE behavior is unchanged (35/35 goldens).
69 lines
1.7 KiB
TOML
69 lines
1.7 KiB
TOML
[workspace]
|
|
members = [
|
|
"senbei-android-crypto",
|
|
"senbei-android-elf",
|
|
"senbei-android-engine",
|
|
"senbei-android-metadata",
|
|
"senbei-cli",
|
|
"senbei-crypto",
|
|
"senbei-io",
|
|
"senbei-metadata",
|
|
"senbei-pe",
|
|
]
|
|
default-members = ["senbei-cli"]
|
|
# The wasm bindings crate is its own crate (own Cargo.lock, cdylib) and stays
|
|
# outside the workspace.
|
|
exclude = ["senbei-wasm"]
|
|
resolver = "2"
|
|
|
|
[workspace.package]
|
|
version = "1.2.0"
|
|
edition = "2024"
|
|
rust-version = "1.85"
|
|
license = "AGPL-3.0-only"
|
|
|
|
[workspace.dependencies]
|
|
aes = "0.8"
|
|
anyhow = "1"
|
|
flate2 = "1"
|
|
goblin = "0.10"
|
|
indicatif = "0.18"
|
|
libc = "0.2"
|
|
memmap2 = "0.9"
|
|
owo-colors = "4"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
sha2 = "0.10"
|
|
tempfile = "3"
|
|
thiserror = "2"
|
|
walkdir = "2"
|
|
windows = { version = "0.62", features = [
|
|
"Win32_Foundation",
|
|
"Win32_System_Console",
|
|
"Win32_System_SystemInformation",
|
|
] }
|
|
zip = { version = "0.6.6", default-features = false, features = ["deflate"] }
|
|
senbei-android-crypto = { path = "senbei-android-crypto" }
|
|
senbei-android-elf = { path = "senbei-android-elf" }
|
|
senbei-android-engine = { path = "senbei-android-engine" }
|
|
senbei-android-metadata = { path = "senbei-android-metadata" }
|
|
senbei-crypto = { path = "senbei-crypto" }
|
|
senbei-io = { path = "senbei-io" }
|
|
senbei-metadata = { path = "senbei-metadata" }
|
|
senbei-pe = { path = "senbei-pe" }
|
|
|
|
[workspace.lints.rust]
|
|
unsafe_op_in_unsafe_fn = "deny"
|
|
|
|
[workspace.lints.clippy]
|
|
correctness = { level = "deny", priority = -1 }
|
|
suspicious = { level = "warn", priority = -1 }
|
|
complexity = { level = "warn", priority = -1 }
|
|
perf = { level = "warn", priority = -1 }
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = true
|
|
codegen-units = 1
|
|
strip = true
|