Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
436 commits
Select commit Hold shift + click to select a range
099a502
grub_dl_set_mem_attrs(): fix format string
Apr 7, 2023
8e0e969
grub_dl_set_mem_attrs(): add self-check for the tramp/GOT sizes
Apr 7, 2023
4e76235
grub_dl_load_segments(): page-align the tramp/GOT areas too
Apr 7, 2023
281ca41
emu: Add switch-root to grub-emu
nfrayer Mar 31, 2023
c8481a9
util: Enable default kernel for updates
marta-lewandowska May 24, 2023
610a6cd
efi/http: change uint32_t to uintn_t
keng-yu Apr 26, 2023
ff49e0b
Add [Install] section to aux systemd units
LorbusChris Aug 9, 2023
8d5f8d9
Fix missing #include in ofdisk.c
vathpela Sep 29, 2023
10de467
add flag to only search root dev
marta-lewandowska Oct 9, 2023
790bef5
cryptdisk: fix incorrect sign comparison
vathpela Jan 8, 2024
d4c59ee
grub-install: fix a sign comparison error
vathpela Jan 8, 2024
d698add
grub-mount: work around bad integer comparison.
vathpela Jan 8, 2024
99a90cf
power: Fix use after free in get_slave_from_dm()
vathpela Jan 8, 2024
e402916
Fix some sign comparison errors
vathpela Jan 9, 2024
eda0d04
normal: Fix a discarded const.
vathpela Jan 9, 2024
b5d1d1b
at_keyboard: mark grub_keyboard_controller_write unused
vathpela Jan 9, 2024
f8b0176
Fix another minor sign comparison error.
vathpela Jan 9, 2024
d4f6f52
Track explicit module dependencies in Makefile.core.def
osteffenrh Feb 28, 2024
edaf268
Revert "mm: Assert that we preserve header vs region alignment"
lsandov1 Mar 8, 2024
d021f07
make: use the _CPU variety of build flags for PROGRAM and LIBRARY
vathpela Mar 13, 2024
4de42eb
Work around extra_deps.lst issue
vathpela Mar 13, 2024
75f176c
include proper attribute for an EFI API call definition
lsandov1 Mar 21, 2024
f74361b
cast grub_error status parameter
lsandov1 Mar 22, 2024
7adb892
remove unused varible
lsandov1 Mar 22, 2024
daad817
cast grub_net_bootp_packet pointer
lsandov1 Mar 23, 2024
7a1d3d7
libtasn1: fix string overflow warning
lsandov1 Jan 11, 2024
7cc4b08
Add support for Linux EFI stub loading.
Apr 1, 2024
c37f97e
fix i386_pc on legacycfg module
lsandov1 Apr 2, 2024
a510c5a
Add secureboot support on efi chainloader
rw4s Apr 2, 2024
4aefbd2
Make any of the loaders that link in efi mode honor secure boot.
vathpela Feb 13, 2024
8969f8d
Minimize the sort ordering for .debug and -rescue- kernels.
vathpela Sep 4, 2014
629622f
Add grub_qdprintf() - grub_dprintf() without the file+line number.
vathpela Jun 28, 2015
7e6ab0f
Make a "gdb" dprintf that tells us load addresses.
vathpela Apr 4, 2024
f879ab8
Handle multi-arch (64-on-32) boot in linuxefi loader.
vathpela Jul 8, 2019
7ec61ca
Try to pick better locations for kernel and initrd
vathpela Jul 11, 2019
de05103
x86-efi: Use bounce buffers for reading to addresses > 4GB
vathpela Jul 12, 2019
5ef723f
x86-efi: Re-arrange grub_cmd_linux() a little bit.
vathpela Sep 13, 2018
5418805
x86-efi: Make our own allocator for kernel stuff
vathpela Sep 12, 2018
1783214
x86-efi: Allow initrd+params+cmdline allocations above 4GB.
vathpela Sep 12, 2018
211f005
efi: Set image base address before jumping to the PE/COFF entry point
martinezjavier Apr 23, 2020
b88d321
x86-efi: Reduce maximum bounce buffer size to 16 MiB
martinezjavier May 26, 2020
6104fbf
efilinux: Fix integer overflows in grub_cmd_initrd
cjwatson Jul 24, 2020
f3c95c4
linuxefi: fail kernel validation without shim protocol.
xnox Jul 22, 2020
aec4465
Allow chainloading EFI apps from loop mounts.
xnox Jun 11, 2021
b00fbea
grub-core/loader/i386/efi/linux.c: do not validate kernels twice
xnox Mar 3, 2022
e260a99
grub-core/loader/efi/chainloader.c: do not validate chainloader twice
xnox Mar 4, 2022
e5f7918
grub-core/loader/efi/linux.c: drop now unused grub_linuxefi_secure_va…
lsandov1 Apr 8, 2024
e2e1e63
loader/efi/chainloader: grub_load_and_start_image doesn't load and start
chrisccoulson Apr 28, 2022
d10404a
loader/efi/chainloader: simplify the loader state
chrisccoulson Apr 29, 2022
9bf2c1b
loader/efi/chainloader: Use grub_loader_set_ex
chrisccoulson Apr 29, 2022
7e7b22b
loader/i386/efi/linux: Avoid a use-after-free in the linuxefi loader
chrisccoulson May 2, 2022
efc7b32
loader/i386/efi/linux: Use grub_loader_set_ex
chrisccoulson May 2, 2022
b38d20f
loader/i386/efi/linux: Fix a memory leak in the initrd command
chrisccoulson May 3, 2022
0fc0df1
EFI: allocate kernel in EFI_RUNTIME_SERVICES_CODE instead of EFI_LOAD…
vathpela Feb 9, 2022
4273ecc
efi: use enumerated array positions for our allocation choices
vathpela Aug 1, 2022
55f8f18
efi: split allocation policy for kernel vs initrd memories.
vathpela Aug 1, 2022
774aa80
efi: allocate the initrd within the bounds expressed by the kernel
vathpela Aug 1, 2022
a6e1666
efi: use EFI_LOADER_(CODE|DATA) for kernel and initrd allocations
vathpela Aug 1, 2022
930bd88
x86-efi: Fix an incorrect array size in kernel allocation
vathpela Oct 11, 2022
d4052cb
grub-install on EFI if forced
marta-lewandowska Feb 6, 2024
dc2f4f5
Remove [Install] section from aux systemd units
LorbusChris Nov 14, 2023
a615923
chainloader: remove device path debug message
raravind007 May 9, 2023
5ec3c16
grub-set-bootflag: Conservative partial fix for CVE-2024-1048
solardiz Feb 6, 2024
9d3c2c8
grub-set-bootflag: More complete fix for CVE-2024-1048
solardiz Feb 6, 2024
99deffa
grub-set-bootflag: Exit calmly when not running as root
solardiz Feb 6, 2024
8c9403b
Makefile.core.def: fix linux module
lsandov1 Apr 15, 2024
fa8f199
Add support for Linux EFI stub loading on arm architectures
Apr 15, 2024
3d633b7
arm/arm64 loader: Better memory allocation and error messages.
vathpela Apr 15, 2024
3cfd4a1
arm64: Fix EFI loader kernel image allocation
ozbenh Apr 16, 2024
e9d88af
pe: add the DOS header struct and fix some bad naming.
vathpela Apr 16, 2024
81dbbbc
Correct BSS zeroing on aarch64
jlintonarm Apr 16, 2024
ba84a3e
arm64: Use proper memory type for kernel allocation
qzed Apr 16, 2024
3a4a468
normal: Remove grub_env_set prefix in grub_try_normal_prefix
nfrayer Dec 19, 2023
5dfe226
fs/xfs: Handle non-continuous data blocks in directory extents
nuxi Feb 11, 2024
654470d
Ignore warnings for incompatible types
nfrayer Jan 17, 2024
8c0d85c
cmd/search: Rework of CVE-2023-4001 fix
nfrayer May 16, 2024
9728e07
loader/efi/linux.c: read the kernel image before header
lsandov1 May 29, 2024
be61be0
nx: set attrs in our kernel loaders
vathpela Jul 3, 2024
2497e49
efi: Provide wrappers for load_image, start_image,
julian-klode Jul 9, 2024
b899582
efi: Disallow fallback to legacy Linux loader when shim says NX is re…
mkukri-canonical Jul 10, 2024
84b70a8
Set non-executable stack sections on EFI assembly files
lsandov1 Aug 5, 2024
b1a723e
grub-mkconfig.in: turn off executable owner bit
lsandov1 May 6, 2024
7a444db
kern/ieee1275/init: Add IEEE 1275 Radix support for KVM on Power
May 23, 2024
cc1b306
grub2-mkconfig: Ensure grub cfg stub is not overwritten
nfrayer Jul 16, 2024
e57fca8
grub2-mkconfig: Simplify os_name detection
Jul 31, 2024
9c31b10
grub/mkconfig: Remove check for mount point for grub cfg stub
nfrayer Aug 1, 2024
d5d2835
efi/api.h: include missing __grub_efi_api macros on EFI functions
vathpela Aug 29, 2024
bfc4fa7
grub-core/net/arp.c: fix variable name
lsandov1 Aug 28, 2024
5432525
load EFI commands inside test expressions
lsandov1 Sep 4, 2024
a20206a
efi/loader: Check if NX is required in grub_efi_linux_boot()
nfrayer Sep 25, 2024
074c598
Stop grub.efi from always printing "dynamic_load_symbols %p\n" during…
jwrdegoede Oct 3, 2024
cf02a2b
acpi: Fix out of bounds access in grub_acpi_xsdt_find_table()
ozbenh Oct 16, 2024
d0268db
cmd/search: Fix a possible NULL ptr dereference
nfrayer Oct 16, 2024
1106208
Enable building blscfg module on xen and xen_pvh
krouma Aug 30, 2024
ae0fba3
loader/efi: Fix RISC-V build
andreabolognani Nov 19, 2024
e209341
kern/riscv/efi/init: Use time register in grub_efi_get_time_ms()
xypron Aug 12, 2024
10b82f6
Use medany instead of large model for RISCV
jasonmontleon May 3, 2024
7c17919
fs/xfs: fix large extent counters incompat feature support
Dec 4, 2024
5cb9d67
term/nns8250-spcr: return if redirection is disabled
ozbenh Jan 16, 2025
d4245f2
commands/legacycfg: Avoid closing file twice
lsandov1 Oct 16, 2024
6735733
disk/ahci.c: remove conditional operator for endtime
lsandov1 Jan 22, 2025
be8bb0e
commands/bli: Fix crash in get_part_uuid()
WenhuaChang Jul 17, 2024
d9bf969
misc: Implement grub_strlcpy()
bahorn Jun 15, 2024
6a7b147
fs/ufs: Fix a heap OOB write
bahorn May 12, 2024
6167871
fs/hfs: Fix stack OOB write with grub_strcpy()
bahorn May 12, 2024
3a5de4a
fs/tar: Initialize name in grub_cpio_find_file()
bahorn May 12, 2024
a4de2d4
fs/tar: Integer overflow leads to heap OOB write
Nov 22, 2024
c3882a9
fs/f2fs: Set a grub_errno if mount fails
bahorn May 12, 2024
c283e7d
fs/hfsplus: Set a grub_errno if mount fails
bahorn May 12, 2024
84bcb82
fs/iso9660: Set a grub_errno if mount fails
bahorn May 12, 2024
91427d1
fs/iso9660: Fix invalid free
WenhuaChang May 31, 2024
1d54add
fs/jfs: Fix OOB read in jfs_getent()
Nov 22, 2024
23b84be
fs/jfs: Fix OOB read caused by invalid dir slot index
Nov 22, 2024
152b04a
fs/jfs: Use full 40 bits offset and address for a data extent
Dec 16, 2024
79f4f17
fs/jfs: Inconsistent signed/unsigned types usage in return values
Dec 16, 2024
de4714b
fs/ext2: Fix out-of-bounds read for inline extents
WenhuaChang May 31, 2024
9a1f43a
fs/ntfs: Fix out-of-bounds read
WenhuaChang Jun 3, 2024
faf5337
fs/ntfs: Track the end of the MFT attribute buffer
bahorn Jan 7, 2025
e26adf8
fs/ntfs: Use a helper function to access attributes
bahorn May 14, 2024
a87373c
fs/ntfs: Implement attribute verification
bahorn May 14, 2024
19db8a2
fs/xfs: Fix out-of-bounds read
WenhuaChang May 31, 2024
7f80ffc
fs/xfs: Ensuring failing to mount sets a grub_errno
bahorn May 12, 2024
808c6b3
kern/file: Ensure file->data is set
bahorn May 12, 2024
88d503a
kern/file: Implement filesystem reference counting
bahorn Feb 11, 2025
b9e2492
cli_lock: Add build option to block command line interface
alecrbrown Jan 24, 2024
010123d
disk/cryptodisk: Require authentication after TPM unlock for CLI access
WenhuaChang Feb 11, 2025
6be1c11
disk/loopback: Reference tracking for the loopback
bahorn Feb 11, 2025
4de58ec
kern/disk: Limit recursion depth
bahorn May 12, 2024
5a9ddbc
kern/partition: Limit recursion in part_iterate()
bahorn Nov 16, 2024
643d16f
script/execute: Limit the recursion depth
bahorn Apr 18, 2024
3f1c13a
net: Unregister net_default_ip and net_default_mac variables hooks on…
bahorn Feb 11, 2025
9fcdefa
net: Remove variables hooks when interface is unregisted
bahorn Feb 11, 2025
6129997
net: Fix OOB write in grub_net_search_config_file()
bahorn Feb 11, 2025
1906e7b
net/tftp: Fix stack buffer overflow in tftp_open()
bahorn Apr 18, 2024
794743b
video/readers/jpeg: Do not permit duplicate SOF0 markers in JPEG
daxtens Mar 8, 2024
abb8bca
kern/dl: Fix for an integer overflow in grub_dl_ref()
bahorn Feb 11, 2025
df16316
kern/dl: Check for the SHF_INFO_LINK flag in grub_dl_relocate_symbols()
bahorn Feb 11, 2025
b6a629f
commands/extcmd: Missing check for failed allocation
Nov 22, 2024
efbab5f
commands/ls: Fix NULL dereference
bahorn May 12, 2024
6b2a8e3
commands/pgp: Unregister the "check_signatures" hooks on module unload
bahorn Nov 1, 2024
56a05af
normal: Remove variables hooks on module unload
bahorn Nov 1, 2024
3e3fad2
gettext: Remove variables hooks on module unload
bahorn Nov 1, 2024
e303a65
gettext: Integer overflow leads to heap OOB write or read
Nov 22, 2024
4aa72a7
gettext: Integer overflow leads to heap OOB write
Nov 22, 2024
a5a19f3
commands/read: Fix an integer overflow when supplying more than 2^31 …
yo-yo-yo-jbo Jan 23, 2025
c916a5e
commands/test: Stack overflow due to unlimited recursion depth
Dec 16, 2024
75db1bc
commands/minicmd: Block the dump command in lockdown mode
bahorn Apr 18, 2024
bfdee3b
commands/memrw: Disable memory reading in lockdown mode
bahorn Feb 11, 2025
cb592c5
commands/hexdump: Disable memory reading in lockdown mode
bahorn Apr 19, 2024
5475972
fs/bfs: Disable under lockdown
daxtens Mar 23, 2024
2cfb396
fs: Disable many filesystems under lockdown
daxtens Mar 23, 2024
80147f5
disk: Use safe math macros to prevent overflows
alecrbrown Feb 11, 2025
2befc40
disk: Prevent overflows when allocating memory for arrays
alecrbrown Feb 12, 2025
5496bd5
disk: Check if returned pointer for allocated memory is NULL
alecrbrown Jan 22, 2025
6c7f774
disk/ieee1275/ofdisk: Call grub_ieee1275_close() when grub_malloc() f…
alecrbrown Jan 22, 2025
8e104e0
fs: Use safe math macros to prevent overflows
Feb 12, 2025
bde8dee
fs: Prevent overflows when allocating memory for arrays
Jan 21, 2025
4ed5838
fs: Prevent overflows when assigning returned values from read_number()
Jan 21, 2025
229f6ee
fs/zfs: Use safe math macros to prevent overflows
Jan 22, 2025
d55c085
fs/zfs: Prevent overflows when allocating memory for arrays
Jan 22, 2025
74861a1
fs/zfs: Check if returned pointer for allocated memory is NULL
Jan 22, 2025
2cd7245
fs/zfs: Add missing NULL check after grub_strdup() call
Jan 22, 2025
e7e2b29
net: Use safe math macros to prevent overflows
Feb 12, 2025
ce1fea4
net: Prevent overflows when allocating memory for arrays
Jan 22, 2025
44224d9
net: Check if returned pointer for allocated memory is NULL
alecrbrown Jan 22, 2025
b9ac47d
fs/sfs: Check if allocated memory is NULL
alecrbrown Jan 28, 2025
f8f8154
script/execute: Fix potential underflow and NULL dereference
Jan 29, 2025
b0e3347
osdep/unix/getroot: Fix potential underflow
Jan 29, 2025
e057af0
misc: Ensure consistent overflow error messages
Jan 21, 2025
1303921
bus/usb/ehci: Define GRUB_EHCI_TOGGLE as grub_uint32_t
alecrbrown Feb 4, 2025
6f05b27
normal/menu: Use safe math to avoid an integer overflow
alecrbrown Feb 4, 2025
a76deef
kern/partition: Add sanity check after grub_strtoul() call
Feb 6, 2025
95e5ae8
kern/misc: Add sanity check after grub_strtoul() call
Feb 6, 2025
81c8af7
loader/i386/linux: Cast left shift to grub_uint32_t
alecrbrown Feb 12, 2025
e1b3863
loader/i386/bsd: Use safe math to avoid underflow
alecrbrown Feb 5, 2025
569214e
fs/ext2: Rework out-of-bounds read for inline and external extents
Feb 21, 2025
c52ee5e
powerpc: increase MIN RMA size for CAS negotiation
Mar 13, 2025
3a9bd8e
script/execute: Don't let trailing blank lines determine the return code
chewi Oct 24, 2024
0c07280
normal/menu: Check return code of the script when executing a menu entry
chewi Oct 24, 2024
fe82c9a
ieee1275/ofnet: Fix grub_malloc() removed after added safe math funct…
nfrayer Mar 19, 2025
11698bf
grub-mkimage: Create new ELF note for SBAT
SudhakarKuppusamy1 Oct 23, 2024
182a86a
grub-mkimage: Add SBAT metadata into ELF note for PowerPC targets
SudhakarKuppusamy1 Oct 23, 2024
456e514
10_linux.in: escape kernel option characters properly
lsandov1 May 7, 2025
4f8353a
blscfg: check if variable is escaped before considering one
lsandov1 May 7, 2025
28c96db
kern/rescue_reader: Block the rescue mode until the CLI authentication
Feb 28, 2025
21088fa
commands/search: Introduce the --cryptodisk-only argument
Mar 1, 2025
3dccfbb
disk/diskfilter: Introduce the "cryptocheck" command
Mar 2, 2025
cf3bdaa
commands/search: Add the diskfilter support
Mar 2, 2025
0ff3b81
docs: Document available crypto disks checks
Mar 10, 2025
a045c81
disk/cryptodisk: Add the "erase secrets" function
May 6, 2025
9e4b7dd
disk/cryptodisk: Wipe the passphrase from memory
Mar 4, 2025
e547b51
cryptocheck: Add --quiet option
WenhuaChang Mar 14, 2025
cd147be
loader/efi/chainloader: Fix double free
miray-tf May 21, 2025
4540142
loader/efi/chainloader: Fix null pointer dereference
miray-tf May 20, 2025
f52d7bf
osdep/linux/getroot: Detect DDF container similar to IMSM
rmetrich Apr 24, 2025
ffd960a
Set correctly the memory attributes for the kernel PE sections
lsandov1 Jul 29, 2025
94faf4f
Include function name on debug and error print functions
lsandov1 Apr 11, 2025
3b7bfd4
kern/misc: Implement grub_strtok()
alecrbrown Aug 12, 2025
9d056f4
blsuki: Add blscfg command to parse Boot Loader Specification snippets
vathpela Aug 12, 2025
00763d9
util/misc.c: Change offset type for grub_util_write_image_at()
alecrbrown Aug 12, 2025
da8c51c
blsuki: Check for mounted /boot in emu
frozencemetery Aug 12, 2025
e2853a4
blsuki: Add uki command to load Unified Kernel Image entries
alecrbrown Aug 12, 2025
976007b
posix_wrap: Tweaks in preparation for libtasn1
daxtens Nov 15, 2024
1e9fa56
blsuki: do not register blscfg command
lsandov1 Nov 13, 2025
f4e9320
misc: add z length modifier support
Oct 17, 2025
c91cc8a
tests: add z modifier printf tests
Oct 17, 2025
92415ae
util/grub-editenv: add fs_envblk open helper
Oct 17, 2025
d6aaa57
util/grub-editenv: add fs_envblk write helper
Oct 17, 2025
935e4a2
util/grub-editenv: wire set_variables to optional fs_envblk
Oct 17, 2025
56ca088
util/grub-editenv: wire unset_variables to optional fs_envblk
Oct 17, 2025
9183da6
util/grub-editenv: wire list_variables to optional fs_envblk
Oct 17, 2025
b25e457
util/grub-editenv: add probe call for external envblk
Oct 17, 2025
8a58b6c
btrfs: add environment block to reserved header area
Oct 17, 2025
d28f1f9
00_header.in: wire grub.cfg to use env_block when present
Oct 17, 2025
b6426d0
btrfs: update doc link for bootloader support
Oct 17, 2025
247d8bf
docs: add Btrfs env block and special env vars
lsandov1 Oct 27, 2025
b8366e4
kern/fs: Honour file->read_hook() in grub_fs_blocklist_read()
Aug 29, 2024
e587d70
util/grub.d/00_header.in: Prefer $dev instead of $root for $env_block
Conan-Kudo Nov 26, 2025
2ec8e42
grub.d: Support the external environment block for automatic hidden menu
Conan-Kudo Nov 26, 2025
74b15ba
grub-editenv: Make automatic hidden menu and boot counting use envblk…
Conan-Kudo Nov 26, 2025
e00a172
ieee1275/ofnet: Fix hw_addr variable initialization
Jan 11, 2026
f2dde4c
fs/xfs: Add new superblock features added in Linux 6.12/6.13
Feb 3, 2025
af6e139
Revert "loader/efi: Fix RISC-V build"
Dec 4, 2025
4e2e44c
Revert "efi: Disallow fallback to legacy Linux loader when shim says …
Dec 4, 2025
94717f0
Partial revert: "nx: set attrs in our kernel loaders"
Dec 4, 2025
22152ed
Revert "loader/efi/linux.c: read the kernel image before header"
Dec 4, 2025
897111b
Revert "arm64: Use proper memory type for kernel allocation"
Dec 4, 2025
0798b0b
Revert "Correct BSS zeroing on aarch64"
Dec 4, 2025
2de54b1
Revert "arm64: Fix EFI loader kernel image allocation"
Dec 4, 2025
5e86b3c
Revert "Add support for Linux EFI stub loading on arm architectures"
Dec 4, 2025
0ca4056
loader/efi/linux.c: Free mempath after use
Dec 6, 2025
9f08e40
loader/efi/linux.c: Unload image on errors
Dec 6, 2025
5e9e7e4
loader/efi/linux.c: Disable code not used on x86 when building for x86
Dec 6, 2025
67765ac
commands/test: Fix error in recursion depth calculation
miray-tf May 9, 2025
449b9c7
kern/file: Call grub_dl_unref() after fs->fs_close()
miray-tf May 7, 2025
2c0b908
net/net: Unregister net_set_vlan command on unload
miray-tf May 9, 2025
968eac9
gettext/gettext: Unregister gettext command on module unload
alecrbrown Aug 21, 2025
e5103b5
normal/main: Unregister commands on module unload
alecrbrown Aug 21, 2025
0b0b9ef
tests/lib/functional_test: Unregister commands on module unload
alecrbrown Aug 21, 2025
19640fe
commands/usbtest: Use correct string length field
volticks Jul 14, 2025
fd2a33b
commands/usbtest: Ensure string length is sufficient in usb string pr…
volticks Jul 14, 2025
f3330b6
verifiers: Allocate EFI pages instead of grub_malloc for verified buffer
lsandov1 Jan 22, 2026
c5594a6
term/serial.c: default efi0 as 'serial' port if present
lsandov1 Feb 6, 2026
cd63b2d
commands/tpm.c: include PCR check/enable/disable functions
lsandov1 Feb 23, 2026
12f4c9c
commands/efi/tpm.c: check if PCR is enable before TPM measure
lsandov1 Feb 23, 2026
03f08fe
tpm.c: disable PCR8 measurements at the configuration step
lsandov1 Feb 24, 2026
b80270f
Add support for the efi keyword
marta-lewandowska Mar 27, 2026
e9a6459
tpm: Disable any GRUB_STRING_PCR command measurement
lsandov1 Apr 30, 2026
6d481bd
util/grub-editenv: remove stale env_block on unsupported filesystem
WenhuaChang Apr 20, 2026
5c5eb1e
Fix build on loongarch64
sunhaiyong1978 Jul 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
152 changes: 151 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
*.img
*.log
*.lst
!/grub-core/extra_deps.lst
*.marker
*.mod
*.o
Expand Down Expand Up @@ -268,6 +267,7 @@ widthspec.bin
/stamp-h1
/syslinux_test
/tar_test
/test_asn1
/test_sha512sum
/test_unset
/tests/syslinux/ubuntu10.04_grub.cfg
Expand All @@ -279,3 +279,153 @@ widthspec.bin
/xfs_test
/xzcompress_test
/zfs_test
=======
# things ./autogen.sh will create
/Makefile.utilgcry.def
/ABOUT-NLS
/aclocal.m4
/autom4te.cache
/build-aux
/configure
/gnulib
/grub-core/lib/gnulib/
/Makefile

