| Crates.io | likemod |
| lib.rs | likemod |
| version | 0.2.0 |
| created_at | 2018-09-16 20:53:34.951364+00 |
| updated_at | 2018-09-18 20:17:53.408541+00 |
| description | A pure-Rust library to work with Linux kernel modules |
| homepage | |
| repository | https://github.com/lucab/likemod-rs |
| max_upload_size | |
| id | 85032 |
| size | 17,184 |
A pure-Rust library to work with Linux kernel modules.
It provides support for loading and unloading kernel modules on Linux.
For further details, see init_module(2) and delete_module(2) manpages.
extern crate likemod;
use likemod::errors;
fn load_modfile(fpath: &std::path::Path) -> errors::Result<()> {
// Get a file descriptor to the kernel module object.
let fmod = std::fs::File::open(fpath)?;
// Assemble module parameters for loading.
let mut params = likemod::ModParams::new();
params.insert("bus_delay".to_string(), likemod::ModParamValue::Int(5));
// Try to load the module. It can fail if the kernel
// version and signature don't match.
let loader = likemod::ModLoader::default().set_parameters(params);
loader.load_module_file(&fmod)
}
Some more examples are available under examples.
This crate supports the following optional features:
async: this provides an unload_async method, using futures.Licensed under either of
at your option.