aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2023-08-15 14:10:55 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2023-08-15 14:10:55 +0200
commit972579fa42e8af42dc75d454fec93b54f337dc58 (patch)
tree215ad6c2140d2cf2b584450d2bdcf9439c8a819d
parent0e3ad481706ff2f1e83487517415d251179ce3c3 (diff)
limit modify_cmdline replacement subslice to file size
-rw-r--r--src/main.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs
index f72da42..411d933 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -289,7 +289,11 @@ fn modify_cmdline(old: &str, new: &str) -> Result<()> {
/ 512
+ 1;
- replace_slice(&mut buf[cmdline_offset..], old.as_bytes(), new.as_bytes());
+ replace_slice(
+ &mut buf[cmdline_offset..cmdline_offset + cmdline_buf.len()],
+ old.as_bytes(),
+ new.as_bytes(),
+ );
fs::write(boot, buf)?;
nix::unistd::sync();