mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 00:59:15 +08:00
Fix memory access violations uncovered by running the dlltool on fuzzed binaries.
PR binutils/17512 * dlltool.c (scan_obj_file): Break loop if the last archive displayed matches the current archive.
This commit is contained in:
@ -1,6 +1,9 @@
|
|||||||
2015-01-07 Nick Clifton <nickc@redhat.com>
|
2015-01-07 Nick Clifton <nickc@redhat.com>
|
||||||
|
|
||||||
PR binutils/17512
|
PR binutils/17512
|
||||||
|
* dlltool.c (scan_obj_file): Break loop if the last archive
|
||||||
|
displayed matches the current archive.
|
||||||
|
|
||||||
* objdump.c (display_any_bfd): Add a depth limit to nested archive
|
* objdump.c (display_any_bfd): Add a depth limit to nested archive
|
||||||
display in order to avoid infinite loops.
|
display in order to avoid infinite loops.
|
||||||
* srconv.c: Replace calls to abort with calls to fatal with an
|
* srconv.c: Replace calls to abort with calls to fatal with an
|
||||||
|
@ -1699,6 +1699,9 @@ scan_obj_file (const char *filename)
|
|||||||
scan_open_obj_file (arfile);
|
scan_open_obj_file (arfile);
|
||||||
next = bfd_openr_next_archived_file (f, arfile);
|
next = bfd_openr_next_archived_file (f, arfile);
|
||||||
bfd_close (arfile);
|
bfd_close (arfile);
|
||||||
|
/* PR 17512: file: 58715298. */
|
||||||
|
if (next == arfile)
|
||||||
|
break;
|
||||||
arfile = next;
|
arfile = next;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user