summaryrefslogtreecommitdiff
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2016-10-06 16:06:32 +0200
committerMark Wielaard <mjw@redhat.com>2016-10-06 16:06:32 +0200
commit7bf4b63a4980788e6c1969cae02f0483e79c069f (patch)
tree3985f14d52aca2847b556a0c73b48341e54ee03e /src/ChangeLog
parent4f7b5ba9624489b5a2f714569c29ef865d4dcd6f (diff)
downloadelfutils-7bf4b63a4980788e6c1969cae02f0483e79c069f.tar.gz
strip: Don't remove real symbols from allocated symbol tables.
Having a symbol in an allocated symbol table (like .dynsym) that points to an unallocated section is wrong. Traditionally strip has removed such symbols if they are section or group symbols. But removing a real symbol from an allocate symbol table is hard and probably a mistake. Really removing it means rewriting the dynamic segment and hash sections. Since we don't do that, don't remove the symbol (and corrupt the ELF file). Do warn and set the symbol section to SHN_UNDEF. https://bugzilla.redhat.com/show_bug.cgi?id=1380961 Signed-off-by: Mark Wielaard <mjw@redhat.com>
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e5b3b202..70d11f2e 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2016-10-06 Mark Wielaard <mjw@redhat.com>
+
+ * strip.c (handle_elf): Don't remove real symbols from allocated
+ symbol tables.
+
2016-08-25 Mark Wielaard <mjw@redhat.com>
* strip.c (handle_elf): Recompress with ELF_CHF_FORCE.