diff options
author | Alan Modra <amodra@gmail.com> | 2020-05-11 18:00:31 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2020-05-11 18:11:26 +0930 |
commit | 4d5acb1ea570f04f8020338bad6918dfe76b785c (patch) | |
tree | f67454d0a28ddbc36215ff1080437a8c1c02c0d3 /bfd/coffswap.h | |
parent | b59cca2581498c37fd79292deef718b2bfce8117 (diff) | |
download | fsf-binutils-gdb-4d5acb1ea570f04f8020338bad6918dfe76b785c.zip fsf-binutils-gdb-4d5acb1ea570f04f8020338bad6918dfe76b785c.tar.gz fsf-binutils-gdb-4d5acb1ea570f04f8020338bad6918dfe76b785c.tar.bz2 |
PR25961, buffer overflow in coff_swap_aux_in
PR 25961
* coffgen.c (coff_get_normalized_symtab): Check that buffer
contains required number of auxents before processing any auxent.
* coffswap.h (coff_swap_aux_in <C_FILE>): Only swap in extended
file name from auxents for PE.
Diffstat (limited to 'bfd/coffswap.h')
-rw-r--r-- | bfd/coffswap.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/bfd/coffswap.h b/bfd/coffswap.h index 7c0be22..f75001e 100644 --- a/bfd/coffswap.h +++ b/bfd/coffswap.h @@ -399,7 +399,7 @@ coff_swap_aux_in (bfd *abfd, #if FILNMLEN != E_FILNMLEN #error we need to cope with truncating or extending FILNMLEN #else - if (numaux > 1) + if (numaux > 1 && coff_data (abfd)->pe) { if (indx == 0) memcpy (in->x_file.x_fname, ext->x_file.x_fname, |