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

Atsushi Kumagai
2013-07-18T08:10:09Z

On Tue, 16 Jul 2013 14:32:04 +0200
Daniel Kiper <daniel.kiper@oracle.com> wrote:

> 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@oracle.com>

Good, I'll merge this patch into v1.5.5.

Thanks
Atsushi Kumagai

> ---
> 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