diff -rupN --no-dereference binutils-2.32/libiberty/simple-object-elf.c binutils-2.32-new/libiberty/simple-object-elf.c --- binutils-2.32/libiberty/simple-object-elf.c 2019-01-19 17:01:34.000000000 +0100 +++ binutils-2.32-new/libiberty/simple-object-elf.c 2019-11-19 20:47:15.208667119 +0100 @@ -549,6 +549,14 @@ simple_object_elf_match (unsigned char h return NULL; } + if (eor->shstrndx == 0) + { + *errmsg = "invalid ELF shstrndx == 0"; + *err = 0; + XDELETE (eor); + return NULL; + } + return (void *) eor; }