[package]
name = "memflow-win32"
version = "0.1.5"
authors = ["ko1N <ko1N1337@gmail.com>", "Aurimas Blažulionis <0x60@pm.me>"]
edition = "2018"
description = "win32 integration of the memflow physical memory introspection framework"
documentation = "https://docs.rs/memflow-win32"
readme = "README.md"
homepage = "https://memflow.github.io"
repository = "https://github.com/memflow/memflow"
license-file = "../LICENSE"
keywords = [ "memflow", "introspection", "memory", "dma" ]
categories = [ "api-bindings", "memory-management", "os" ]

[badges]
maintenance = { status = "actively-developed" }
codecov = { repository = "github", branch = "master", service = "github" }

[dependencies]
memflow = { version = "0.1", path = "../memflow", default-features = false }
log = { version = "0.4", default-features = false }
dataview = "0.1"
pelite = { version = "0.9", default-features = false }
widestring = { version = "0.4", default-features = false, features = ["alloc"] }
no-std-compat = { version = "0.4", features = ["alloc"] }
serde = { version = "1.0", default-features = false, optional = true, features = ["derive"] }

# will be replaced by our own signature scanner
regex = { version = "1", optional = true }

# symbolstore
dirs = { version = "2.0", optional = true }
ureq = { version = "1.2", optional = true }
pdb = { version = "0.6", optional = true }
pbr = { version = "1.0", optional = true }
progress-streams = { version = "1.1", optional = true }

[dev_dependencies]
simple_logger = "1.0"
win_key_codes = "0.1"
rand = "0.7"
rand_xorshift = "0.2"
clap = "2.33"
toml = "0.5"
colored = "2.0"

[build_dependencies]
toml = "0.5"
dataview = "0.1"
serde = { version = "1.0", default-features = false, features = ["derive", "alloc"] }

[features]
default = ["std", "serde_derive", "embed_offsets", "symstore", "download_progress", "regex"]
std = ["no-std-compat/std", "memflow/std"]
embed_offsets = ["serde", "memflow/serde_derive"]
collections = []
alloc = []
serde_derive = ["serde", "memflow/serde_derive", "pelite/std", "pelite/serde"]
symstore = ["dirs", "ureq", "pdb"]
download_progress = ["pbr", "progress-streams"]

[[example]]
name = "dump_offsets"
path = "examples/dump_offsets.rs"

[[example]]
name = "generate_offsets"
path = "examples/generate_offsets.rs"

[[example]]
name = "read_keys"
path = "examples/read_keys.rs"

[[example]]
name = "multithreading"
path = "examples/multithreading.rs"

[[example]]
name = "read_bench"
path = "examples/read_bench.rs"