# things very common editors create that we never want
*~
.*.sw?
*.patch

# stuff you're likely to make while building test trees
grub.cfg
/build*/

# built objects across the whole tree
Makefile.in
*.a
*.am
*.efi
*.exec
*.image
*.img
*.info
*.lst
*.marker
/m4
*.mod
*.module
*.o
*.pf2
*.yy.[ch]
.deps/
.deps-core/
.deps-util/
.dirstamp

# next are things you get if you do ./configure in the topdir (for e.g.
# "make dist" invocation.
/config-util.h
/config.h
/include/grub/cpu
/include/grub/machine
/INSTALL
/INSTALL.grub
/po/Makefile.in.in
/po/Makevars
/po/Makevars.template
/po/POTFILES
/po/Rules-quot
/stamp-h
/stamp-h1
bootstrap.log
config.log
config.status

# stuff "make dist" creates
ChangeLog
grub-*.tar
grub-*.tar.*

# stuff "make" creates
/[[:digit:]][[:digit:]]_?*
/ascii.h
/build-grub-gen-asciih
/build-grub-gen-widthspec
/build-grub-mkfont
/config-util.h.in
/garbage-gen
/grub*-bios-setup
/grub*-bios-setup.8
/grub*-editenv
/grub*-editenv.1
/grub*-file
/grub*-file.1
/grub*-fs-tester
/grub*-fstest
/grub*-fstest.1
/grub*-get-kernel-settings
/grub*-get-kernel-settings.3
/grub*-glue-efi
/grub*-glue-efi.1
/grub*-install
/grub*-install.8
/grub*-kbdcomp
/grub*-kbdcomp.1
/grub*-macbless
/grub*-macbless.8
/grub*-menulst2cfg
/grub*-menulst2cfg.1
/grub*-mount
/grub*-mount.1
/grub*-mkconfig
/grub*-mkconfig.8
/grub*-mkconfig_lib
/grub*-mkfont
/grub*-mkfont.1
/grub*-mkimage
/grub*-mkimage.1
/grub*-mklayout
/grub*-mklayout.1
/grub*-mknetdir
/grub*-mknetdir.1
/grub*-mkpasswd-pbkdf2
/grub*-mkpasswd-pbkdf2.1
/grub*-mkrelpath
/grub*-mkrelpath.1
/grub*-mkrescue
/grub*-mkrescue.1
/grub*-mkstandalone
/grub*-mkstandalone.1
/grub*-ofpathname
/grub*-ofpathname.8
/grub*-probe
/grub*-probe.8
/grub*-reboot
/grub*-reboot.8
/grub*-render-label
/grub*-render-label.1
/grub*-script-check
/grub*-script-check.1
/grub*-set-bootflag
/grub*-set-bootflag.1
/grub*-set-default
/grub*-set-default.8
/grub*-set-password
/grub*-set-password.8
/grub*-shell
/grub*-shell-tester
/grub*-sparc64-setup
/grub*-sparc64-setup.8
/grub*-syslinux2cfg
/grub*-syslinux2cfg.1
/grub*-switch-to-blscfg
/grub*-switch-to-blscfg.8
/grub_fstest.pp
/grub_fstest_init.c
/grub_fstest_init.lst
/grub_script.tab.[ch]
/libgrub.pp
/libgrub_a_init.c
/libgrub_a_init.lst
/stamp-h.in
/widthspec.h
98 changes: 98 additions & 0 deletions Makefile.util.def
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,12 @@ library = {
common = grub-core/partmap/msdos.c;
common = grub-core/fs/proc.c;
common = grub-core/fs/archelp.c;
common = grub-core/kern/backtrace.c;

x86 = grub-core/kern/i386/backtrace.c;
i386_xen = grub-core/kern/i386/backtrace.c;
x86_64_xen = grub-core/kern/i386/backtrace.c;
arm64 = grub-core/kern/arm64/backtrace.c;
};

