- [#190] Introduce RISC-V64 architecture support.
- [#194] Updated vm-memory to 0.16.0.
- [#197] Re-organize
loader
,configurator
andbenches
module layout, leaving original interface intact.
- [#187] Updated vm-memory to 0.15.0.
- [#179] Load hvm_modlist_entry into guest memory when requested.
- [#177] Added loading
of PVH module blobs into guest memory. This enables booting with
initrd
via PVH boot.
- [#173] Updated vm-memory to 0.14.0.
- [#170] Added all features to the generated docs.rs documentation.
- [#162] Updated vm-memory to 0.13.0.
This introduces a
ReadVolatile
bound onKernelLoader::load
.
- [#130] Generate bindings to fix unaligned references in unit tests.
- [#160] Update vm-memory to 0.12.2
- [#71] Fix incorrect alignment for ELF notes, starting address of name field and descriptor field have a 4-byte alignment.
- [#125] The ELF header contains offsets that the loader uses to find other structures. If those offsets are beyond the end of the file (or would go past the end of the file) it is essential to error out when attempting to read those.
- Add a new criterion advisory to ignore list
2580d4
- Updated vm-memory from 0.9.0 to 0.10.0
- Added
insert_init_args
method allowing insertion of init arguments intoCmdline
.
- Removed
InvalidDevice
error type (it wasn't used anywhere). - Replaced
From
withTryFrom<Cmdline>
forVec<u8>
to be able to propagate errors returned byas_cstring
when converting aCmdline
toVec<u8>
. - Support added for both boot and init arguments in
try_from
. - Changed
new
to returnResult
for invalid command line capacity handling.
- Crate is now using edition 2021.
- Derived
Eq
forError
types and thePvhBootCapability
enum.
- Fixed a bug in
load_cmdline
due to which the command line was not null terminated. This resulted in a change in theCmdline
API where instead of returning the cmdline as a String, we're now returning it as aCString
as the latter has support for converting it to a null terminated bytes array. - Fixed an off-by-one error in load_cmdline, where we were doing validations on the first address after the command line memory region, instead of the last inclusive one of it.
- [#104] Fixed
the
--no-default-features
not working.
- [#111] Use caret requirements for dependencies.
- [#66] Fixed potential
overflow in calls to
align_up
.
- [#62] The
load_cmdline
function now takes as a parameter the crate definedCmdline
object instead ofCstr
. This means that customers don't need to convert the object before calling intoload_cmdline
. - [#83] Updated the vm-memory dependency requirement to the latest version (0.6.0).
- [#79] Implemented
From<Cmdline>
forVec<u8>
. This replaces the obsoleteInto
implementation.
- Replaced panic condition in
align_up
with returning an Error. - Fixed potential hang condition in Elf::load caused by arithmetic overflow.
- Disallow overflow when computing the kernel load address when loading ELF.
- Fix unchecked arithmetic in BzImage::load that could lead to undefined behavior.
- Added functions for specifying virtio MMIO devices when building the kernel command line.
- Added a function to specify multiple values in
key=values
pairs when building the kernel command line.
- Added traits and structs for loading ELF (
vmlinux
), big zImage (bzImage
) and PE (Image
) kernels into guest memory. - Added traits and structs for writing boot parameters to guest memory.