#qemu #reading #fw-cfg

no-std qemu-fw-cfg

A Rust library for reading fw_cfg from QEMU

3 unstable releases

0.2.0 Apr 4, 2023
0.1.1 Feb 1, 2022
0.1.0 Oct 12, 2021

#407 in No standard library

44 downloads per month

MIT/Apache

19KB
314 lines

qemu-fw-cfg-rs

Crates.io License-MIT License-Apache docs.rs

A Rust library for reading fw_cfg from QEMU.

Usage

Add the following to your Cargo.toml:

[dependencies]
qemu-fw-cfg = "0.1"

To use qemu-fw-cfg without alloc, you can use this instead:

[dependencies]
qemu-fw-cfg = { version = "0.1", default-features = false }

Examples

use qemu_fw_cfg::FwCfg;

// Verify that we are inside QEMU.
if running_in_qemu() {
    // Create a new `FwCfg` instance.
    let fw_cfg = unsafe { FwCfg::new().unwrap() };
    // Retrieve information of a file.
    let file = fw_cfg.find_file("etc/igd-opregion").unwrap();
    // Read data from the file.
    let data = fw_cfg.read_file(&file);
}

Rust support

The minimum supported Rust version for qemu-fw-cfg is 1.59.0.

However, testing for x86 currently requires Rust Nightly as it uses Cargo’s build-std.

License

This project is licensed under either of Apache License, Version 2.0 or MIT license at your option.

No runtime deps