Mintsuki
e6dfe48a4b
protos/multiboot: Allow menu recovery on overflow panics
2026-04-06 19:04:22 +02:00
Mintsuki
b0152c9a67
lib/elf: Validate section header bounds in elf_section_hdr_info functions
2026-04-02 22:21:54 +02:00
Mintsuki
5156d1bd51
protos/multiboot: Check for overflow in load_size + bss_size
2026-04-02 22:21:54 +02:00
Mintsuki
b699192d0d
protos/multiboot2: Validate header tag sizes before casting
2026-04-02 22:21:54 +02:00
Mintsuki
91e5e5668f
lib/elf: Add file_size parameter to elf_bits for bounds checking
2026-04-02 22:21:54 +02:00
Mintsuki
de46c9523a
protos/multiboot2: Fix GCC build error with break in statement expression
2026-04-02 02:00:22 +02:00
Mintsuki
ca253330a8
lib/elsewhere: Add bounds check to elsewhere_append
2026-04-02 01:44:58 +02:00
Mintsuki
1b5b8e4620
misc: Add CHECKED_MUL macro, use it for all overflow-checked multiplications
2026-04-02 01:44:58 +02:00
Mintsuki
eb071a0121
misc: Add overflow checking to ALIGN_UP and DIV_ROUNDUP macros
2026-04-02 01:44:58 +02:00
Mintsuki
cc586e6cc0
misc: Use CHECKED_ADD for overflow-checked additions
2026-03-31 15:31:50 +02:00
Mintsuki
b29b11ce6d
Reapply "lib/fb: Add preserve_screen option to skip fb_clear on init"
...
This reverts commit 12841527e9 .
2026-03-30 19:44:19 +02:00
Mintsuki
12841527e9
Revert "lib/fb: Add preserve_screen option to skip fb_clear on init"
...
This reverts commit 2e2fc63628 .
2026-03-30 09:16:32 +02:00
Mintsuki
2e2fc63628
lib/fb: Add preserve_screen option to skip fb_clear on init
2026-03-23 08:34:14 +01:00
Mintsuki
769aaf106a
protos/multiboot: Try to disable x2APIC before kernel entry
2026-02-22 18:29:01 +01:00
Mintsuki
db5c4fd991
sys/iommu: Disable Intel VT-d and AMD-Vi IOMMUs before kernel entry
2026-02-20 03:47:18 +01:00
Mintsuki
a53ffcbce5
protos/multiboot2: Validate section_entry_size against expected struct size
2026-02-09 13:02:39 +01:00
Mintsuki
12ca572340
protos/multiboot: Cast size_t to uint32_t for custom printf %u format
2026-02-09 13:02:39 +01:00
Mintsuki
c34f25350b
protos/multiboot2: Guard max_addr - length underflow in relocation preference
2026-02-09 13:02:38 +01:00
Mintsuki
d3856efdc6
protos/multiboot2: Adjust ELF section sh_addr by reloc_slide after relocation
2026-02-09 13:02:38 +01:00
Mintsuki
6f43fc13cb
protos/multiboot2: Fix unsigned underflow in relocatable descent loop
2026-02-09 13:02:38 +01:00
Mintsuki
a08825aeb6
protos/multiboot2: Use correct framebuffer tag size for EGA text mode
2026-02-09 13:02:38 +01:00
Mintsuki
a37c0ea563
protos/multiboot2: Implement relocatable preference=2 (prefer highest)
2026-02-09 13:02:38 +01:00
Mintsuki
632cbc986d
protos/multiboot2: Warn on EFI_BS tag and reject if required
2026-02-09 13:02:38 +01:00
Mintsuki
850e13532d
protos/multiboot2: Add LOAD_BASE_ADDR and NETWORK to info request switch
2026-02-09 13:02:38 +01:00
Mintsuki
10c2413b68
protos/multiboot2: Accept EFI system table and image handle info requests
2026-02-09 13:02:38 +01:00
Mintsuki
254c90928b
protos/multiboot2: Validate architecture field in header
2026-02-09 13:02:38 +01:00
Mintsuki
87cd7211af
protos/multiboot2: Fix SMBIOS tag and module alignment budget, validate header_length
2026-02-09 13:02:38 +01:00
Mintsuki
095cf5ef79
lib/elf: Validate p_offset + p_filesz against file size in all ELF loaders
2026-02-09 13:02:38 +01:00
Mintsuki
49d4f335e7
protos/multiboot: Validate load_size against kernel file size
2026-02-09 13:02:38 +01:00
Mintsuki
7d66f97c02
protos/multiboot2: Reject relocatable tag with align=0
2026-02-09 13:02:38 +01:00
Mintsuki
5f70fea0f4
multiboot2: Add bounds validation for ELF section headers
2026-01-13 17:37:01 +01:00
Mintsuki
0af1b2b155
multiboot2: Add tag size validation to prevent infinite loop
2026-01-13 01:03:08 +01:00
Mintsuki
5736dc1b98
multiboot2: Fix SMBIOS tag size to include table data length
2026-01-12 01:46:18 +01:00
Mintsuki
7d6f5b4adf
multiboot2: Validate tag size before subtraction
2026-01-11 23:45:22 +01:00
Mintsuki
65b261c28a
multiboot1,multiboot2: Add bounds check to header search
2026-01-04 18:31:09 +01:00
Mintsuki
8336d9ac68
protos/multiboot2: Add address tag validation
2025-12-26 14:15:07 +01:00
Mintsuki
80912a3d1f
protos/multiboot2: Ignore top-down relocation hint as we do not properly support it
2025-03-31 02:33:54 +02:00
Mintsuki
c8cdc9e051
protos/multiboot2: Panic if EFI64 entry is required, else ignore it
2025-03-31 02:32:19 +02:00
mintsuki
da43c70a2d
protos: Reduce or remove mentions of 'kernel' where unnecessary
...
This also introduces limine.h API revision 2
2024-12-05 09:31:59 +01:00
monkuous
99c94dddfc
protos/multiboot2: use unsigned relocated_base
2024-09-17 22:35:15 +02:00
monkuous
6bdf6c3e58
protos/multiboot2: use signed integers for relocation
2024-09-17 22:24:32 +02:00
monkuous
337b15089f
protos/multiboot2: fix incorrect calculation of reloc_slide
2024-09-17 14:41:37 +02:00
monkuous
08812292ca
protos/multiboot2: fix ordering of ALIGN_* macro parameters
2024-09-17 14:39:41 +02:00
mintsuki
15f05a8b82
protos: Reduce protocol side MEMMAP_MAX values
2024-09-04 02:09:04 +02:00
Philipp Schuster
63d29af182
multiboot2: fix efi{32,64]_ih generation
2024-05-22 23:06:06 +02:00
Philipp Schuster
b715948575
misc: init typos for spell checking
2024-04-05 16:42:15 +02:00
Philipp Schuster
1407f48af1
multiboot2: better logging of unknown and unsupported tags
2024-01-31 16:17:18 +01:00
Philipp Schuster
f5c449ac00
multiboot2: don't fail on 0x9 tag when 0x3 is available
...
A kernel can define multiple entries. Even if they are marked as required,
it makes no sense to panic when there is a valid and expected alternative.
Further, this aligns the behavior with GRUB2.
This solution is however simple, as it expects that all tags appear in
natural order. However, every developer that is sane will order them
naturally.
2024-01-31 16:17:18 +01:00
mintsuki
40313b25ec
multiboot2: Add support for console flags header tag
2023-12-07 00:31:45 +01:00
mintsuki
d527109ca8
multiboot2: Fix some warnings discovered by GCC
2023-12-07 00:31:45 +01:00