[package]
edition = "2021"
rust-version = "1.75"
name = "ud-emulator"
version = "0.2.0"
authors = ["Mark Karpeles"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pure-Rust 32-bit x86 emulator + PE runtime loader + Win32 host shims. Mirrors oxideav-vfw; intended to grow into the dynamic-analysis backend that informs decompilation (indirect-target recovery, constant-data discovery)."
homepage = "https://github.com/KarpelesLab/univdreams"
readme = false
keywords = [
"decompiler",
"compiler",
"binary-analysis",
"reverse-engineering",
"emulator",
]
categories = [
"development-tools",
"command-line-utilities",
"emulators",
]
license = "MIT"
repository = "https://github.com/KarpelesLab/univdreams"
[package.metadata.docs.rs]
features = [
"trace",
"trace-exec",
]
[features]
default = []
trace = []
trace-exec = ["trace"]
[lib]
name = "ud_emulator"
path = "src/lib.rs"
[[test]]
name = "codec_corpus"
path = "tests/codec_corpus.rs"
[[test]]
name = "context_integration"
path = "tests/context_integration.rs"
[[test]]
name = "encode_decode_corpus"
path = "tests/encode_decode_corpus.rs"
[[test]]
name = "ffi_smoke"
path = "tests/ffi_smoke.rs"
[[test]]
name = "icopen_trace"
path = "tests/icopen_trace.rs"
[[test]]
name = "lagarith_gs_forensics"
path = "tests/lagarith_gs_forensics.rs"
[[test]]
name = "round69_msadds32_inner_decode_watch"
path = "tests/round69_msadds32_inner_decode_watch.rs"
[[test]]
name = "round70_ic_get_set_state"
path = "tests/round70_ic_get_set_state.rs"
[[test]]
name = "round70_msadds32_ea3a_forensic"
path = "tests/round70_msadds32_ea3a_forensic.rs"
[dependencies.cab]
version = "0.6"
[dependencies.msi]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dev-dependencies.serde]
version = "1"
features = ["derive"]
[dev-dependencies.toml]
version = "0.8"
[dev-dependencies.ureq]
version = "2"
features = ["tls"]
default-features = false
[lints.clippy]
doc_markdown = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
similar_names = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_debug_implementations = "warn"
unsafe_op_in_unsafe_fn = "deny"