[[bench]]
name = "elf_loader"
path = "benches/elf_loader.rs"
[[bench]]
name = "jit_compile"
path = "benches/jit_compile.rs"
[[bench]]
name = "memory_mapping"
path = "benches/memory_mapping.rs"
[[bench]]
name = "vm_execution"
path = "benches/vm_execution.rs"
[dependencies.arbitrary]
features = ["derive"]
optional = true
version = "1.0"
[dependencies.byteorder]
version = "1.2"
[dependencies.combine]
version = "3.8.1"
[dependencies.gdbstub]
optional = true
version = "0.6.2"
[dependencies.hash32]
version = "0.2.0"
[dependencies.log]
version = "0.4.2"
[dependencies.rand]
features = ["small_rng"]
version = "0.8.5"
[dependencies.rustc-demangle]
version = "0.1"
[dependencies.scroll]
version = "0.11"
[dependencies.shuttle]
optional = true
version = "0.7.1"
[dependencies.thiserror]
version = "1.0.26"
[dev-dependencies.elf]
version = "0.0.10"
[dev-dependencies.json]
version = "0.12"
[[example]]
name = "disassemble"
path = "examples/disassemble.rs"
[[example]]
name = "to_json"
path = "examples/to_json.rs"
[features]
debugger = ["gdbstub"]
default = ["jit"]
fuzzer-not-safe-for-production = ["arbitrary"]
jit = ["libc", "winapi"]
shuttle-test = ["dep:shuttle"]
[lib]
name = "solana_rbpf"
path = "src/lib.rs"
[package]
authors = ["Solana Maintainers <maintainers@solana.foundation>"]
autobenches = false
autobins = false
autoexamples = false
autotests = false
build = false
description = "Virtual machine and JIT compiler for eBPF programs"
edition = "2018"
homepage = "https://solana.com/"
include = ["src/**", "examples/**", "tests/**", "benches/**", "LICENSE*", "Cargo.toml"]
keywords = ["BPF", "eBPF", "interpreter", "JIT", "filtering"]
license = "Apache-2.0"
name = "solana_rbpf"
readme = "README.md"
repository = "https://github.com/solana-labs/rbpf"
version = "0.8.5"
[target."cfg(not(windows))".dependencies.libc]
optional = true
version = "0.2"
[target."cfg(windows)".dependencies.winapi]
features = ["memoryapi", "sysinfoapi", "winnt", "errhandlingapi"]
optional = true
version = "0.3"
[[test]]
name = "assembler"
path = "tests/assembler.rs"
[[test]]
name = "disassembler"
path = "tests/disassembler.rs"
[[test]]
name = "execution"
path = "tests/execution.rs"
[[test]]
name = "exercise_instructions"
path = "tests/exercise_instructions.rs"
[[test]]
name = "verifier"
path = "tests/verifier.rs"