diff options
author | Nick Clifton <nickc@redhat.com> | 2015-01-06 16:06:45 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2015-01-06 16:06:45 +0000 |
commit | 85880250e591a51624d24db653aaace0c5ce5943 (patch) | |
tree | 0319d173921cd8ec36f007e0270dc883a30e8336 /bfd/coff-i860.c | |
parent | fce10a8494efa8faec67b718f25e06d3d71694b3 (diff) | |
download | gdb-85880250e591a51624d24db653aaace0c5ce5943.zip gdb-85880250e591a51624d24db653aaace0c5ce5943.tar.gz gdb-85880250e591a51624d24db653aaace0c5ce5943.tar.bz2 |
Fixes for memory access violations in the coffdump program.
PR binutils/17512
* coffdump.c (dump_coff_section): Check for a symbol being
available before printing its name.
(main): Check the return value from coff_grok.
* coffgrok.c: Reformat and tidy.
Add range checks to most functions.
(coff_grok): Return NULL if the input bfd is not in a COFF
format.
* coffgrok.h: Reformat and tidy.
(struct coff_section): Change the nrelocs field to unsigned.
* srconv.c (main): Check the return value from coff_grok.
* coff-i860.c (CALC_ADDEND): Always set an addend value.
* tekhex.c (getvalue): Add an end pointer parameter. Use it to
avoid reading off the end of the buffer.
(getsym): Likewise.
(first_phase): Likewise.
(pass_over): Pass an end pointer to the invoked function.
Diffstat (limited to 'bfd/coff-i860.c')
-rw-r--r-- | bfd/coff-i860.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/bfd/coff-i860.c b/bfd/coff-i860.c index 2122c0d..8573a8d 100644 --- a/bfd/coff-i860.c +++ b/bfd/coff-i860.c @@ -467,7 +467,10 @@ static reloc_howto_type howto_table[] = FIXME: This macro refers to symbols and asect; these are from the calling function, not the macro arguments. */ -#define CALC_ADDEND(abfd, ptr, reloc, cache_ptr) +/* PR 17512: file: 0a38fb7c + Set an addend value, even if it is not going to be used. A tool + like coffdump might be used to print out the contents of the reloc. */ +#define CALC_ADDEND(abfd, ptr, reloc, cache_ptr) (cache_ptr)->addend = 0 /* We use the special COFF backend linker. */ #define coff_relocate_section _bfd_coff_generic_relocate_section |