From 16f08ebdb854296e78e6ae42f7f9de3858f19f6c Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 9 Dec 2014 13:43:58 +0100 Subject: [PATCH] libelf: Make sure n * w doesn't overflow in elf_getarsym. Signed-off-by: Mark Wielaard --- libelf/ChangeLog | 4 ++++ libelf/elf_getarsym.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libelf/ChangeLog b/libelf/ChangeLog index e03ee09f2..4860530b8 100644 --- a/libelf/ChangeLog +++ b/libelf/ChangeLog @@ -1,3 +1,7 @@ +2014-12-09 Mark Wielaard + + * elf_getarsym.c (elf_getarsym): Make sure n * w doesn't overflow. + 2014-11-27 Mark Wielaard * Makefile.am (libelf.so): Use textrel_check. diff --git a/libelf/elf_getarsym.c b/libelf/elf_getarsym.c index 7325190ab..ba88aa0aa 100644 --- a/libelf/elf_getarsym.c +++ b/libelf/elf_getarsym.c @@ -186,7 +186,7 @@ elf_getarsym (elf, ptr) #if SIZE_MAX <= 4294967295U || n >= SIZE_MAX / sizeof (Elf_Arsym) #endif - || n * w > index_size) + || n > index_size / w) { /* This index table cannot be right since it does not fit into the file. */ -- 2.47.3