We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent fc55c10 commit c54d7a2Copy full SHA for c54d7a2
common/protos/multiboot2.c
@@ -164,6 +164,10 @@ noreturn void multiboot2_load(char *config, char* cmdline) {
164
if (request->size < sizeof(struct multiboot_header_tag_information_request)) {
165
panic(true, "multiboot2: Invalid information request tag size");
166
}
167
+ size_t tag_remaining = (uintptr_t)header + header->header_length - (uintptr_t)tag;
168
+ if (request->size > tag_remaining) {
169
+ panic(true, "multiboot2: Information request tag exceeds header bounds");
170
+ }
171
uint32_t size = (request->size - sizeof(struct multiboot_header_tag_information_request)) / sizeof(uint32_t);
172
173
for (uint32_t i = 0; i < size; i++) {
0 commit comments