mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2026-05-11 05:19:58 +00:00
To merge the multiboot bootargs within sbl_init_vm_boot_info(), buffer overflow could happen when it doesn't provide correct 'dmax' argument to strncpy_s(). Also, currently it doesn't check the availability of the dest buffer before overwriting '\0' with a whitespace, which theoretically the dest string could end up with no null terminator within it's array boundary. This patch also creates a separate function to merge the cmdline strings, because after the above fixes some lines in sbl_init_vm_boot_info() function could have up to 7 tabs in front of the first character, which looks messy and sbl_init_vm_boot_info() is getting too complicated. Tracked-On: #2806 Signed-off-by: Zide Chen <zide.chen@intel.com> Acked-by: Anthony Xu <anthony.xu@intel.com> Reviewed-by: Eddie Dong <eddie.dong@intel.com>
ACRN Hypervisor ############### The open source `Project ACRN`_ defines a device hypervisor reference stack and an architecture for running multiple software subsystems, managed securely, on a consolidated system by means of a virtual machine manager. It also defines a reference framework implementation for virtual device emulation, called the "ACRN Device Model". The ACRN Hypervisor is a Type 1 reference hypervisor stack, running directly on the bare-metal hardware, and is suitable for a variety of IoT and embedded device solutions. The ACRN hypervisor addresses the gap that currently exists between datacenter hypervisors, and hard partitioning hypervisors. The ACRN hypervisor architecture partitions the system into different functional domains, with carefully selected guest OS sharing optimizations for IoT and embedded devices. You can find out more about Project ACRN on the `Project ACRN documentation`_ website. .. _`Project ACRN`: https://projectacrn.org .. _`ACRN Hypervisor`: https://github.com/projectacrn/acrn-hypervisor .. _`Project ACRN documentation`: https://projectacrn.github.io/