Cargo Features
[dependencies]
memflow = { version = "0.2.0-beta9", default-features = false, features = ["std", "dummy_mem", "serde_derive", "memmapfiles", "plugins", "filemap", "64_bit_mem", "os_helpers", "128_bit_mem"] }
- default = 64_bit_mem, filemap, memmapfiles, os_helpers, plugins, serde_derive, std
-
These default features are set whenever
memflow
is added without
somewhere in the dependency tree.default-features = false - std default = coarsetime
-
Enables std of cglue and no-std-compat
Affects
connector::fileio
,memory_view::cursor
,memory_view::MemoryView.cursor
,memory_view::MemoryView.into_cursor
,memory_view::MemoryView.cursor_at
,memory_view::MemoryView.into_cursor_at
,cache::timed_validator
,cache::DefaultCacheValidator
… - dummy_mem = rand, rand_xorshift
- serde_derive default memmapfiles = serde
- memmapfiles default = serde_derive, toml
- plugins default = abi_stable, dirs, goblin, libloading, once_cell, os_helpers
-
Enables layout_checks of cglue, std of log
Affects
memflow::plugins
… - filemap default = memmap
-
Affects
connector::filemap
… - 64_bit_mem default
-
Affects
address::umem
,address::imem
… - os_helpers default plugins = goblin, pelite
- 128_bit_mem
-
use 128 bit addressing.
If 64_bit_mem is also enabled, 64-bit mode takes precedence.
This is because 128-bit mode is not necessary to date, and u128 is not FFI-safe.Affects
address::umem
,address::imem
…
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features.
- coarsetime std
- rand dummy_mem?
-
With default features
- rand_xorshift dummy_mem?
- memmap filemap
- libloading plugins
-
Enables libloading ^0.7.2
plugins
- dirs plugins
-
Enables dirs ^4.0.0
- pelite os_helpers
-
Enables unsafe_alignment of pelite =0.9.0
enable unsafe_alignment for now, this is UB, but the idea is to fix pelite in upstream
- abi_stable plugins
-
Enables default features of abi_stable ^0.10.3
Affects
memflow::abi_stable
… - once_cell plugins
- goblin os_helpers plugins
-
Enables pe32, pe64, elf32, elf64, mach32, mach64 and default features of goblin ^0.5.1
- serde serde_derive
- toml memmapfiles
-
Enables toml ^0.5.8