[PATCH] util_lib/elf_info.c: fix a warning

Baoquan He bhe at redhat.com
Thu Mar 21 00:30:37 PDT 2024


There's a incorrect array operation in function scan_vmcoreinfo(), it
will cause below warning message.

-----------------------
util_lib/elf_info.c: In function ‘scan_vmcoreinfo’:
util_lib/elf_info.c:360:43: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  360 |                         temp_buf[len + 1] = '\0';
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~
util_lib/elf_info.c:319:14: note: at offset 1024 into destination object ‘temp_buf’ of size 1024
  319 |         char temp_buf[1024];
      |              ^~~~~~~~
---------------------

Fix it to avoid oob access of array.

Signed-off-by: Baoquan He <bhe at redhat.com>
---
 util_lib/elf_info.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/util_lib/elf_info.c b/util_lib/elf_info.c
index ce71c6055c3a..7ca9870bfca0 100644
--- a/util_lib/elf_info.c
+++ b/util_lib/elf_info.c
@@ -357,7 +357,7 @@ void scan_vmcoreinfo(char *start, size_t size)
 			if (len >= sizeof(temp_buf))
 				len = sizeof(temp_buf) - 1;
 			strncpy(temp_buf, pos, len);
-			temp_buf[len + 1] = '\0';
+			temp_buf[len] = '\0';
 
 			pos = temp_buf;
 			len = len + 1;
-- 
2.41.0




More information about the kexec mailing list