diff options
Diffstat (limited to 'libelf/elf_getarsym.c')
| -rw-r--r-- | libelf/elf_getarsym.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libelf/elf_getarsym.c b/libelf/elf_getarsym.c index d0bb28a9..3579fc18 100644 --- a/libelf/elf_getarsym.c +++ b/libelf/elf_getarsym.c @@ -183,6 +183,9 @@ elf_getarsym (elf, ptr) size_t index_size = atol (tmpbuf); if (SARMAG + sizeof (struct ar_hdr) + index_size > elf->maximum_size +#if SIZE_MAX <= 4294967295U + || n >= SIZE_MAX / sizeof (Elf_Arsym) +#endif || n * w > index_size) { /* This index table cannot be right since it does not fit into |
