[package]
edition = "2024"
name = "pers"
version = "0.1.0"
authors = ["Stefan Hausotte"]
build = false
include = [
"/src/**/*.rs",
"/README.md",
"/LICENSE-APACHE",
"/LICENSE-MIT",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Parser for Windows Portable Executable (PE) files that borrows the file data, a Rust port of PeNet"
homepage = "https://github.com/secana/PeRs"
documentation = "https://docs.rs/pers"
readme = "README.md"
keywords = [
"pe",
"portable-executable",
"parser",
"windows",
"authenticode",
]
categories = [
"parser-implementations",
"no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/secana/PeRs"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
authenticode = [
"dep:der",
"dep:x509-cert",
"dep:rsa",
"dep:p256",
"dep:p384",
]
default = [
"std",
"mmap",
"resources",
"dotnet",
"authenticode",
]
dotnet = []
mmap = [
"std",
"dep:memmap2",
]
resources = []
std = [
"hex/std",
"uuid/std",
"thiserror/std",
]
[lib]
name = "pers"
path = "src/lib.rs"
[dependencies.bitflags]
version = "2.13.2"
[dependencies.der]
version = "0.7.10"
features = [
"alloc",
"oid",
]
optional = true
default-features = false
[dependencies.hex]
version = "0.4.3"
features = ["alloc"]
default-features = false
[dependencies.md-5]
version = "0.11.0"
default-features = false
[dependencies.memmap2]
version = "0.9.11"
optional = true
[dependencies.p256]
version = "0.13"
features = ["ecdsa"]
optional = true
default-features = false
[dependencies.p384]
version = "0.13"
features = ["ecdsa"]
optional = true
default-features = false
[dependencies.rsa]
version = "0.9.10"
optional = true
default-features = false
[dependencies.sha1]
version = "0.11.0"
default-features = false
[dependencies.sha2]
version = "0.11.1"
default-features = false
[dependencies.thiserror]
version = "2.0.21"
default-features = false
[dependencies.uuid]
version = "1.28.0"
default-features = false
[dependencies.x509-cert]
version = "0.2.5"
optional = true
default-features = false
[dependencies.zerocopy]
version = "0.8.63"
features = ["derive"]
[lints.rust]
missing_docs = "allow"