library = {
Expand Down Expand Up @@ -455,6 +461,30 @@ script = {
installdir = grubconf;
};

script = {
name = '08_fallback_counting';
common = util/grub.d/08_fallback_counting.in;
installdir = grubconf;
};

script = {
name = '12_menu_auto_hide';
common = util/grub.d/12_menu_auto_hide.in;
installdir = grubconf;
};

script = {
name = '14_menu_show_once';
common = util/grub.d/14_menu_show_once.in;
installdir = grubconf;
};

script = {
name = '01_users';
common = util/grub.d/01_users.in;
installdir = grubconf;
};

script = {
name = '10_windows';
common = util/grub.d/10_windows.in;
Expand Down Expand Up @@ -497,6 +527,12 @@ script = {
condition = COND_HOST_LINUX;
};

script = {
name = '10_reset_boot_success';
common = util/grub.d/10_reset_boot_success.in;
installdir = grubconf;
};

script = {
name = '10_xnu';
common = util/grub.d/10_xnu.in;
Expand All @@ -517,6 +553,13 @@ script = {
installdir = grubconf;
};

script = {
name = '20_ppc_terminfo';
common = util/grub.d/20_ppc_terminfo.in;
installdir = grubconf;
condition = COND_HOST_LINUX;
};

script = {
name = '30_os-prober';
common = util/grub.d/30_os-prober.in;
Expand All @@ -541,6 +584,27 @@ script = {
installdir = grubconf;
};

script = {
name = 'grub-systemd-integration.service';
common = util/systemd/grub-systemd-integration.service.in;
installdir = systemdunit;
condition = COND_HOST_LINUX;
};

script = {
name = 'systemd-integration.sh';
common = util/systemd/systemd-integration.sh.in;
installdir = grublibexec;
condition = COND_HOST_LINUX;
};

script = {
name = '10-grub-logind-service.conf';
common = util/systemd/10-grub-logind-service.conf.in;
installdir = systemd_logind_service_d;
condition = COND_HOST_LINUX;
};

program = {
mansection = 1;
name = grub-mkrescue;
Expand Down Expand Up @@ -712,6 +776,13 @@ script = {
installdir = sbin;
};

script = {
name = grub-get-kernel-settings;
common = util/grub-get-kernel-settings.in;
mansection = 3;
installdir = sbin;
};

script = {
name = grub-set-default;
common = util/grub-set-default.in;
Expand All @@ -726,6 +797,13 @@ script = {
installdir = sbin;
};

script = {
name = grub-set-password;
common = util/grub-set-password.in;
mansection = 8;
installdir = sbin;
};

script = {
name = grub-mkconfig_lib;
common = util/grub-mkconfig_lib.in;
Expand Down Expand Up @@ -1250,6 +1328,12 @@ script = {
common = tests/luks2_test.in;
};

script = {
testcase = native;
name = test_asn1;
common = tests/test_asn1.in;
};

program = {
testcase = native;
name = example_unit_test;
Expand Down Expand Up @@ -1360,6 +1444,13 @@ program = {
ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
};

script = {
name = grub-switch-to-blscfg;
common = util/grub-switch-to-blscfg.in;
mansection = 8;
installdir = sbin;
};

program = {
name = grub-glue-efi;
mansection = 1;
Expand Down Expand Up @@ -1422,3 +1513,10 @@ program = {
ldadd = grub-core/lib/gnulib/libgnu.a;
ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
};

program = {
name = grub-set-bootflag;
installdir = sbin;
mansection = 1;
common = util/grub-set-bootflag.c;
};
2 changes: 1 addition & 1 deletion NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ New in 2.02:
* Prefer pmtimer for TSC calibration.

* New/improved platform support:
* New `efifwsetup' and `lsefi' commands on EFI platforms.
* New `efifwsetup', `lsefi' and `connectefi` commands on EFI platforms.
* New `cmosdump' and `cmosset' commands on platforms with CMOS support.
* New command `pcidump' for PCI platforms.
* Improve opcode parsing in ACPI halt implementation.
Expand Down
19 changes: 19 additions & 0 deletions acinclude.m4
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,25 @@ if test "x$grub_cv_prog_ld_build_id_none" = xyes; then
fi
])

dnl Supply --build-id=sha1 to ld if building modules.
dnl This suppresses warnings from ld on some systems
AC_DEFUN([grub_PROG_LD_BUILD_ID_SHA1],
[AC_MSG_CHECKING([whether linker accepts --build-id=sha1])
AC_CACHE_VAL(grub_cv_prog_ld_build_id_sha1,
[save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS -Wl,--build-id=sha1"
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
[grub_cv_prog_ld_build_id_sha1=yes],
[grub_cv_prog_ld_build_id_sha1=no])
LDFLAGS="$save_LDFLAGS"
])
AC_MSG_RESULT([$grub_cv_prog_ld_build_id_sha1])

if test "x$grub_cv_prog_ld_build_id_sha1" = xyes; then
TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,--build-id=sha1"
fi
])

dnl Check nm
AC_DEFUN([grub_PROG_NM_WORKS],
[AC_MSG_CHECKING([whether nm works])
Expand Down
3 changes: 2 additions & 1 deletion bootstrap.conf
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ gnulib_modules="
argp
base64
error
filevercmp
fnmatch
getdelim
getline
Expand Down Expand Up @@ -94,7 +95,7 @@ bootstrap_post_import_hook () {
patch -d po -p3 \
< "po/gettext-patches/$patchname.patch"
done
FROM_BOOTSTRAP=1 ./autogen.sh
PYTHON=python3 FROM_BOOTSTRAP=1 ./autogen.sh
set +e # bootstrap expects this
}

Expand Down
Loading