aboutsummaryrefslogtreecommitdiff
path: root/binutils/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2020-04-20 09:54:46 +0930
committerAlan Modra <amodra@gmail.com>2020-04-20 11:09:43 +0930
commit8ff66993e0b57b20067d7a1b6c72a72f4cada2cf (patch)
tree5009a15d97f28daa49f1eabc21645167c7308531 /binutils/ChangeLog
parent58ee9a8a46b632ada94ae057acc23ba3928afa66 (diff)
downloadgdb-8ff66993e0b57b20067d7a1b6c72a72f4cada2cf.zip
gdb-8ff66993e0b57b20067d7a1b6c72a72f4cada2cf.tar.gz
gdb-8ff66993e0b57b20067d7a1b6c72a72f4cada2cf.tar.bz2
readelf: segfaults fuzzing multiple object files
This patch is aimed at fixing a number of oss-fuzz segfaults that don't reproduce reliably with their current infrastructure, the problem being that one invocation of readelf is effectively being run on multiple object files. I believe that these segfaults could be reliably reproduced with just two fuzzed objects being presented to readelf, but those inputs are currently not identified by oss-fuzz. So there is some guesswork involved in this patch. The idea here is to clear stashed data such as symtab_shndx_list that is processed using section header info, at the same time that header info is cleared. * readelf.c (process_section_headers): Free dynamic symbols etc. earlier.
Diffstat (limited to 'binutils/ChangeLog')
-rw-r--r--binutils/ChangeLog5
1 files changed, 5 insertions, 0 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 92d9b29..86eb578 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,5 +1,10 @@
2020-04-20 Alan Modra <amodra@gmail.com>
+ * readelf.c (process_section_headers): Free dynamic symbols etc.
+ earlier.
+
+2020-04-20 Alan Modra <amodra@gmail.com>
+
* readelf.c (get_num_dynamic_syms): Formatting. Don't return
on error without freeing.
(process_dynamic_section): Don't recreate dynamic symbols from