265 Commits
Author SHA1 Message Date
longpanda 06037474e6 Fix the grub2 mode regression introduced in 1.1.18 (#3772) 2026-10-12 14:39:52 +08:00
longpanda 32df278c7a Add check before pointer free. 2026-10-12 14:37:51 +08:00
longpanda 029a0a9d16 Experimental support for SteamOS recovery images. (#3712 #2875 #1815) 2026-09-30 19:20:12 +08:00
longpanda a67151f859 Make vt_img_extra_initrd_append cmd auto process suffix.
Different Linux distros use different kernel module file format (e.g. .ko/.ko.xz/.ko.zst ...)
Add auto detect feature to vt_img_extra_initrd_append.
2026-09-30 19:10:49 +08:00
longpanda b327e92a34 Add support for custom Syslinux-based ISO (#3760) 2026-09-29 14:32:50 +08:00
longpanda 5ebef5af77 Fix the boot issue for latest GhostBSD (#3664) 2026-07-24 16:56:59 +08:00
longpanda a3995a0267 Optimization for secure boot process. 2026-06-29 13:46:17 +08:00
longpanda ba87af540b Update hwinfo 2026-06-28 23:06:50 +08:00
longpanda 3d0d6c3147 Optimization for secure boot process. 2026-06-28 21:48:32 +08:00
longpanda 2915e197e9 Optimization for secure boot process. 2026-06-28 00:24:59 +08:00
longpanda 475de1dada Fix the boot issue with old UEFI version firmware when secure boot is disabled. 2026-06-25 19:23:48 +08:00
longpanda 31648a0d4b Fix the latest Kicksecure boot issue. (#3651) 2026-06-25 19:16:48 +08:00
longpanda c2a3f181c0 Fix the secure boot issue. 2026-06-24 20:52:56 +08:00
longpanda 0f59e92a01 Fix grub i386 build issue. 2026-06-23 22:34:10 +08:00
longpanda 1ed7bc9596 Ventoy Secure Boot Policy Update
- Update Ventoy grub code to match the new policy.
2026-06-23 21:19:46 +08:00
longpanda dbcdf51950 Improve for UEFI boot Windows/WinPE resolution issue fix. 2026-04-23 00:00:05 +08:00
longpanda 3c0df07b92 Improve for UEFI boot Windows/WinPE resolution issue fix. 2026-04-14 15:38:06 +08:00
longpanda 167c87402c 1.1.11
. Fix the display issue when UEFI boot Windows/WinPE
. #3537
. #3532
. Add VT_WINDOWS_DISK_NONVTOY_CLOSEST_XXX  VT_LINUX_DISK_NONVTOY_CLOSEST_XXX
2026-04-05 23:11:45 +08:00
longpanda 4d7fcc26d4 Add support for AerynOS. (#3433) 2025-12-19 23:19:58 +08:00
longpanda 65b88aabc5 Fix the vhd.vtoy file boot issue in ext4 file system. (#3444) 2025-12-18 08:55:37 +08:00
longpanda 06f164ef70 experimental support for btrfs file system. (#3438 #3431 #3077 #2093) 2025-12-11 16:29:59 +08:00
longpanda aa7a77df5a Fix the order issue in TreeView mode. (#3218) 2025-08-17 23:08:09 +08:00
longpanda 4790dedbb1 Fix the order issue in TreeView mode. (#3218) 2025-08-17 22:41:16 +08:00
longpanda de085ba086 Fix the order issue in TreeView mode. (#3218) 2025-08-17 17:50:17 +08:00
A1ive 0e9d34422a Update xfs to latest (#3284)
Thanks!
2025-07-07 09:21:53 +08:00
longpanda f7e6bbc70c Fix the "Unsupported vtoy type unknown" error when boot a VDI file created by VirtualBox 7.x 2025-02-12 23:00:27 +08:00
Liangbin LianandGary Lin f43461a16c loader/linux: Ensure the newc pathname is NULL-terminated (#3082)
Per "man 5 cpio", the namesize in the cpio header includes the trailing
NUL byte of the pathname and the pathname is followed by NUL bytes, but
the current implementation ignores the trailing NUL byte when making
the newc header. Although make_header() tries to pad the pathname string,
the padding won't happen when strlen(name) + sizeof(struct newc_head)
is a multiple of 4, and the non-NULL-terminated pathname may lead to
unexpected results.

Assume that a file is created with 'echo -n aaaa > /boot/test12' and
loaded by grub2:

    linux /boot/vmlinuz
    initrd newc:test12:/boot/test12 /boot/initrd

The initrd command eventually invoked grub_initrd_load() and sent
't''e''s''t''1''2' to make_header() to generate the header:

00000070  30 37 30 37 30 31 33 30  31 43 41 30 44 45 30 30  |070701301CA0DE00|
00000080  30 30 38 31 41 34 30 30  30 30 30 33 45 38 30 30  |0081A4000003E800|
00000090  30 30 30 30 36 34 30 30  30 30 30 30 30 31 36 33  |0000640000000163|
000000a0  37 36 45 34 35 32 30 30  30 30 30 30 30 34 30 30  |76E4520000000400|
000000b0  30 30 30 30 30 38 30 30  30 30 30 30 31 33 30 30  |0000080000001300|
000000c0  30 30 30 30 30 30 30 30  30 30 30 30 30 30 30 30  |0000000000000000|
000000d0  30 30 30 30 30 36 30 30  30 30 30 30 30 30 74 65  |00000600000000te|
                                                                  ^namesize
000000e0  73 74 31 32 61 61 61 61  30 37 30 37 30 31 30 30  |st12aaaa07070100|
                   ^^ end of the pathname

Since strlen("test12") + sizeof(struct newc_head) is 116 = 29 * 4,
make_header() didn't pad the pathname, and the file content followed
"test12" immediately. This violates the cpio format and may trigger such
error during linux boot:

    Initramfs unpacking failed: ZSTD-compressed data is trunc

To avoid the potential problems, this commit counts the trailing NUL byte
in when calling make_header() and adjusts the initrd size accordingly.

Now the header becomes

00000070  30 37 30 37 30 31 33 30  31 43 41 30 44 45 30 30  |070701301CA0DE00|
00000080  30 30 38 31 41 34 30 30  30 30 30 33 45 38 30 30  |0081A4000003E800|
00000090  30 30 30 30 36 34 30 30  30 30 30 30 30 31 36 33  |0000640000000163|
000000a0  37 36 45 34 35 32 30 30  30 30 30 30 30 34 30 30  |76E4520000000400|
000000b0  30 30 30 30 30 38 30 30  30 30 30 30 31 33 30 30  |0000080000001300|
000000c0  30 30 30 30 30 30 30 30  30 30 30 30 30 30 30 30  |0000000000000000|
000000d0  30 30 30 30 30 37 30 30  30 30 30 30 30 30 74 65  |00000700000000te|
                                                                  ^namesize
000000e0  73 74 31 32 00 00 00 00  61 61 61 61 30 37 30 37  |st12....aaaa0707|
                      ^^ end of the pathname

Besides the trailing NUL byte, make_header() pads 3 more NUL bytes, and
the user can safely read the pathname without a further check.

To conform to the cpio format, the headers for "TRAILER!!!" are also
adjusted to include the trailing NUL byte, not ignore it.


Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

Signed-off-by: Gary Lin <glin@suse.com>
Co-authored-by: Gary Lin <glin@suse.com>
2025-01-22 19:19:29 +08:00
gcfandyuxiaojun 75cf728fa9 The gpt pointer is not initialized, and when offset < 0, it may result in freeing unallocated memory. (#2499)
Signed-off-by: yuxiaojun <yuxiaojun1011@outlook.com>
Co-authored-by: yuxiaojun <yuxiaojun1011@outlook.com>
2024-05-19 16:27:19 +08:00
longpanda 1b2483ec14 Skip trash directory by default. (#2831) 2024-05-19 16:00:46 +08:00
longpanda d672af4819 Support ext4 fs with checksum seed feature. 2024-05-19 12:14:02 +08:00
longpanda c8dc36a5c3 1.0.95 release 2023-08-23 09:26:53 +08:00
Jianfeng Liu 529541f218 fix Synchronous Exception on some arm cpus (#2488) 2023-07-20 10:56:55 +08:00
longpanda feea11e2bb Support unattended auto install for Deepin/UOS 2023-05-29 00:11:21 +08:00
A1ive 35c952d891 Correct EFI chainloader image device path (#2397) 2023-05-19 23:23:14 +08:00
longpanda 07574f0379 Improve grub2 mode process for legacy BIOS mode. 2023-04-05 20:16:36 +08:00
longpanda cff3a01289 Support NTFS with large cluster size (greater than 64KB). 2023-03-28 11:38:46 +08:00
longpanda b47aa1abc7 Support LibreELEC 11.0+ (#2281) 2023-03-09 23:59:12 +08:00
longpanda 7fa4724743 Fix the menu missing issue when there exist an invalid vlnk file. (#2228) 2023-03-07 18:05:33 +08:00
longpanda 5067020a61 Add tip message when theme file contains non-enclosed literal values. (#2166) 2023-01-14 23:07:08 +08:00
longpanda e0132ac4b5 switch to en_US when use text mode. 2023-01-10 16:17:08 +08:00
longpanda c308892db0 Show file checksum menu title according to the existence of checksum value. 2023-01-10 12:23:35 +08:00
longpanda 1300f7f4f1 Fix the VHD(x) boot issue introduced in 1.0.87. 2023-01-10 09:37:05 +08:00
longpanda 315cabb945 Fix the file path when file checksum in F2 browse mode. 2023-01-07 11:33:04 +08:00
longpanda eac1c35f76 Fix the bug when F2 browse and boot VHD/VHDX files in an extend logic partition. 2023-01-04 19:22:02 +08:00
longpanda c7dcaa5734 1. Fix the blank item in the last of Language select menu
2. Fix the menu display VTLANG_NO_PERSISTENCE issue when use persistence
2023-01-04 19:19:32 +08:00
longpanda 4b17ee30c4 Add "return to previous menu" in secondary boot menu for convenience. 2023-01-04 15:55:32 +08:00
longpanda afb3340ce7 Disable Fn/L/Ctrl hotkeys when selecting auto install script or perssitence file. 2023-01-03 19:11:36 +08:00
longpanda 287d77224c Disable Fn/L/Ctrl hotkeys on select WIM menu. 2023-01-03 11:29:50 +08:00
longpanda c6bd857cbe Support BSD style for .md5/.sha1/.sh256/.sha512 checksum file.
Support VENTOY_CHECKSUM file for checksum file.
(#2112)
2023-01-01 00:31:08 +08:00
longpanda 12b51bcf09 Change the prompt format when check device failed. (#2094) 2022-12-24 09:39:27 +08:00