:: commit dda61b00faa9624a042047ec22f5aa4126d9ee17

Mintsuki <mintsuki@protonmail.com> — 2026-04-02 17:52

parents: 003f01fff0

lib/config: Reject config file too large for size_t

diff --git a/common/lib/config.c b/common/lib/config.c
index 2f4c9fe2..adecc7f8 100644
--- a/common/lib/config.c
+++ b/common/lib/config.c
@@ -139,6 +139,9 @@ int init_config_disk(struct volume *part) {
 opened:
     case_insensitive_fopen = old_cif;
 
+    if (f->size > SIZE_MAX - 2) {
+        panic(false, "Config file too large");
+    }
     size_t config_size = f->size + 2;
     config_addr = ext_mem_alloc(config_size);
 
tab: 248 wrap: offon