[PATCH v2 2/7] elf: Properly check buf size in get_pt_note_info()

Daniel Kiper daniel.kiper at oracle.com
Tue Jul 16 08:32:04 EDT 2013


get_pt_note_info() always ignores VMCOREINFO_XEN note because
buf size must be smaller than note size including \0 char.
Usualy this condition is true but when VMCOREINFO_XEN note
is encountered it does not work due to buf size defined
as sizeof("VMCOREINFO_XEN"). This patch fixes that bug
and VMCOREINFO_XEN note living in /proc/vmcore file
could be properly detected now.

v2 - suggestions/fixes:
   - properly check buf size instead of increasing buf size
     (suggested by Andrew Cooper).

Signed-off-by: Daniel Kiper <daniel.kiper at oracle.com>
---
 elf_info.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/elf_info.c b/elf_info.c
index 0c1e36a..e350b99 100644
--- a/elf_info.c
+++ b/elf_info.c
@@ -332,7 +332,7 @@ get_pt_note_info(void)
 		size_desc   = note_descsz(note);
 		offset_desc = offset + offset_note_desc(note);
 
-		if (!size_name || size_name >= sizeof(buf))
+		if (!size_name || size_name > sizeof(buf))
 			goto next_note;
 
 		if (read(fd_memory, &buf, sizeof(buf)) != sizeof(buf)) {
-- 
1.7.10.4




More information about the kexec mailing list